Update of /cvsroot/pygccxml/source/pyplusplus/decl_wrappers
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24629/pyplusplus/decl_wrappers
Modified Files:
decl_wrapper.py
Log Message:
If template instantiated class has only one alias ( typedef ), then this alias will be used.
Index: decl_wrapper.py
===================================================================
RCS file: /cvsroot/pygccxml/source/pyplusplus/decl_wrappers/decl_wrapper.py,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -d -r1.7 -r1.8
*** decl_wrapper.py 20 Apr 2006 04:06:41 -0000 1.7
--- decl_wrapper.py 23 Apr 2006 14:32:12 -0000 1.8
***************
*** 43,52 ****
def _get_alias(self):
! if self._alias:
! return self._alias
! elif declarations.templates.is_instantiation( self.name ):
! return self._generate_valid_name()
! else:
! return self.name
def _set_alias(self, alias):
--- 43,56 ----
def _get_alias(self):
! if not self._alias:
! if declarations.templates.is_instantiation( self.name ):
! if isinstance( self, declarations.class_t ) \
! and 1 == len( set( map( lambda typedef: typedef.name, self.typedefs ) ) ):
! self._alias = self.typedefs[0].name
! else:
! self._alias = self._generate_valid_name()
! else:
! self._alias = self.name
! return self._alias
def _set_alias(self, alias):
|