[Spice-devel] [RFC 1/4] add ifdef/endif methods to spice code generator

Christophe Fergeau cfergeau at redhat.com
Fri Jun 24 07:34:02 PDT 2011


These methods will be needed to be able to make some fields optional
in spice.proto
---
 python_modules/codegen.py |   12 ++++++++++++
 1 files changed, 12 insertions(+), 0 deletions(-)

diff --git a/python_modules/codegen.py b/python_modules/codegen.py
index 75033dc..e438e4d 100644
--- a/python_modules/codegen.py
+++ b/python_modules/codegen.py
@@ -322,6 +322,18 @@ class CodeWriter:
     def macro(self, name, args, define):
         self.write("#define %s(%s) %s" % (name, args, define)).newline()
 
+    def ifdef(self, name):
+        indentation = self.indentation
+        self.indentation = 0;
+        self.write("#ifdef %s" % (name)).newline()
+        self.indentation = indentation
+
+    def endif(self, name):
+        indentation = self.indentation
+        self.indentation = 0;
+        self.write("#endif /* %s */" % (name)).newline()
+        self.indentation = indentation
+
     def add_function_variable(self, ctype, name):
         if self.function_variables.has_key(name):
             assert(self.function_variables[name] == ctype)
-- 
1.7.5.4



More information about the Spice-devel mailing list