[spice-common 4/5] codegen: Factor common is_server/is_client code

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



We currently have 2 very similar codepaths in the marshaller and
demarshaller cases which check whether we are building client or server
code, error out if we specified neither on the command line and then
they call the same function with True or False for client/server.

We can factor this code a little bit to make things a bit simpler.
---
 spice_codegen.py | 26 +++++++++++---------------
 1 file changed, 11 insertions(+), 15 deletions(-)

diff --git a/spice_codegen.py b/spice_codegen.py
index 410acbd..e1aab3a 100755
--- a/spice_codegen.py
+++ b/spice_codegen.py
@@ -217,28 +217,24 @@ if options.includes:
 if options.generate_enums or options.generate_dissector:
     write_enums(writer, options.generate_dissector)
 
+if not options.server and not options.client:
+    print >> sys.stderr, "Must specify client and/or server"
+    sys.exit(1)
+
+if options.client:
+    is_client = True
+else:
+    is_client = False
+
 if options.generate_demarshallers:
-    if not options.server and not options.client:
-        print >> sys.stderr, "Must specify client and/or server"
-        sys.exit(1)
     demarshal.write_includes(writer)
-
-    if options.server:
-        demarshal.write_protocol_parser(writer, proto, False)
-    if options.client:
-        demarshal.write_protocol_parser(writer, proto, True)
+    demarshal.write_protocol_parser(writer, proto, is_client)
 
 if options.generate_marshallers or (options.struct_marshallers and len(options.struct_marshallers) > 0):
     marshal.write_includes(writer)
 
 if options.generate_marshallers:
-    if not options.server and not options.client:
-        print >> sys.stderr, "Must specify client and/or server"
-        sys.exit(1)
-    if options.server:
-        marshal.write_protocol_marshaller(writer, proto, False, options.private_marshallers)
-    if options.client:
-        marshal.write_protocol_marshaller(writer, proto, True, options.private_marshallers)
+    marshal.write_protocol_marshaller(writer, proto, is_client, options.private_marshallers)
 
 if options.struct_marshallers:
     for structname in options.struct_marshallers:
-- 
2.7.4

_______________________________________________
Spice-devel mailing list
Spice-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/spice-devel




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]     [Monitors]