logger.setLevel(log_level) argparser = argparse.ArgumentParser(description="VPP C++ API generator") argparser.add_argument('files', metavar='api-file', action='append', type=str, help='json api file' '(may be specified multiple times)') argparser.add_argument('--prefix', action='store', default=None, help='path prefix') argparser.add_argument('--gen-h-prefix', action='store', default=None, help='generated C header prefix') args = argparser.parse_args() jsonparser = JsonParser(logger, args.files, simple_type_class=CppSimpleType, struct_type_class=CppStructType, field_class=CppField, message_class=CppMessage) gen_cpp_headers(jsonparser, logger, args.prefix, args.gen_h_prefix) for e in jsonparser.exceptions: logger.error(e)
logger.setLevel(log_level) argparser = argparse.ArgumentParser(description="VPP C API generator") argparser.add_argument('files', metavar='api-file', action='append', type=str, help='json api file' '(may be specified multiple times)') argparser.add_argument('--prefix', action='store', default=None, help='path prefix') argparser.add_argument('--remove-path', action='store_true', help='remove path from filename') args = argparser.parse_args() jsonparser = JsonParser(logger, args.files, simple_type_class=CSimpleType, enum_class=CEnum, union_class=CUnion, struct_type_class=CStructType, field_class=CField, message_class=CMessage, alias_class=CAlias) # not using the model of having separate generated header and code files # with generated symbols present in shared library (per discussion with # Damjan), to avoid symbol version issues in .so # gen_c_headers_and_code(jsonparser, logger, args.prefix) gen_c_unified_headers(jsonparser, logger, args.prefix, args.remove_path) for e in jsonparser.exceptions: logger.warning(e)
type=str, help='json api file' '(may be specified multiple times)') argparser.add_argument('--prefix', action='store', default=None, help='path prefix') argparser.add_argument('--gen-h-prefix', action='store', default=None, help='generated C header prefix') argparser.add_argument('--remove-path', action='store_true', help='remove path from filename') args = argparser.parse_args() jsonparser = JsonParser(logger, args.files, simple_type_class=CppSimpleType, struct_type_class=CppStructType, field_class=CppField, enum_class=CppEnum, message_class=CppMessage, alias_class=CppAlias) gen_cpp_headers(jsonparser, logger, args.prefix, args.gen_h_prefix, args.remove_path) for e in jsonparser.exceptions: logger.warning(e)