[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.
|