def should_generate_py_binding(f: NativeFunction) -> bool: name = cpp.name(f.func) for pattern in SKIP_PYTHON_BINDINGS: if re.match('^' + pattern + '$', name): return False args = ', '.join( argument_type_str(arg.type) for arg in signature(f).arguments()) sig = f'{name}({args})' for pattern in SKIP_PYTHON_BINDINGS_SIGNATURES: if pattern == sig: return False return True
def gen_signature_pairs( f: NativeFunction) -> PythonSignatureNativeFunctionPair: return PythonSignatureNativeFunctionPair( signature=signature(f, method=method, pyi=pyi), function=f, )