Beispiel #1
0
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
Beispiel #2
0
 def gen_signature_pairs(
         f: NativeFunction) -> PythonSignatureNativeFunctionPair:
     return PythonSignatureNativeFunctionPair(
         signature=signature(f, method=method, pyi=pyi),
         function=f,
     )