Update of /cvsroot/pygccxml/source/pyplusplus/module_creator
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14922/pyplusplus/module_creator
Modified Files:
call_policies_resolver.py
Log Message:
fixing 2 bugs:
templates parser now correctly reports about is_instantiation
improving default call policies for operator[]
Index: call_policies_resolver.py
===================================================================
RCS file: /cvsroot/pygccxml/source/pyplusplus/module_creator/call_policies_resolver.py,v
retrieving revision 1.13
retrieving revision 1.14
diff -C2 -d -r1.13 -r1.14
*** call_policies_resolver.py 29 Mar 2006 04:26:58 -0000 1.13
--- call_policies_resolver.py 30 Mar 2006 08:09:42 -0000 1.14
***************
*** 91,99 ****
return_type = declarations.remove_cv( calldef.return_type )
! if declarations.is_reference( return_type ):
return decl_wrappers.return_internal_reference()
!
! return None
!
class built_in_resolver_t(resolver_t):
--- 91,107 ----
return_type = declarations.remove_cv( calldef.return_type )
! if declarations.is_reference( return_type ):
! return_type = declarations.remove_reference( return_type )
! if declarations.is_fundamental( return_type ) or declarations.is_enum( return_type ):
! if declarations.is_const( calldef.return_type ):
! return decl_wrappers.return_value_policy( decl_wrappers.copy_const_reference )
! else:
! return decl_wrappers.return_value_policy( decl_wrappers.copy_non_const_reference )
! elif declarations.is_reference( return_type ):
! #reference, but not funcdamental type
! #In future may be I should check whether class is copyable or not
return decl_wrappers.return_internal_reference()
! else:
! return None
class built_in_resolver_t(resolver_t):
|