ifcopenshell_wrapper.pyi - support varargs and kwargs in constructors

This commit is contained in:
Andrej730
2026-03-20 12:01:04 +05:00
parent 6c1fb3b01a
commit 2bad861122
2 changed files with 68 additions and 6 deletions
@@ -70,13 +70,16 @@ def get_function_node_name(node: ast.FunctionDef) -> Union[SubnameType, None]:
else:
args.append(f"{arg.arg}={ast.unparse(default)}")
if arg := node.args.vararg:
args.append(f"*{arg.arg}")
if arg := node.args.kwarg:
args.append(f"**{arg.arg}")
# Skip non-informative constructors.
if is_init and args == ["self"]:
return None
if node.args.vararg:
args.append("*args")
node_name = f"def {node.name}"
node_name = f"{node_name}({', '.join(args)}): ..."