[pygccxml-commit] SF.net SVN: pygccxml:[1377] pyplusplus_dev
Brought to you by:
mbaas,
roman_yakovenko
From: <rom...@us...> - 2008-07-23 19:17:11
|
Revision: 1377 http://pygccxml.svn.sourceforge.net/pygccxml/?rev=1377&view=rev Author: roman_yakovenko Date: 2008-07-23 19:17:20 +0000 (Wed, 23 Jul 2008) Log Message: ----------- adding code which will automaticly exclude variables with type "Python immutable* [4]" Modified Paths: -------------- pyplusplus_dev/docs/documentation/www_configuration.py pyplusplus_dev/pyplusplus/decl_wrappers/variable_wrapper.py pyplusplus_dev/pyplusplus/messages/warnings_.py Modified: pyplusplus_dev/docs/documentation/www_configuration.py =================================================================== --- pyplusplus_dev/docs/documentation/www_configuration.py 2008-07-22 18:55:08 UTC (rev 1376) +++ pyplusplus_dev/docs/documentation/www_configuration.py 2008-07-23 19:17:20 UTC (rev 1377) @@ -5,7 +5,8 @@ , 'how_to' : 'how to ... ?' , 'doc_string' : 'documentation string' , 'inserting_code' : 'inserting code' - , 'best_practices' : 'best practices' + , 'best_practices' : 'best practices' , 'multi_module_development' : 'multi-module development' , 'split_module' : 'splitting generated code to files' + , 'ctypes_integration' : 'ctypes integration' } Modified: pyplusplus_dev/pyplusplus/decl_wrappers/variable_wrapper.py =================================================================== --- pyplusplus_dev/pyplusplus/decl_wrappers/variable_wrapper.py 2008-07-22 18:55:08 UTC (rev 1376) +++ pyplusplus_dev/pyplusplus/decl_wrappers/variable_wrapper.py 2008-07-23 19:17:20 UTC (rev 1377) @@ -8,6 +8,7 @@ import decl_wrapper import python_traits import call_policies +import python_traits from pyplusplus import messages from pygccxml import declarations @@ -144,6 +145,8 @@ is_read_only = property( get_is_read_only, set_is_read_only ) def _exportable_impl( self ): + if self.name == 'f': + i = 0 if not self.name: return messages.W1033 if self.bits == 0 and self.name == "": @@ -172,4 +175,10 @@ if isinstance( self.parent, declarations.class_t ): if self.access_type != declarations.ACCESS_TYPES.PUBLIC: return messages.W1039 + if declarations.is_array( type_ ): + item_type = declarations.array_item_type( type_ ) + if declarations.is_pointer( item_type ): + item_type_no_ptr = declarations.remove_pointer( item_type ) + if python_traits.is_immutable( item_type_no_ptr ): + return messages.W1056 return '' Modified: pyplusplus_dev/pyplusplus/messages/warnings_.py =================================================================== --- pyplusplus_dev/pyplusplus/messages/warnings_.py 2008-07-22 18:55:08 UTC (rev 1376) +++ pyplusplus_dev/pyplusplus/messages/warnings_.py 2008-07-23 19:17:20 UTC (rev 1377) @@ -220,6 +220,8 @@ W1055 = warning( "Py++ will generate class wrapper - hand written code should be added to the wrapper class destructor body" ) +W1056 = compilation_error( "Py++ can not expose array of pointers of Python immutable types. Take a look on 'ctypes integration' feature." ) + warnings = globals() all_warning_msgs = [] This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |