Update of /cvsroot/ctypes/ctypes/sandbox/tools/codegen
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19783
Modified Files:
codegenerator.py
Log Message:
Always call the general self.generate method instead of calling the
typedesc handlers directly.
Index: codegenerator.py
===================================================================
RCS file: /cvsroot/ctypes/ctypes/sandbox/tools/codegen/codegenerator.py,v
retrieving revision 1.40
retrieving revision 1.41
diff -C2 -d -r1.40 -r1.41
*** codegenerator.py 28 Jan 2005 08:44:39 -0000 1.40
--- codegenerator.py 28 Jan 2005 09:14:25 -0000 1.41
***************
*** 254,258 ****
return
for struct in head.struct.bases:
! self.StructureHead(struct.get_head())
self.more.add(struct)
basenames = [self.type_name(b) for b in head.struct.bases]
--- 254,258 ----
return
for struct in head.struct.bases:
! self.generate(struct.get_head())
self.more.add(struct)
basenames = [self.type_name(b) for b in head.struct.bases]
***************
*** 279,286 ****
return
self._structures += 1
! head = struct.get_head()
! self.StructureHead(head)
! body = struct.get_body()
! self.StructureBody(body)
self.done.add(struct)
--- 279,284 ----
return
self._structures += 1
! self.generate(struct.get_head())
! self.generate(struct.get_body())
self.done.add(struct)
***************
*** 293,297 ****
self._typedefs += 1
if type(tp.typ) in (typedesc.Structure, typedesc.Union):
! self.StructureHead(tp.typ.get_head())
self.more.add(tp.typ)
else:
--- 291,295 ----
self._typedefs += 1
if type(tp.typ) in (typedesc.Structure, typedesc.Union):
! self.generate(tp.typ.get_head())
self.more.add(tp.typ)
else:
***************
*** 331,337 ****
self._pointertypes += 1
if type(tp.typ) is typedesc.PointerType:
! self.PointerType(tp.typ)
elif type(tp.typ) in (typedesc.Union, typedesc.Structure):
! self.StructureHead(tp.typ.get_head())
self.more.add(tp.typ)
elif type(tp.typ) is typedesc.Typedef:
--- 329,335 ----
self._pointertypes += 1
if type(tp.typ) is typedesc.PointerType:
! self.generate(tp.typ)
elif type(tp.typ) in (typedesc.Union, typedesc.Structure):
! self.generate(tp.typ.get_head())
self.more.add(tp.typ)
elif type(tp.typ) is typedesc.Typedef:
***************
*** 388,392 ****
print >> self.stream, "%s = C.c_int # enum" % tp.name
for item in tp.values:
! self.EnumValue(item)
def StructureBody(self, body):
--- 386,390 ----
print >> self.stream, "%s = C.c_int # enum" % tp.name
for item in tp.values:
! self.generate(item)
def StructureBody(self, body):
***************
*** 421,425 ****
if body.struct.bases:
assert len(body.struct.bases) == 1
! self.StructureBody(body.struct.bases[0].get_body())
# field definition normally span several lines.
# Before we generate them, we need to 'import' everything they need.
--- 419,423 ----
if body.struct.bases:
assert len(body.struct.bases) == 1
! self.generate(body.struct.bases[0].get_body())
# field definition normally span several lines.
# Before we generate them, we need to 'import' everything they need.
|