Update of /cvsroot/pygccxml/source/pyplusplus/code_creators
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19454/pyplusplus/code_creators
Modified Files:
calldef.py
Log Message:
operator[] is now supported
Index: calldef.py
===================================================================
RCS file: /cvsroot/pygccxml/source/pyplusplus/code_creators/calldef.py,v
retrieving revision 1.46
retrieving revision 1.47
diff -C2 -d -r1.46 -r1.47
*** calldef.py 2 Mar 2006 13:30:37 -0000 1.46
--- calldef.py 5 Mar 2006 05:51:30 -0000 1.47
***************
*** 176,179 ****
--- 176,181 ----
if self._is_call_operator():
self.default_function_name = 'default_call'
+ elif self._is_index_operator():
+ self.default_function_name = 'default_get_item'
else:
self.default_function_name = 'default_' + self.declaration.name
***************
*** 183,186 ****
--- 185,192 ----
return isinstance( self.declaration, declarations.member_operator_t ) \
and self.declaration.symbol == '()'
+
+ def _is_index_operator(self):
+ return isinstance( self.declaration, declarations.member_operator_t ) \
+ and self.declaration.symbol == '[]'
def _get_default_function_name(self):
***************
*** 321,324 ****
--- 327,333 ----
name = '__call__'
variable_name = 'call'
+ elif self._is_index_operator():
+ name = '__getitem__'
+ variable_name = 'getitem'
else:
name = self.declaration.name
***************
*** 351,354 ****
--- 360,366 ----
name = '__call__'
variable_name = 'call'
+ elif self._is_index_operator():
+ name = '__getitem__'
+ variable_name = 'getitem'
else:
name = self.declaration.name
|