@@ -603,6 +603,10 @@ def not_is_class_or_enum(e: AdaptedElement) -> bool:
603603 children_except_inner_classes = list (filter (not_is_class_or_enum , self .adapted_public_children ))
604604 children_inner_classes = list (filter (is_class_or_enum , self .adapted_public_children ))
605605
606+ def pydef_class_var () -> str :
607+ r = cpp_to_python .cpp_scope_to_pybind_var_name (options , self .cpp_element ())
608+ return r
609+
606610 def make_pyclass_creation_code () -> str :
607611 """Return the C++ code that instantiates the class.
608612
@@ -656,7 +660,7 @@ def make_pyclass_creation_code() -> str:
656660 replacements = munch .Munch ()
657661 replacements .py = "py" if options .bind_library == BindLibraryType .pybind11 else "nb"
658662 replacements ._i_ = self .options ._indent_cpp_spaces ()
659- replacements .pydef_class_var = cpp_to_python . cpp_scope_to_pybind_var_name ( options , self . cpp_element () )
663+ replacements .pydef_class_var = pydef_class_var ( )
660664 replacements .qualified_struct_name = qualified_struct_name
661665 replacements .other_template_params = other_template_params
662666 replacements .location = self ._elm_info_original_location_cpp ()
@@ -789,11 +793,9 @@ def make_all_children_code() -> str:
789793
790794 code = make_pyclass_creation_code ()
791795 if len (inner_classes_code ) > 0 :
792- pydef_class_var = cpp_to_python .cpp_scope_to_pybind_var_name (options , self .cpp_element ())
793-
794796 code += ";\n "
795797 code += inner_classes_code + "\n \n "
796- code += pydef_class_var + "\n "
798+ code += pydef_class_var () + "\n "
797799 code += make_all_children_code ()
798800 else :
799801 code += "\n " + make_all_children_code ()
0 commit comments