Revision: 31
Author: roman_yakovenko
Date: 2006-05-01 21:18:31 -0700 (Mon, 01 May 2006)
ViewCVS: http://svn.sourceforge.net/pygccxml/?rev=31&view=rev
Log Message:
-----------
adding new function: __nonzero__. The main purpose is to use mdecl_wrapper_t instance in "if" statements as is.
An other change is attribute "_decl" becomes public.
Modified Paths:
--------------
pygccxml_dev/pygccxml/declarations/mdecl_wrapper.py
Modified: pygccxml_dev/pygccxml/declarations/mdecl_wrapper.py
===================================================================
--- pygccxml_dev/pygccxml/declarations/mdecl_wrapper.py 2006-05-02 04:15:28 UTC (rev 30)
+++ pygccxml_dev/pygccxml/declarations/mdecl_wrapper.py 2006-05-02 04:18:31 UTC (rev 31)
@@ -34,18 +34,21 @@
@type decls: list of L{declaration wrappers<decl_wrapper_t>}
"""
object.__init__( self )
- self.__dict__['_decls'] = decls
+ self.__dict__['decls'] = decls
+ def __nonzero__( self ):
+ return bool( self.decls )
+
def __len__( self ):
"""returns the number of declarations"""
- return len( self._decls )
+ return len( self.decls )
def __getitem__( self, index ):
"""provides access to declaration"""
- return self._decls[index]
+ return self.decls[index]
def __ensure_attribute( self, name ):
- invalid_decls = filter( lambda d: not hasattr( d, name ), self._decls )
+ invalid_decls = filter( lambda d: not hasattr( d, name ), self.decls )
if invalid_decls:
raise RuntimeError( "Not all declarations have '%s' attribute." % name )
@@ -55,10 +58,10 @@
@param value: new value of attribute
"""
self.__ensure_attribute( name )
- for d in self._decls:
+ for d in self.decls:
setattr( d, name, value )
def __getattr__( self, name ):
"""@param name: name of method
"""
- return call_redirector_t( name, self._decls )
\ No newline at end of file
+ return call_redirector_t( name, self.decls )
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|