diff options
author | Daniel P. Berrangé <berrange@redhat.com> | 2022-03-24 12:23:46 +0000 |
---|---|---|
committer | Daniel P. Berrangé <berrange@redhat.com> | 2022-04-21 12:32:51 +0100 |
commit | f4c43ef58171c5efad9001c7bc643c06f38f0edc (patch) | |
tree | 4406914400e92219cd103a41ac96d4e3c2bd8d7b /generator.py | |
parent | fdd2034c1d7a9090706d59fd6c27a6d7872ad01b (diff) | |
download | libvirt-python-f4c43ef58171c5efad9001c7bc643c06f38f0edc.tar.gz |
generator: use single dict for tracking all functions
A single invokation of the generator only handles processing of one
libvirt API module, so there is no need to use separate dicts for
tracking functions.
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Diffstat (limited to 'generator.py')
-rwxr-xr-x | generator.py | 26 |
1 files changed, 12 insertions, 14 deletions
diff --git a/generator.py b/generator.py index 6bc5d56..e88e7a0 100755 --- a/generator.py +++ b/generator.py @@ -16,8 +16,6 @@ EnumValue = Union[str, int] EnumType = Dict[str, EnumValue] functions = {} # type: Dict[str, FunctionType] -lxc_functions = {} # type: Dict[str, FunctionType] -qemu_functions = {} # type: Dict[str, FunctionType] enums = defaultdict(dict) # type: Dict[str, EnumType] # { enumType: { enumConstant: enumValue } } lxc_enums = defaultdict(dict) # type: Dict[str, EnumType] # { enumType: { enumConstant: enumValue } } qemu_enums = defaultdict(dict) # type: Dict[str, EnumType] # { enumType: { enumConstant: enumValue } } @@ -180,15 +178,15 @@ def function(name: str, desc: str, ret: ArgumentType, args: List[ArgumentType], def qemu_function(name: str, desc: str, ret: ArgumentType, args: List[ArgumentType], file: str, module: str, cond: str) -> None: - if onlyOverrides and name not in qemu_functions: + if onlyOverrides and name not in functions: return - qemu_functions[name] = (desc, ret, args, file, module, cond) + functions[name] = (desc, ret, args, file, module, cond) def lxc_function(name: str, desc: str, ret: ArgumentType, args: List[ArgumentType], file: str, module: str, cond: str) -> None: - if onlyOverrides and name not in lxc_functions: + if onlyOverrides and name not in functions: return - lxc_functions[name] = (desc, ret, args, file, module, cond) + functions[name] = (desc, ret, args, file, module, cond) def enum(type: str, name: str, value: EnumValue) -> None: @@ -652,10 +650,10 @@ def print_function_wrapper(module: str, name: str, output: IO[str], export: IO[s (desc, ret, args, file, mod, cond) = functions[name] skip_function2, skip_impl2 = skip_function, skip_impl elif module == "libvirt-lxc": - (desc, ret, args, file, mod, cond) = lxc_functions[name] + (desc, ret, args, file, mod, cond) = functions[name] skip_function2, skip_impl2 = lxc_skip_function, lxc_skip_impl elif module == "libvirt-qemu": - (desc, ret, args, file, mod, cond) = qemu_functions[name] + (desc, ret, args, file, mod, cond) = functions[name] skip_function2, skip_impl2 = qemu_skip_function, qemu_skip_impl else: raise ValueError(module) @@ -852,10 +850,10 @@ def buildStubs(module: str, api_xml: str) -> int: funcs = functions funcs_skipped = functions_skipped elif module == "libvirt-lxc": - funcs = lxc_functions + funcs = functions funcs_skipped = lxc_functions_skipped elif module == "libvirt-qemu": - funcs = qemu_functions + funcs = functions funcs_skipped = qemu_functions_skipped try: @@ -1286,9 +1284,9 @@ def writeDoc(module: str, name: str, args: List[ArgumentType], indent: str, outp if module == "libvirt": funcs = functions elif module == "libvirt-lxc": - funcs = lxc_functions + funcs = functions elif module == "libvirt-qemu": - funcs = qemu_functions + funcs = functions if not funcs[name][0]: return val = funcs[name][0] @@ -1786,7 +1784,7 @@ def qemuBuildWrappers(module: str) -> None: # # Generate functions directly, no classes # - for name, (desc, ret, args, file, mod, cond) in sorted(qemu_functions.items()): + for name, (desc, ret, args, file, mod, cond) in sorted(functions.items()): func = nameFixup(name, 'None', '', '') fd.write("def %s(" % func) for n, (a_name, a_type, a_info) in enumerate(args): @@ -1890,7 +1888,7 @@ def lxcBuildWrappers(module: str) -> None: # # Generate functions directly, no classes # - for name, (desc, ret, args, file, mod, cond) in sorted(lxc_functions.items()): + for name, (desc, ret, args, file, mod, cond) in sorted(functions.items()): func = nameFixup(name, 'None', '', '') fd.write("def %s(" % func) for n, (a_name, a_type, a_info) in enumerate(args): |