[Python-checkins] python/dist/src/Tools/bgen/bgen bgenGenerator.py, 1.16, 1.17 bgenObjectDefinition.py, 1.27, 1.28

jackjansen@users.sourceforge.net jackjansen at users.sourceforge.net
Fri Jun 10 12:46:42 CEST 2005


Update of /cvsroot/python/python/dist/src/Tools/bgen/bgen
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25929

Modified Files:
	bgenGenerator.py bgenObjectDefinition.py 
Log Message:
Minor tweaks, to allow some (out-of-tree, until successful) tinkering
with C++.


Index: bgenGenerator.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Tools/bgen/bgen/bgenGenerator.py,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -d -r1.16 -r1.17
--- bgenGenerator.py	18 Jul 2004 06:02:01 -0000	1.16
+++ bgenGenerator.py	10 Jun 2005 10:46:40 -0000	1.17
@@ -18,6 +18,7 @@
     def __init__(self, name, condition=None):
         if DEBUG: print "<--", name
         self.name = name
+        self.callname = name
         self.prefix = name
         self.objecttype = "PyObject" # Type of _self argument to function
         self.condition = condition
@@ -202,7 +203,7 @@
     def callit(self):
         args = ""
         if self.rv:
-            s = "%s = %s(" % (self.rv.name, self.name)
+            s = "%s = %s(" % (self.rv.name, self.callname)
         else:
             s = "%s(" % self.name
         sep = ",\n" + ' '*len(s)
@@ -214,9 +215,9 @@
             args = args + s
         if self.rv:
             Output("%s = %s(%s);",
-                   self.rv.name, self.name, args)
+                   self.rv.name, self.callname, args)
         else:
-            Output("%s(%s);", self.name, args)
+            Output("%s(%s);", self.callname, args)
 
     def checkit(self):
         for arg in self.argumentList:
@@ -255,8 +256,7 @@
         self.itself = Variable(t0, "_self->ob_itself", SelfMode)
         self.argumentList.append(self.itself)
         FunctionGenerator.parseArgumentList(self, args)
-
-
+        
 def _test():
     void = None
     eggs = FunctionGenerator(void, "eggs",

Index: bgenObjectDefinition.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Tools/bgen/bgen/bgenObjectDefinition.py,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -d -r1.27 -r1.28
--- bgenObjectDefinition.py	18 Jul 2004 06:02:01 -0000	1.27
+++ bgenObjectDefinition.py	10 Jun 2005 10:46:40 -0000	1.28
@@ -44,12 +44,8 @@
 
         OutHeader2("Object type " + self.name)
 
-        sf = self.static and "static "
-        Output("%sPyTypeObject %s;", sf, self.typename)
-        Output()
-        Output("#define %s_Check(x) ((x)->ob_type == &%s || PyObject_TypeCheck((x), &%s))",
-               self.prefix, self.typename, self.typename)
-        Output()
+        self.outputCheck()
+        
         Output("typedef struct %s {", self.objecttype)
         IndentLevel()
         Output("PyObject_HEAD")
@@ -84,6 +80,14 @@
 
         OutHeader2("End object type " + self.name)
 
+    def outputCheck(self):
+        sf = self.static and "static "
+        Output("%sPyTypeObject %s;", sf, self.typename)
+        Output()
+        Output("#define %s_Check(x) ((x)->ob_type == &%s || PyObject_TypeCheck((x), &%s))",
+               self.prefix, self.typename, self.typename)
+        Output()
+
     def outputMethodChain(self):
         Output("%sPyMethodChain %s_chain = { %s_methods, %s };",
                 self.static,    self.prefix, self.prefix, self.basechain)



More information about the Python-checkins mailing list