rendered paste bodydef main(): parser = argparse.ArgumentParser(prog = sys.argv[0]) parser.add_argument('--package') subparsers = parser.add_subparsers(dest = 'command') parser_generate_code_data = subparsers.add_parser('generate_code_data') parser_generate_code_data.add_argument('input') parser_generate_code_data.add_argument('output') parser_generate_code_data.add_argument('--language', default = 'c++', choices = ('c', 'c++')) parser_generate_code_data.add_argument('--backend', default = 'clang', choices = ('clang', 'clang-pch', 'gccxml')) parser_generate_code_data.add_argument('--clang-binary', default = 'clang') parser_generate_code_data.add_argument('--clang-export-plugin') parser_convert_code_data = subparsers.add_parser('convert_code_data') parser_convert_code_data.add_argument('input') parser_convert_code_data.add_argument('--backend', default = 'clang', choices = ('clang', 'gccxml')) parser_convert_code_data.add_argument('--header') parser_convert_code_data.add_argument('--source') parser_convert_code_data.add_argument('--ctypes') parser_generate_ctypes_api = subparsers.add_parser('generate_ctypes_api') parser_generate_ctypes_api.add_argument('input') parser_generate_ctypes_api.add_argument("--output-path", default = os.getcwd()) parser_generate_ctypes_api.add_argument('--display-unprocessed', action = 'store_true') parser_generate_ctypes_api.add_argument('--display-processed', action = 'store_true') args = parser.parse_args() if args.command == "generate_code_data": generate_code_data(args.input, args.output, args.backend, args.language, args.clang_binary, args.clang_export_plugin) if args.command == "convert_code_data": convert_code_data(args.input, args.header, args.source, args.ctypes, args.package, args.backend) elif args.command == "generate_ctypes_api": generate_ctypes_api(args.input, args.output_path, args.package, args.display_unprocessed, args.display_processed)if __name__ == '__main__': main()