validate_stub

Script to ensure ifcopenshell_wrapper.pyi and ifcopenshell_wrapper.py work in sync.

Things we do check: - all symbols from the wrapper present in the stub and vice versa - functions and methods signatures - read-only and settable properties, staticmethods - class hierarchy

Module Contents

validate_stub.format_diff(lines: list[str]) None
validate_stub.get_function_node_name(node: ast.FunctionDef) SubnameType | None
Returns:

Function node name as SubnameType or None, if function wasn’t processed and can be skipped.

validate_stub.get_names_tree_lines(tree: ast.Module) list[str]
validate_stub.main() None
validate_stub.SubnameType