| Trees | Indices | Help |
|
|---|
|
|
1 # Copyright 2004-2008 Roman Yakovenko 2 # Distributed under the Boost Software License, Version 1.0. (See 3 # accompanying file LICENSE_1_0.txt or copy at 4 # http://www.boost.org/LICENSE_1_0.txt) 5 6 import os 7 import algorithm 8 import code_creator 9 import calldef_utils 10 import declaration_based 11 import registration_based 12 import class_declaration 13 from pygccxml import declarations 14 from pyplusplus import decl_wrappers15 16 #TODO: 17 #Add to docs: 18 #public memebr functions - call, override, call base implementation 19 #protected member functions - call, override 20 #private - override 21 22 -class calldef_t( registration_based.registration_based_t 23 , declaration_based.declaration_based_t ):25 registration_based.registration_based_t.__init__( self ) 26 declaration_based.declaration_based_t.__init__( self, declaration=function ) 27 self._wrapper = wrapper 28 self._associated_decl_creators = []29 30 @property 34 39 wrapper = property( _get_wrapper, _set_wrapper ) 40 43 46 4951 arg_utils = calldef_utils.argument_utils_t( self.declaration, algorithm.make_id_creator( self ) ) 52 return arg_utils.keywords_args()5355 if False == default_generates_code_too \ 56 and self.declaration.call_policies.is_default(): 57 return '' 58 else: 59 return self.declaration.call_policies.create( self )6062 if not self.works_on_instance: 63 return '%s.def' % self.parent.class_var_name 64 else: 65 return 'def'6668 return self.documentation69 72