[pygccxml-commit] SF.net SVN: pygccxml: [1202] pyplusplus_dev
Brought to you by:
mbaas,
roman_yakovenko
From: <rom...@us...> - 2007-12-11 10:21:07
|
Revision: 1202 http://pygccxml.svn.sourceforge.net/pygccxml/?rev=1202&view=rev Author: roman_yakovenko Date: 2007-12-11 02:21:11 -0800 (Tue, 11 Dec 2007) Log Message: ----------- replace name with partial name Modified Paths: -------------- pyplusplus_dev/docs/links.rest pyplusplus_dev/pyplusplus/code_creators/calldef.py pyplusplus_dev/pyplusplus/messages/warnings_.py pyplusplus_dev/unittests/ogre_generate_tester.py Modified: pyplusplus_dev/docs/links.rest =================================================================== --- pyplusplus_dev/docs/links.rest 2007-12-10 21:29:19 UTC (rev 1201) +++ pyplusplus_dev/docs/links.rest 2007-12-11 10:21:11 UTC (rev 1202) @@ -111,7 +111,12 @@ * http://www.shocksolution.com/math_tools/boost.python/index.html - this site contains few usefull Boost.Python examples and tutorials. +------------- +Build systems +------------- +http://www.scons.org/wiki/GCCXMLBuilder - Joseph Lisee shows how to integrate +Py++ scripts with Scons. .. Local Variables: Modified: pyplusplus_dev/pyplusplus/code_creators/calldef.py =================================================================== --- pyplusplus_dev/pyplusplus/code_creators/calldef.py 2007-12-10 21:29:19 UTC (rev 1201) +++ pyplusplus_dev/pyplusplus/code_creators/calldef.py 2007-12-11 10:21:11 UTC (rev 1202) @@ -126,7 +126,7 @@ if not self.works_on_instance: #indenting and adding scope code = ''.join( result ) - result = [ '{ //%s' % declarations.full_name( self.declaration ) ] + result = [ '{ //%s' % declarations.full_name( self.declaration, with_defaults=False ) ] result.append( os.linesep * 2 ) result.append( self.indent( code ) ) result.append( os.linesep * 2 ) @@ -196,17 +196,14 @@ return 'typedef ' + f_type.create_typedef( self.function_type_alias, with_defaults=False ) + ';' def create_function_ref_code(self, use_function_alias=False): + fname = declarations.full_name( self.declaration, with_defaults=False ) if use_function_alias: - return '%s( &%s )' \ - % ( self.function_type_alias, declarations.full_name( self.declaration ) ) + return '%s( &%s )' % ( self.function_type_alias, fname ) elif self.declaration.create_with_signature: - return '(%s)( &%s )' \ - % ( self.declaration.function_type().partial_decl_string - , declarations.full_name( self.declaration ) ) + return '(%s)( &%s )' % ( self.declaration.function_type().partial_decl_string, fname ) else: - return '&%s' % declarations.full_name( self.declaration ) + return '&%s' % fname - class mem_fun_t( calldef_t ): def __init__( self, function ): calldef_t.__init__( self, function=function ) @@ -216,17 +213,14 @@ return 'typedef %s;' % ftype.create_typedef( self.function_type_alias, exported_class_alias, with_defaults=False ) def create_function_ref_code(self, use_function_alias=False): + fname = declarations.full_name( self.declaration, with_defaults=False ) if use_function_alias: - return '%s( &%s )' \ - % ( self.function_type_alias, declarations.full_name( self.declaration ) ) + return '%s( &%s )' % ( self.function_type_alias, fname ) elif self.declaration.create_with_signature: - return '(%s)( &%s )' \ - % ( self.declaration.function_type().decl_string - , declarations.full_name( self.declaration ) ) + return '(%s)( &%s )' % ( self.declaration.function_type().partial_decl_string, fname ) else: - return '&%s' % declarations.full_name( self.declaration ) + return '&%s' % fname - class mem_fun_pv_t( calldef_t ): def __init__( self, function, wrapper ): calldef_t.__init__( self, function=function, wrapper=wrapper ) @@ -236,20 +230,19 @@ return 'typedef %s;' % ftype.create_typedef( self.function_type_alias, exported_class_alias ) def create_function_ref_code(self, use_function_alias=False): + fname = declarations.full_name( self.declaration, with_defaults=False ) if use_function_alias: return '%s( %s(&%s) )' \ % ( self.pure_virtual_identifier() , self.function_type_alias - , declarations.full_name( self.declaration ) ) + , fname ) elif self.declaration.create_with_signature: return '%s( (%s)(&%s) )' \ % ( self.pure_virtual_identifier() - , self.declaration.function_type().decl_string - , declarations.full_name( self.declaration ) ) + , self.declaration.function_type().partial_decl_string + , fname ) else: - return '%s( &%s )' \ - % ( self.pure_virtual_identifier() - , declarations.full_name( self.declaration ) ) + return '%s( &%s )' % ( self.pure_virtual_identifier(), fname) class mem_fun_pv_wrapper_t( calldef_wrapper_t ): def __init__( self, function ): @@ -263,7 +256,7 @@ constness = ' const ' return template % { - 'return_type' : self.declaration.return_type.decl_string + 'return_type' : self.declaration.return_type.partial_decl_string , 'name' : self.declaration.name , 'args' : self.args_declaration() , 'constness' : constness @@ -318,24 +311,25 @@ return None def create_function_ref_code(self, use_function_alias=False): + fname = declarations.full_name( self.declaration, with_defaults=False ) result = [] if use_function_alias: - result.append( '%s(&%s)' - % ( self.function_type_alias, declarations.full_name( self.declaration ) ) ) + result.append( '%s(&%s)' % ( self.function_type_alias, fname) ) if self.wrapper: result.append( self.param_sep() ) result.append( '%s(&%s)' % ( self.default_function_type_alias, self.wrapper.default_full_name() ) ) elif self.declaration.create_with_signature: result.append( '(%s)(&%s)' - % ( self.declaration.function_type().decl_string - , declarations.full_name( self.declaration ) ) ) + % ( self.declaration.function_type().partial_decl_string + , fname) ) if self.wrapper: result.append( self.param_sep() ) result.append( '(%s)(&%s)' - % ( self.wrapper.function_type().decl_string, self.wrapper.default_full_name() ) ) + % ( self.wrapper.function_type().partial_decl_string + , self.wrapper.default_full_name() ) ) else: - result.append( '&%s'% declarations.full_name( self.declaration ) ) + result.append( '&%s'% fname ) if self.wrapper: result.append( self.param_sep() ) result.append( '&%s' % self.wrapper.default_full_name() ) @@ -801,7 +795,7 @@ #Function parameters declared consts are ignored by C++ #except for the purpose of function definitions temp = declarations.remove_const( temp ) - return algorithm.create_identifier( self, temp.decl_string ) + return algorithm.create_identifier( self, temp.partial_decl_string ) def _generate_definition_args(self): answer = [] Modified: pyplusplus_dev/pyplusplus/messages/warnings_.py =================================================================== --- pyplusplus_dev/pyplusplus/messages/warnings_.py 2007-12-10 21:29:19 UTC (rev 1201) +++ pyplusplus_dev/pyplusplus/messages/warnings_.py 2007-12-11 10:21:11 UTC (rev 1202) @@ -215,6 +215,8 @@ warnings = globals() +all_warning_msgs = [] + for identifier, explanation in warnings.items(): if len( identifier ) != 5: continue @@ -225,7 +227,10 @@ except: continue msg = '%s %s: %s' % ( explanation.__class__.prefix, identifier, str(explanation) ) - globals()[ identifier ] = explanation.__class__( msg, identifier ) + msg_inst = explanation.__class__( msg, identifier ) + globals()[ identifier ] = msg_inst + all_warning_msgs.append( msg_inst ) + del warnings del identifier Modified: pyplusplus_dev/unittests/ogre_generate_tester.py =================================================================== --- pyplusplus_dev/unittests/ogre_generate_tester.py 2007-12-10 21:29:19 UTC (rev 1201) +++ pyplusplus_dev/unittests/ogre_generate_tester.py 2007-12-11 10:21:11 UTC (rev 1202) @@ -6,10 +6,12 @@ import os import sys import shutil +import logging import unittest import autoconfig from pygccxml import parser from pygccxml import declarations +from pyplusplus import messages from pyplusplus import code_creators from pyplusplus import module_creator from pyplusplus import module_builder @@ -18,6 +20,9 @@ class ogre_generate_tester_t(unittest.TestCase): def test(self): + module_builder.set_logger_level( logging.CRITICAL ) + messages.disable( *messages.all_warning_msgs ) + ogre_file = autoconfig.data_directory.replace( 'pyplusplus_dev', 'pygccxml_dev' ) ogre_file = parser.create_gccxml_fc( os.path.join( ogre_file, 'ogre1.4.xml' ) ) @@ -25,9 +30,16 @@ [ ogre_file ] , gccxml_path=autoconfig.gccxml.executable , indexing_suite_version=2) + mb.global_ns.exclude() mb.namespace('Ogre').include() + x = mb.global_ns.decls( lambda d: 'Animation*' in d.name and 'MapIterator' in d.name ) + for y in x: + print y.name + print y.partial_name + print declarations.full_name( y, with_defaults=False ) + target_dir = os.path.join( autoconfig.build_directory, 'ogre' ) if os.path.exists( target_dir ): shutil.rmtree( target_dir ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |