def _test(): import CodeBlock import Converters import HeaderJar header_jar = HeaderJar.HeaderJar() Session.begin(header_jar) Converters.add(Converters.WcsConv()) tk = TupleAndKeywords() tk.add_parameter( Argument.Argument(Types.Type(( "int", "*", ), 1, "FundamentalType"), "foo")) tk.add_parameter( Argument.Argument(Types.Type(( "double", "&", ), 2, "FundamentalType"), "bar")) tk.add_parameter( Argument.Argument( Types.Type(( "long unsigned int", "&", "const", ), 3, "FundamentalType"), "xyz")) tk.add_parameter( Argument.Argument(Types.Type(( "X", "const", "&", ), 4, "Class"), "x")) tk.add_parameter( Argument.Argument(Types.Type(( "Y", "*", ), 5, "Class"), "y")) tk.add_parameter(Argument.Argument(Types.Type(("Z", ), 6, "Class"), "z")) tk.add_parameter( Argument.Argument(Types.Type(("bool", ), 7, "FundamentalType"), "b")) tk.add_parameter( Argument.Argument( Types.Type(( "wchar_t", "const", "*", ), 8, "PointerType"), "str")) print(tk.get_fmt_specifier()) print(tk.get_keywords()) print(tk.build_function_signature_parameter_list()) from Module import PythonNamer namer = PythonNamer() print(tk.build_parser_idecl(namer=namer)) _print_empty_line() block = CodeBlock.CodeBlock() tk.write_args_parsing_code(block, namer, True, "return nullptr;", "<TEST>") print(block.flush()) _print_empty_line() _print_empty_line() tk = TupleAndKeywords() tk.add_parameter( Argument.Argument(Types.Type(( "int", "*", ), 1, "FundamentalType"), "foo", "nullptr")) tk.add_parameter( Argument.Argument(Types.Type(( "double", "&", ), 2, "FundamentalType"), "bar", "PI")) tk.add_parameter( Argument.Argument( Types.Type(( "long unsigned int", "&", "const", ), 3, "FundamentalType"), "xyz", "MAXINT")) tk.add_parameter( Argument.Argument(Types.Type(( "X", "const", "&", ), 4, "Class"), "x", "_x")) tk.add_parameter( Argument.Argument(Types.Type(( "Y", "*", ), 5, "Class"), "y", "_py")) tk.add_parameter( Argument.Argument(Types.Type(("Z", ), 6, "Class"), "z", "Z(1990)")) tk.add_parameter( Argument.Argument(Types.Type(("bool", ), 7, "FundamentalType"), "b", "true")) tk.add_parameter( Argument.Argument( Types.Type(( "wchar_t", "const", "*", ), 8, "PointerType"), "str", 'L"Hello world!"')) tk.write_args_parsing_code(block, namer, True, "return nullptr;", "<TEST>") print(block.flush()) integer = Types.Type(("int", ), 99, "FundamentalType") Converters.add(Converters.ListConv(integer)) tk = TupleAndKeywords() tk.add_parameter( Argument.Argument( Types.Type(( "std::vector<int>", "const", "&", ), 0, "Class"), "vi", "_vi")) tk.write_args_parsing_code(block, namer, True, "return nullptr;", "<TEST>") print(block.flush()) K = Types.Type(( "wchar_t", "const", "*", ), 111, "PointerType") V = Types.Type(( "wxColour", "*", ), 112, "PointerType") Converters.add(Converters.DictConv(K, V)) tk = TupleAndKeywords() tk.add_parameter( Argument.Argument( Types.Type(( "std::map<wchar_t const *, wxColour *>", "&", ), 0, "Class"), "m")) tk.write_args_parsing_code(block, namer, True, "return nullptr;", "<TEST>") print(block.flush())
def _test(): import CodeBlock import Converters import HeaderJar header_jar = HeaderJar.HeaderJar() Session.begin(header_jar) Converters.add(Converters.WcsConv()) tk = TupleAndKeywords() tk.add_parameter(Argument.Argument(Types.Type(("int", "*",), 1, "FundamentalType"), "foo")) tk.add_parameter(Argument.Argument(Types.Type(("double", "&",), 2, "FundamentalType"), "bar")) tk.add_parameter(Argument.Argument(Types.Type(("long unsigned int", "&", "const",), 3, "FundamentalType"), "xyz")) tk.add_parameter(Argument.Argument(Types.Type(("X", "const", "&",), 4, "Class"), "x")) tk.add_parameter(Argument.Argument(Types.Type(("Y", "*",), 5, "Class"), "y")) tk.add_parameter(Argument.Argument(Types.Type(("Z",), 6, "Class"), "z")) tk.add_parameter(Argument.Argument(Types.Type(("bool",), 7, "FundamentalType"), "b")) tk.add_parameter(Argument.Argument(Types.Type(("wchar_t", "const", "*",), 8, "PointerType"), "str")) print(tk.get_fmt_specifier()) print(tk.get_keywords()) print(tk.build_function_signature_parameter_list()) from Module import PythonNamer namer = PythonNamer() print(tk.build_parser_idecl(namer=namer)) _print_empty_line() block = CodeBlock.CodeBlock() tk.write_args_parsing_code(block, namer, True, "return nullptr;", "<TEST>") print(block.flush()) _print_empty_line() _print_empty_line() tk = TupleAndKeywords() tk.add_parameter(Argument.Argument(Types.Type(("int", "*",), 1, "FundamentalType"), "foo", "nullptr")) tk.add_parameter(Argument.Argument(Types.Type(("double", "&",), 2, "FundamentalType"), "bar", "PI")) tk.add_parameter(Argument.Argument(Types.Type(("long unsigned int", "&", "const",), 3, "FundamentalType"), "xyz", "MAXINT")) tk.add_parameter(Argument.Argument(Types.Type(("X", "const", "&",), 4, "Class"), "x", "_x")) tk.add_parameter(Argument.Argument(Types.Type(("Y", "*",), 5, "Class"), "y", "_py")) tk.add_parameter(Argument.Argument(Types.Type(("Z",), 6, "Class"), "z", "Z(1990)")) tk.add_parameter(Argument.Argument(Types.Type(("bool",), 7, "FundamentalType"), "b", "true")) tk.add_parameter(Argument.Argument(Types.Type(("wchar_t", "const", "*",), 8, "PointerType"), "str", 'L"Hello world!"')) tk.write_args_parsing_code(block, namer, True, "return nullptr;", "<TEST>") print(block.flush()) integer = Types.Type(("int",), 99, "FundamentalType") Converters.add(Converters.ListConv(integer)) tk = TupleAndKeywords() tk.add_parameter(Argument.Argument(Types.Type(("std::vector<int>", "const", "&",), 0, "Class"), "vi", "_vi")) tk.write_args_parsing_code(block, namer, True, "return nullptr;", "<TEST>") print(block.flush()) K = Types.Type(("wchar_t", "const", "*",), 111, "PointerType") V = Types.Type(("wxColour", "*",), 112, "PointerType") Converters.add(Converters.DictConv(K, V)) tk = TupleAndKeywords() tk.add_parameter(Argument.Argument(Types.Type(("std::map<wchar_t const *, wxColour *>", "&",), 0, "Class"), "m")) tk.write_args_parsing_code(block, namer, True, "return nullptr;", "<TEST>") print(block.flush())