(c_decl)
return func_name, func_proto, "\n".join(s)
Convert a C-style function declaration string to its corresponding SimTypes-based Python representation.

    :param str c_decl:              The C-style function declaration string.
    :return:                        A tuple of the function name, the prototype, and a string representing the
                                    SimType-based Python representation.
Convert a C-style function declaration string to its corresponding SimTypes-based Python representation.
Convert a C - style function declaration string to its corresponding SimTypes - based Python representation .
def convert_cproto_to_py(c_decl) -> Tuple[str,'SimTypeFunction',str]:
    """
    Convert a C-style function declaration string to its corresponding SimTypes-based Python representation.

    :param str c_decl:              The C-style function declaration string.
    :return:                        A tuple of the function name, the prototype, and a string representing the
                                    SimType-based Python representation.
    """

    s = [ ]

    try:
        s.append('# %s' % c_decl)  # comment string

        parsed = parse_file(c_decl)
        parsed_decl = parsed[0]
        if not parsed_decl:
            raise ValueError('Cannot parse the function prototype.')

        func_name, func_proto = next(iter(parsed_decl.items()))

        s.append('"%s": %s,' % (func_name, func_proto._init_str()))  # The real Python string

    except Exception:  # pylint:disable=broad-except
        # Silently catch all parsing errors... supporting all function declarations is impossible
        try:
            func_name = get_function_name(c_decl)
            func_proto = None
            s.append('"%s": None,' % func_name)
        except ValueError:
            # Failed to extract the function name. Is it a function declaration?
            func_name, func_proto = None, None

    return func_name, func_proto, "\n".join(s)
def convert_cproto_to_py ( c_decl ) -> Tuple [ str , 'SimTypeFunction' , str ] : s = [ ] try : s . append ( '# %s' % c_decl ) # comment string parsed = parse_file ( c_decl ) parsed_decl = parsed [ 0 ] if not parsed_decl : raise ValueError ( 'Cannot parse the function prototype.' ) func_name , func_proto = next ( iter ( parsed_decl . items ( ) ) ) s . append ( '"%s": %s,' % ( func_name , func_proto . _init_str ( ) ) ) # The real Python string except Exception : # pylint:disable=broad-except # Silently catch all parsing errors... supporting all function declarations is impossible try : func_name = get_function_name ( c_decl ) func_proto = None s . append ( '"%s": None,' % func_name ) except ValueError : # Failed to extract the function name. Is it a function declaration? func_name , func_proto = None , None return func_name , func_proto , "\n" . join ( s )