[Python-checkins] r45587 - python/trunk/Tools/bgen/bgen/bgenObjectDefinition.py

jack.jansen python-checkins at python.org
Thu Apr 20 23:38:18 CEST 2006


Author: jack.jansen
Date: Thu Apr 20 23:38:17 2006
New Revision: 45587
Modified:
 python/trunk/Tools/bgen/bgen/bgenObjectDefinition.py
Log:
- tp_init shouldn't call base class tp_init by default
- tp_new (which was apparently always overridden:-) called base class
 tp_init in stead of tp_new.
Modified: python/trunk/Tools/bgen/bgen/bgenObjectDefinition.py
==============================================================================
--- python/trunk/Tools/bgen/bgen/bgenObjectDefinition.py	(original)
+++ python/trunk/Tools/bgen/bgen/bgenObjectDefinition.py	Thu Apr 20 23:38:17 2006
@@ -383,6 +383,8 @@
 Output("%s_tp_free, /* tp_free */", self.prefix)
 
 def output_tp_initBody_basecall(self):
+ """If a type shares its init call with its base type set output_tp_initBody
+ to output_tp_initBody_basecall"""
 if self.basetype:
 Output("if (%s.tp_init)", self.basetype)
 OutLbrace()
@@ -395,7 +397,6 @@
 if self.output_tp_initBody:
 Output("static int %s_tp_init(PyObject *_self, PyObject *_args, PyObject *_kwds)", self.prefix)
 OutLbrace()
- self.output_tp_initBody_basecall()
 self.output_tp_initBody()
 OutRbrace()
 else:
@@ -425,7 +426,7 @@
 if self.basetype:
 Output("if (%s.tp_new)", self.basetype)
 OutLbrace()
- Output("if ( (*%s.tp_init)(_self, _args, _kwds) == NULL) return NULL;", self.basetype)
+ Output("if ( (*%s.tp_new)(type, _args, _kwds) == NULL) return NULL;", self.basetype)
 Dedent()
 Output("} else {")
 Indent()


More information about the Python-checkins mailing list

AltStyle によって変換されたページ (->オリジナル) /