Пример #1
0
 def get_getter_call_policies( self ):
     if None is self._getter_call_policies:
         if self.apply_smart_ptr_wa:
             value_policy = ''
             if self.is_read_only:
                value_policy = call_policies.copy_const_reference
             else:
                 value_policy = call_policies.copy_non_const_reference
             self._getter_call_policies = call_policies.return_value_policy( value_policy )
         elif self.use_make_functions:
             self._getter_call_policies = call_policies.return_internal_reference()
         else:
             pass
     return self._getter_call_policies
Пример #2
0
 def _get_call_policies(self):
     if self.__call_policies:
         return self.__call_policies
     if self.container_traits not in declarations.sequential_container_traits:
         # TODO: find out why map's don't like the policy
         return self.__call_policies
     element_type = None
     try:
         element_type = self.element_type
     except:
         return
     if declarations.is_const(element_type):
         element_type = declarations.remove_const(element_type)
     if declarations.is_pointer(element_type):
         self.__call_policies = call_policies.return_internal_reference()
     return self.__call_policies
Пример #3
0
 def _get_call_policies( self ):
     if self.__call_policies:
         return self.__call_policies
     if self.container_traits not in declarations.sequential_container_traits:
         #TODO: find out why map's don't like the policy
         return self.__call_policies
     element_type = None
     try:
         element_type = self.element_type
     except:
         return
     if declarations.is_const( element_type ):
         element_type = declarations.remove_const( element_type )
     if declarations.is_pointer( element_type ):
         self.__call_policies = call_policies.return_internal_reference()
     return self.__call_policies
Пример #4
0
 def get_getter_call_policies(self):
     if None is self._getter_call_policies:
         if self.apply_smart_ptr_wa:
             value_policy = ''
             if self.is_read_only:
                 value_policy = call_policies.copy_const_reference
             else:
                 value_policy = call_policies.copy_non_const_reference
             self._getter_call_policies = call_policies.return_value_policy(
                 value_policy)
         elif self.use_make_functions:
             self._getter_call_policies = call_policies.return_internal_reference(
             )
         else:
             pass
     return self._getter_call_policies