@@ -800,31 +800,6 @@ def is_convertible( source, target ):
800
800
"""returns True, if source could be converted to target, otherwise False"""
801
801
return __is_convertible_t ( source , target ).is_convertible ()
802
802
803
- def __contains_noncopyable_mem_var ( class_ ):
804
- """implementation details"""
805
- logger = utils .loggers .cxx_parser
806
- mvars = class_ .vars ( lambda v : not v .type_qualifiers .has_static , recursive = False , allow_empty = True )
807
- for mvar in mvars :
808
- type_ = remove_alias ( mvar .type )
809
- type_ = remove_reference ( type_ )
810
- if is_const ( type_ ):
811
- no_const = remove_const ( type_ )
812
- if is_fundamental ( no_const ) or is_enum ( no_const ):
813
- logger .debug ( "__contains_noncopyable_mem_var - %s - TRUE - containes const member variable - fundamental or enum" % class_ .decl_string )
814
- return True
815
- if is_class ( no_const ):
816
- logger .debug ( "__contains_noncopyable_mem_var - %s - TRUE - containes const member variable - class" % class_ .decl_string )
817
- return True
818
- if is_array ( no_const ):
819
- logger .debug ( "__contains_noncopyable_mem_var - %s - TRUE - containes const member variable - array" % class_ .decl_string )
820
- return True
821
- if is_class ( type_ ):
822
- cls = type_ .declaration
823
- if is_noncopyable ( cls ):
824
- logger .debug ( "__contains_noncopyable_mem_var - %s - TRUE - containes member variable - class that is not copyable" % class_ .decl_string )
825
- return True
826
- logger .debug ( "__contains_noncopyable_mem_var - %s - false - doesn't contains noncopyable members" % class_ .decl_string )
827
-
828
803
def __is_noncopyable_single ( class_ ):
829
804
"""implementation details"""
830
805
#It is not enough to check base classes, we should also to check
@@ -844,7 +819,7 @@ def __is_noncopyable_single( class_):
844
819
])
845
820
logger .debug ( msg )
846
821
return False
847
- if __contains_noncopyable_mem_var ( class_ ):
822
+ if class_ . find_noncopyable_vars ( ):
848
823
logger .debug ( "__is_noncopyable_single(TRUE) - %s - contains noncopyable members" % class_ .decl_string )
849
824
return True
850
825
else :
0 commit comments