All classes:
- cffi.error.FFIError
- cffi.error.CDefError
- cffi.error.VerificationError
- cffi.error.VerificationMissing
- cffi.error.PkgConfigError
- cffi.model.BaseTypeByIdentity
- cffi.model.BaseType
- cffi.model.VoidType
- cffi.model.BasePrimitiveType
- cffi.model.PrimitiveType
- cffi.model.UnknownIntegerType
- cffi.model.UnknownFloatType
- cffi.model.BaseFunctionType
- cffi.model.RawFunctionType
- cffi.model.FunctionPtrType
- cffi.model.PointerType
- cffi.model.NamedPointerType
- cffi.model.ArrayType
- cffi.model.StructOrUnionOrEnum
- cffi.model.StructOrUnion
- cffi.model.StructType
- cffi.model.UnionType
- cffi.model.EnumType
- cffi.api.FFI
- cffi.cparser.Parser
- cffi.verifier.NativeIO
- cffi.verifier.Verifier
- cffi.vengine_gen.VGenericEngine
- cffi.vengine_gen.VGenericEngine.load_library.FFILibrary
- cffi.vengine_cpy.VCPythonEngine
- cffi.vengine_cpy.VCPythonEngine.load_library.FFILibrary
- cffi.cffi_opcode.CffiOp
- cffi.recompiler.GlobalExpr
- cffi.recompiler.FieldExpr
- cffi.recompiler.StructUnionExpr
- cffi.recompiler.EnumExpr
- cffi.recompiler.TypenameExpr
- cffi.recompiler.Recompiler
- cffi.recompiler.NativeIO
- cffi.api._make_ffi_library.FFILibrary
- cffi.backend_ctypes.CTypesType
- cffi.backend_ctypes.CTypesData
- cffi.backend_ctypes.CTypesGenericPrimitive
- cffi.backend_ctypes.CTypesGenericArray
- cffi.backend_ctypes.CTypesGenericPtr
- cffi.backend_ctypes.CTypesBaseStructOrUnion
- cffi.backend_ctypes.CTypesBackend
- cffi.backend_ctypes.CTypesBackend.new_void_type.CTypesVoid
- cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive
- cffi.backend_ctypes.CTypesBackend.new_pointer_type.CTypesPtr
- cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray
- cffi.backend_ctypes.CTypesBackend._new_struct_or_union.struct_or_union
- cffi.backend_ctypes.CTypesBackend._new_struct_or_union.CTypesStructOrUnion
- cffi.backend_ctypes.CTypesBackend.new_function_type.CTypesFunctionPtr
- cffi.backend_ctypes.CTypesBackend.new_enum_type.CTypesEnum
- cffi.backend_ctypes.CTypesBackend.gcp.MyRef
- cffi.backend_ctypes.CTypesLibrary
- cffi.setuptools_ext._add_c_module.build_ext_make_mod
- cffi.setuptools_ext._add_py_module.build_py_make_mod
- cffi.setuptools_ext._add_py_module.build_ext_make_mod
All functions:
  Elements:
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: '...fuzz_recompiler'
    functionSourceFile: '...fuzz_recompiler'
    functionUses: 0
    functionsReached:
    - atheris.Fuzz
    - atheris.Setup
    - atheris.instrument_all
    - '...fuzz_recompiler.main'
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 16
    functionLinenumber: 22
    functionName: '...fuzz_recompiler.TestOneInput'
    functionSourceFile: '...fuzz_recompiler'
    functionUses: 0
    functionsReached:
    - _r_int_literal.match
    - prefixes.get
    - types.ModuleType
    - <builtin>.iter
    - cffi.api.FFI.cast
    - cffi.model.EnumType.force_the_name
    - flags.append
    - cffi.cparser.Parser._build_enum_type
    - <builtin>.object
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - thread.allocate_lock
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - cffi.cparser._warn_for_non_extern_non_static_global_variable
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - int_str.lower
    - replace_with.startswith
    - <builtin>.any
    - cffi.cparser.Parser._parse_decl
    - newnames.append
    - int_str.startswith
    - <builtin>.reversed
    - csource.encode
    - cffi.recompiler.Recompiler._check_not_opaque
    - lst.sort
    - cffi.model.StructOrUnion.finish_backend_type
    - tp.name.startswith
    - <builtin>.zip
    - s.startswith
    - cffi.recompiler.Recompiler._field_type
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.api.FFI.cdef
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - macros.items
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - cffi.cparser.Parser._internal_parse
    - result.count
    - s.lower
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - _cffi_backend.set_ffi
    - csource.replace
    - reprargs.append
    - cffi.model.EnumType.build_baseinttype
    - csourcelines.append
    - _thread.allocate_lock
    - _dummy_thread.allocate_lock.acquire
    - cffi.model.attach_exception_info
    - tp.finish_backend_type
    - cffi.api.FFI._get_cached_btype
    - enumvalues.append
    - type.name.startswith
    - cffi.api.FFI.__init__
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - atheris.FuzzedDataProvider
    - <builtin>.setattr
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - weakref.WeakKeyDictionary
    - cffi.recompiler.Recompiler.collect_step_tables
    - ctn.discard
    - cffi.model.unknown_type
    - _r_line_directive.sub
    - fldnames.append
    - tp.enumfields
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - cffi.recompiler.StructUnionExpr.__init__
    - ftype.resolve_length
    - cffi.cparser.Parser._declare_function
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - cffi.recompiler.Recompiler._generate
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._get_unknown_type
    - cffi.cparser.Parser._as_func_arg
    - <builtin>.type
    - cffi.cparser.Parser._c_div
    - match.groups
    - result.replace
    - cffi.cparser.Parser.parse
    - cffi.recompiler.Recompiler._typedef_ctx
    - cffi.cparser.Parser._get_type_and_quals
    - name.startswith
    - cffi.cparser.Parser._extract_quals
    - name.split
    - <builtin>.range
    - cffi.cparser._get_parser
    - cffi.cparser._preprocess
    - line.strip
    - value.strip
    - cffi.model.get_typecache
    - _dummy_thread.allocate_lock
    - cffi.cparser.Parser._add_integer_constant
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.recompiler.Recompiler._struct_ctx
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - cffi.model.qualify
    - <builtin>.divmod
    - cffi.cparser.Parser._get_unknown_ptr_type
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.cparser.Parser.__init__
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - weakref.WeakValueDictionary
    - cffi.model.VoidType.build_backend_type
    - c_fields.append
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - _cffi_backend._get_types
    - cffi.api.FFI._cdef
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - tp.is_integer_type
    - <builtin>.str
    - replace_with.strip
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - match.group
    - cffi.model.RawFunctionType.as_function_pointer
    - cffi.model.EnumType.check_not_partial
    - re.match
    - cffi.cparser.Parser._declare
    - decl.name.startswith
    - _r_define.finditer
    - parts.append
    - cffi.cparser.Parser._process_macros
    - cffi.recompiler.FieldExpr.__init__
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - _cffi_backend.cast
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.recompiler.Recompiler.__init__
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - cffi.model.BaseTypeByIdentity.get_c_name
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - cffi.cffi_opcode.CffiOp.__init__
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cache.clear
    - cffi.recompiler.TypenameExpr.__init__
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser.Parser.parse_type
    - cffi.cparser._preprocess_extern_python
    - cffi.model.UnknownFloatType.__init__
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - dummy_thread.allocate_lock
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.ArrayType.length_is_unknown
    - cffi.model.StructOrUnion.anonymous_struct_fields
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - fdp.ConsumeUnicodeNoSurrogates
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - cffi.recompiler.Recompiler.collect_type_table
    - <builtin>.hasattr
    - type.finish_backend_type
    - cffi.recompiler.Recompiler._add_missing_struct_unions
    - cffi.model.UnknownIntegerType.__init__
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - cffi.model.unknown_ptr_type
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.FuzzedDataProvider
    functionSourceFile: atheris
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 3
    IfCount: 7
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7ff137c6d190>
    argNames:
    - self
    - backend
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 15
    functionLinenumber: 41
    functionName: cffi.api.FFI.__init__
    functionSourceFile: cffi.api
    functionUses: 1
    functionsReached:
    - prefixes.get
    - types.ModuleType
    - cffi.model.EnumType.force_the_name
    - cffi.api.FFI.cast
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - thread.allocate_lock
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - _cffi_backend.set_ffi
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - csourcelines.append
    - _thread.allocate_lock
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - <builtin>.setattr
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - weakref.WeakKeyDictionary
    - ctn.discard
    - _r_line_directive.sub
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - <builtin>.type
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - name.startswith
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - cffi.model.get_typecache
    - _dummy_thread.allocate_lock
    - cffi.cparser.Parser.parse_type_and_quals
    - _pycparser.CParser
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.cparser.Parser.__init__
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - weakref.WeakValueDictionary
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - _cffi_backend._get_types
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.EnumType.check_not_partial
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - _cffi_backend.cast
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - <builtin>.max
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - dummy_thread.allocate_lock
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.ArrayType.length_is_unknown
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - <builtin>.min
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised:
    - Exception
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fdp.ConsumeUnicodeNoSurrogates
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7ff13843ab80>
    - <ast.Constant object at 0x7ff13843aac0>
    - <ast.Constant object at 0x7ff13843a8e0>
    argNames:
    - self
    - csource
    - override
    - packed
    - pack
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 101
    functionName: cffi.api.FFI.cdef
    functionSourceFile: cffi.api
    functionUses: 2
    functionsReached:
    - _r_int_literal.match
    - prefixes.get
    - <builtin>.iter
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - <builtin>.object
    - cffi.cparser.Parser._make_partial
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - cffi.cparser._warn_for_non_extern_non_static_global_variable
    - int_str.lower
    - cffi.cparser.Parser._parse_decl
    - newnames.append
    - int_str.startswith
    - <builtin>.reversed
    - csource.encode
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - macros.items
    - look_for_words.discard
    - cffi.cparser._common_type_names
    - cffi.cparser.Parser._internal_parse
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - csourcelines.append
    - tp.finish_backend_type
    - enumvalues.append
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.model.StructOrUnion.__init__
    - _r_line_directive.sub
    - ctn.discard
    - cffi.model.unknown_type
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - cffi.cparser.Parser._declare_function
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._get_unknown_type
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser.parse
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - cffi.cparser._get_parser
    - name.startswith
    - <builtin>.range
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - value.strip
    - cffi.cparser.Parser._add_integer_constant
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - cffi.cparser.Parser._get_unknown_ptr_type
    - fldquals.append
    - typenames.append
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - _r_float_dotdotdot.sub
    - cffi.cparser.Parser._parse_function_type
    - cffi.api.FFI._cdef
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - tp.is_integer_type
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - match.group
    - cffi.model.RawFunctionType.as_function_pointer
    - re.match
    - cffi.cparser.Parser._declare
    - decl.name.startswith
    - _r_define.finditer
    - parts.append
    - cffi.cparser.Parser._process_macros
    - <builtin>.int
    - fldbitsize.append
    - cffi.cparser._warn_for_string_literal
    - words_used.add
    - type.as_function_pointer
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - <builtin>.sorted
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cache.clear
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.model.UnknownFloatType.__init__
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - cffi.model.UnknownIntegerType.__init__
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - cffi.model.unknown_ptr_type
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7ff13862e880>
    argNames:
    - self
    - ffi
    - module_name
    - target_is_python
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 129
    functionName: cffi.recompiler.Recompiler.__init__
    functionSourceFile: ''
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 7
    IfCount: 6
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 138
    functionName: cffi.recompiler.Recompiler.collect_type_table
    functionSourceFile: cffi.recompiler
    functionUses: 15
    functionsReached:
    - cffi.recompiler.Recompiler._generate
    - <builtin>.isinstance
    - <builtin>.type
    - <builtin>.len
    - <builtin>.getattr
    - <builtin>.tuple
    - cffi.model.attach_exception_info
    - name.split
    - <builtin>.enumerate
    - <builtin>.sorted
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 247
    functionName: cffi.recompiler.Recompiler.collect_step_tables
    functionSourceFile: cffi.recompiler
    functionUses: 15
    functionsReached:
    - cffi.cffi_opcode.CffiOp.__init__
    - <builtin>.getattr
    - c_fields.append
    - flags.append
    - cffi.recompiler.TypenameExpr.__init__
    - tp.enumfields
    - replace_with.lstrip
    - <builtin>.list
    - cffi.recompiler.StructUnionExpr.__init__
    - replace_with.startswith
    - replace_with.strip
    - <builtin>.any
    - <builtin>.tuple
    - cffi.recompiler.Recompiler._check_not_opaque
    - lst.sort
    - cffi.model.StructOrUnion.anonymous_struct_fields
    - tp.name.startswith
    - <builtin>.zip
    - cffi.recompiler.Recompiler._generate
    - cffi.recompiler.Recompiler._field_type
    - cffi.recompiler.FieldExpr.__init__
    - cffi.model.ArrayType.__init__
    - <builtin>.type
    - <builtin>.len
    - result.replace
    - cffi.recompiler.Recompiler._typedef_ctx
    - name.split
    - result.count
    - <builtin>.set
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - cffi.recompiler.Recompiler._struct_ctx
    - cffi.model.qualify
    - cffi.recompiler.Recompiler._add_missing_struct_unions
    - cffi.model.attach_exception_info
    - cffi.model.BaseTypeByIdentity.get_c_name
    - <builtin>.sorted
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 38
    functionName: '...fuzz_recompiler.main'
    functionSourceFile: '...fuzz_recompiler'
    functionUses: 1
    functionsReached:
    - atheris.Fuzz
    - atheris.Setup
    - atheris.instrument_all
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.instrument_all
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.Setup
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.Fuzz
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cffi.recompiler
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7ff137a2c070>
    - <ast.Constant object at 0x7ff137a2c040>
    argNames:
    - self
    - name
    - address
    - type_op
    - size
    - check_value
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 15
    functionName: cffi.recompiler.GlobalExpr.__init__
    functionSourceFile: cffi.recompiler
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 22
    functionName: cffi.recompiler.GlobalExpr.as_c_expr
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 26
    functionName: cffi.recompiler.GlobalExpr.as_python_expr
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - name
    - field_offset
    - field_size
    - fbitsize
    - field_type_op
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 31
    functionName: cffi.recompiler.FieldExpr.__init__
    functionSourceFile: cffi.recompiler
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 38
    functionName: cffi.recompiler.FieldExpr.as_c_expr
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.len
    functionSourceFile: <builtin>
    functionUses: 138
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 44
    functionName: cffi.recompiler.FieldExpr.as_python_expr
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 47
    functionName: cffi.recompiler.FieldExpr.as_field_python_expr
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - cffi.cffi_opcode.format_four_bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - num
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 30
    functionName: cffi.cffi_opcode.format_four_bytes
    functionSourceFile: ''
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 9
    argDefaultValues: []
    argNames:
    - self
    - name
    - type_index
    - flags
    - size
    - alignment
    - comment
    - first_field_index
    - c_fields
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 59
    functionName: cffi.recompiler.StructUnionExpr.__init__
    functionSourceFile: cffi.recompiler
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 70
    functionName: cffi.recompiler.StructUnionExpr.as_c_expr
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 77
    functionName: cffi.recompiler.StructUnionExpr.as_python_expr
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - <builtin>.eval
    - c_field.as_field_python_expr
    - cffi.cffi_opcode.format_four_bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.eval
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: c_field.as_field_python_expr
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - name
    - type_index
    - size
    - signed
    - allenums
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 88
    functionName: cffi.recompiler.EnumExpr.__init__
    functionSourceFile: cffi.recompiler
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 95
    functionName: cffi.recompiler.EnumExpr.as_c_expr
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 100
    functionName: cffi.recompiler.EnumExpr.as_python_expr
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - cffi.cffi_opcode.format_four_bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - type_index
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 112
    functionName: cffi.recompiler.TypenameExpr.__init__
    functionSourceFile: cffi.recompiler
    functionUses: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 116
    functionName: cffi.recompiler.TypenameExpr.as_c_expr
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 119
    functionName: cffi.recompiler.TypenameExpr.as_python_expr
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - cffi.cffi_opcode.format_four_bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - ver
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 135
    functionName: cffi.recompiler.Recompiler.needs_version
    functionSourceFile: cffi.recompiler
    functionUses: 19
    functionsReached:
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.max
    functionSourceFile: <builtin>
    functionUses: 75
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - step_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 226
    functionName: cffi.recompiler.Recompiler._generate
    functionSourceFile: cffi.recompiler
    functionUses: 19
    functionsReached:
    - <builtin>.type
    - <builtin>.getattr
    - cffi.model.attach_exception_info
    - name.split
    - <builtin>.sorted
    linkageType: pythonLinkage
    raised:
    - VerificationError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.sorted
    functionSourceFile: <builtin>
    functionUses: 90
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.isinstance
    functionSourceFile: <builtin>
    functionUses: 219
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cffi.recompiler.Recompiler.collect_type_table.<lambda1>
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.enumerate
    functionSourceFile: <builtin>
    functionUses: 98
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cffi.recompiler.Recompiler.collect_type_table.<lambda2>
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.getattr
    functionSourceFile: <builtin>
    functionUses: 141
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.tuple
    functionSourceFile: <builtin>
    functionUses: 97
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - tp
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 196
    functionName: cffi.recompiler.Recompiler._enum_fields
    functionSourceFile: cffi.recompiler
    functionUses: 34
    functionsReached:
    - tp.enumfields
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tp.enumfields
    functionSourceFile: <builtin>
    functionUses: 51
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 4
    IfCount: 6
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - tp
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 207
    functionName: cffi.recompiler.Recompiler._do_collect_type
    functionSourceFile: cffi.recompiler
    functionUses: 9
    functionsReached:
    - cffi.model.BaseTypeByIdentity._get_items
    - <builtin>.getattr
    - tp.enumfields
    - replace_with.lstrip
    - replace_with.startswith
    - cffi.model.BaseFunctionType.__init__
    - replace_with.strip
    - arg._get_c_name
    - cffi.recompiler.Recompiler._do_collect_type
    - cffi.recompiler.Recompiler._field_type
    - cffi.model.ArrayType.__init__
    - cffi.model.FunctionPtrType.as_raw_function
    - result.replace
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - cffi.model.qualify
    - reprargs.append
    - cffi.model.BaseTypeByIdentity.get_c_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 257
    functionName: cffi.model.FunctionPtrType.as_raw_function
    functionSourceFile: cffi.model
    functionUses: 10
    functionsReached:
    - arg._get_c_name
    - cffi.model.BaseFunctionType.__init__
    - reprargs.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - tp_struct
    - field_name
    - tp_field
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 849
    functionName: cffi.recompiler.Recompiler._field_type
    functionSourceFile: cffi.recompiler
    functionUses: 31
    functionsReached:
    - cffi.recompiler.Recompiler._field_type
    - cffi.model.qualify
    - <builtin>.isinstance
    - cffi.model.ArrayType.__init__
    - replace_with.startswith
    - replace_with.strip
    - result.count
    - result.replace
    - cffi.model.BaseTypeByIdentity.get_c_name
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 68
    functionName: cffi.model.BaseTypeByIdentity._get_items
    functionSourceFile: cffi.model
    functionUses: 12
    functionsReached:
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: name.split
    functionSourceFile: <builtin>
    functionUses: 98
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - e
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 616
    functionName: cffi.model.attach_exception_info
    functionSourceFile: cffi.model
    functionUses: 29
    functionsReached:
    - <builtin>.type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.set
    functionSourceFile: <builtin>
    functionUses: 86
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 995
    functionName: cffi.recompiler.Recompiler._add_missing_struct_unions
    functionSourceFile: cffi.recompiler
    functionUses: 16
    functionsReached:
    - cffi.cffi_opcode.CffiOp.__init__
    - c_fields.append
    - flags.append
    - cffi.recompiler.TypenameExpr.__init__
    - tp.enumfields
    - replace_with.lstrip
    - <builtin>.list
    - cffi.recompiler.StructUnionExpr.__init__
    - replace_with.startswith
    - replace_with.strip
    - <builtin>.any
    - cffi.recompiler.Recompiler._check_not_opaque
    - lst.sort
    - cffi.model.StructOrUnion.anonymous_struct_fields
    - tp.name.startswith
    - <builtin>.zip
    - cffi.recompiler.Recompiler._field_type
    - cffi.recompiler.FieldExpr.__init__
    - cffi.model.ArrayType.__init__
    - <builtin>.len
    - result.replace
    - cffi.recompiler.Recompiler._typedef_ctx
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - cffi.recompiler.Recompiler._struct_ctx
    - cffi.model.qualify
    - cffi.model.BaseTypeByIdentity.get_c_name
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cffi.recompiler.Recompiler.collect_step_tables.<lambda1>
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: lst.sort
    functionSourceFile: <builtin>
    functionUses: 28
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7ff138674c70>
    argNames:
    - self
    - what
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 278
    functionName: cffi.recompiler.Recompiler._prnt
    functionSourceFile: cffi.recompiler
    functionUses: 33
    functionsReached:
    - io.StringIO.write
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: io.StringIO.write
    functionSourceFile: io
    functionUses: 34
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - f
    - preamble
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 281
    functionName: cffi.recompiler.Recompiler.write_source_to_f
    functionSourceFile: cffi.recompiler
    functionUses: 14
    functionsReached:
    - <builtin>.open
    - cffi.recompiler.Recompiler.write_c_source_to_f
    - op.as_python_bytes
    - s.splitlines
    - s.decode
    - <builtin>.getattr
    - rep.append
    - g.readlines
    - s.encode
    - <builtin>.enumerate
    - <builtin>.max
    - io.StringIO.write
    - cffi.recompiler.Recompiler._to_py
    - os.path.dirname
    - cffi.recompiler.Recompiler._print_string_literal_in_array
    - op.as_c_expr
    - x.as_python_expr
    - <builtin>.dict
    - <builtin>.tuple
    - <builtin>.ascii
    - lines.index
    - cffi.recompiler.Recompiler._generate
    - <builtin>.type
    - cffi.recompiler.Recompiler.needs_version
    - <builtin>.len
    - cffi.recompiler.Recompiler._prnt
    - <builtin>.map
    - <builtin>.range
    - name.split
    - cffi.recompiler.Recompiler._rel_readlines
    - cffi.recompiler.Recompiler.write_py_source_to_f
    - <builtin>.set
    - <builtin>.isinstance
    - g.close
    - entry.as_c_expr
    - os.path.join
    - cffi.model.attach_exception_info
    - <builtin>.sorted
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 10
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - f
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 478
    functionName: cffi.recompiler.Recompiler.write_py_source_to_f
    functionSourceFile: cffi.recompiler
    functionUses: 15
    functionsReached:
    - io.StringIO.write
    - <builtin>.isinstance
    - op.as_python_bytes
    - cffi.recompiler.Recompiler._to_py
    - <builtin>.len
    - x.as_python_expr
    - cffi.recompiler.Recompiler._prnt
    - <builtin>.dict
    - <builtin>.tuple
    - rep.append
    - <builtin>.range
    linkageType: pythonLinkage
    raised:
    - VerificationError
    returnType: N/A
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 19
    ICount: 90
    IfCount: 13
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - f
    - preamble
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 295
    functionName: cffi.recompiler.Recompiler.write_c_source_to_f
    functionSourceFile: cffi.recompiler
    functionUses: 15
    functionsReached:
    - <builtin>.open
    - s.splitlines
    - s.decode
    - <builtin>.getattr
    - g.readlines
    - s.encode
    - <builtin>.enumerate
    - <builtin>.max
    - io.StringIO.write
    - os.path.dirname
    - cffi.recompiler.Recompiler._print_string_literal_in_array
    - op.as_c_expr
    - <builtin>.dict
    - <builtin>.ascii
    - lines.index
    - cffi.recompiler.Recompiler._generate
    - <builtin>.type
    - cffi.recompiler.Recompiler.needs_version
    - <builtin>.len
    - cffi.recompiler.Recompiler._prnt
    - <builtin>.map
    - name.split
    - cffi.recompiler.Recompiler._rel_readlines
    - <builtin>.set
    - <builtin>.isinstance
    - g.close
    - entry.as_c_expr
    - os.path.join
    - cffi.model.attach_exception_info
    - <builtin>.sorted
    linkageType: pythonLinkage
    raised:
    - VerificationError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - filename
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 289
    functionName: cffi.recompiler.Recompiler._rel_readlines
    functionSourceFile: cffi.recompiler
    functionUses: 16
    functionsReached:
    - <builtin>.open
    - os.path.dirname
    - g.close
    - os.path.join
    - g.readlines
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.dirname
    functionSourceFile: os
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.join
    functionSourceFile: os
    functionUses: 33
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.open
    functionSourceFile: <builtin>
    functionUses: 29
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: g.readlines
    functionSourceFile: <builtin>
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: g.close
    functionSourceFile: <builtin>
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: lines.index
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 6
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1311
    functionName: cffi.recompiler.Recompiler._print_string_literal_in_array
    functionSourceFile: cffi.recompiler
    functionUses: 16
    functionsReached:
    - io.StringIO.write
    - <builtin>.isinstance
    - s.splitlines
    - <builtin>.type
    - s.decode
    - <builtin>.len
    - cffi.recompiler.Recompiler._prnt
    - <builtin>.map
    - <builtin>.ascii
    - s.encode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.dict
    functionSourceFile: <builtin>
    functionUses: 23
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: op.as_c_expr
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: entry.as_c_expr
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - x
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 468
    functionName: cffi.recompiler.Recompiler._to_py
    functionSourceFile: cffi.recompiler
    functionUses: 16
    functionsReached:
    - <builtin>.isinstance
    - cffi.recompiler.Recompiler._to_py
    - <builtin>.len
    - x.as_python_expr
    - rep.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: rep.append
    functionSourceFile: <builtin>
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: x.as_python_expr
    functionSourceFile: <builtin>
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.range
    functionSourceFile: <builtin>
    functionUses: 87
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: op.as_python_bytes
    functionSourceFile: <builtin>
    functionUses: 16
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - type
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 530
    functionName: cffi.recompiler.Recompiler._gettypenum
    functionSourceFile: cffi.recompiler
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 7
    IfCount: 7
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - tp
    - fromvar
    - tovar
    - errcode
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 534
    functionName: cffi.recompiler.Recompiler._convert_funcarg_to_c
    functionSourceFile: cffi.recompiler
    functionUses: 1
    functionsReached:
    - tp.name.replace
    - io.StringIO.write
    - <builtin>.isinstance
    - tp.is_integer_type
    - cffi.recompiler.Recompiler._gettypenum
    - tp.get_c_name
    - cffi.recompiler.Recompiler.needs_version
    - cffi.recompiler.Recompiler._prnt
    - cffi.recompiler.Recompiler._convert_funcarg_to_c_ptr_or_array
    - tp.is_complex_type
    - <builtin>.max
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tp.is_complex_type
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tp.is_integer_type
    functionSourceFile: <builtin>
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tp.get_c_name
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tp.name.replace
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 8
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - tp
    - fromvar
    - tovar
    - errcode
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 586
    functionName: cffi.recompiler.Recompiler._convert_funcarg_to_c_ptr_or_array
    functionSourceFile: cffi.recompiler
    functionUses: 2
    functionsReached:
    - tp.get_c_name
    - io.StringIO.write
    - cffi.recompiler.Recompiler._prnt
    - cffi.recompiler.Recompiler._gettypenum
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - tp
    - localvars
    - freelines
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 579
    functionName: cffi.recompiler.Recompiler._extra_local_variables
    functionSourceFile: cffi.recompiler
    functionUses: 1
    functionsReached:
    - localvars.add
    - freelines.add
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: localvars.add
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: freelines.add
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 1
    IfCount: 10
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - tp
    - var
    - context
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 600
    functionName: cffi.recompiler.Recompiler._convert_expr_from_c
    functionSourceFile: cffi.recompiler
    functionUses: 1
    functionsReached:
    - tp.name.replace
    - cffi.model.qualify
    - <builtin>.isinstance
    - tp.is_complex_type
    - <builtin>.max
    - cffi.recompiler.Recompiler._gettypenum
    - tp.is_integer_type
    - totype.c_name_with_marker.replace
    - cffi.recompiler.Recompiler.needs_version
    - extra.lstrip
    - cffi.model.PointerType.__init__
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised:
    - TypeError
    - NotImplementedError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7ff138c24c10>
    argNames:
    - self
    - totype
    - quals
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 264
    functionName: cffi.model.PointerType.__init__
    functionSourceFile: cffi.model
    functionUses: 89
    functionsReached:
    - replace_with.lstrip
    - extra.lstrip
    - totype.c_name_with_marker.replace
    - cffi.model.qualify
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 635
    functionName: cffi.recompiler.Recompiler._typedef_type
    functionSourceFile: cffi.recompiler
    functionUses: 2
    functionsReached:
    - cffi.model.ArrayType.__init__
    - cffi.recompiler.Recompiler._global_type
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - global_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1178
    functionName: cffi.recompiler.Recompiler._global_type
    functionSourceFile: cffi.recompiler
    functionUses: 6
    functionsReached:
    - cffi.model.ArrayType.__init__
    - cffi.recompiler.Recompiler._global_type
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 638
    functionName: cffi.recompiler.Recompiler._generate_cpy_typedef_collecttype
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - cffi.model.BaseTypeByIdentity._get_items
    - <builtin>.getattr
    - tp.enumfields
    - replace_with.lstrip
    - replace_with.startswith
    - cffi.model.BaseFunctionType.__init__
    - replace_with.strip
    - arg._get_c_name
    - cffi.recompiler.Recompiler._typedef_type
    - cffi.recompiler.Recompiler._do_collect_type
    - cffi.recompiler.Recompiler._field_type
    - cffi.recompiler.Recompiler._global_type
    - cffi.model.ArrayType.__init__
    - cffi.model.FunctionPtrType.as_raw_function
    - result.replace
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - cffi.model.qualify
    - reprargs.append
    - cffi.model.BaseTypeByIdentity.get_c_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 641
    functionName: cffi.recompiler.Recompiler._generate_cpy_typedef_decl
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 644
    functionName: cffi.recompiler.Recompiler._typedef_ctx
    functionSourceFile: cffi.recompiler
    functionUses: 18
    functionsReached:
    - cffi.recompiler.TypenameExpr.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 648
    functionName: cffi.recompiler.Recompiler._generate_cpy_typedef_ctx
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - cffi.cffi_opcode.CffiOp.__init__
    - <builtin>.getattr
    - c_fields.append
    - flags.append
    - cffi.recompiler.TypenameExpr.__init__
    - tp.enumfields
    - replace_with.lstrip
    - <builtin>.list
    - cffi.recompiler.StructUnionExpr.__init__
    - replace_with.startswith
    - replace_with.strip
    - <builtin>.any
    - cffi.recompiler.Recompiler._typedef_type
    - cffi.recompiler.Recompiler._check_not_opaque
    - cffi.model.StructOrUnion.anonymous_struct_fields
    - <builtin>.zip
    - cffi.recompiler.Recompiler._field_type
    - cffi.recompiler.Recompiler._global_type
    - cffi.recompiler.FieldExpr.__init__
    - cffi.model.ArrayType.__init__
    - <builtin>.len
    - result.replace
    - cffi.recompiler.Recompiler._typedef_ctx
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - cffi.recompiler.Recompiler._struct_ctx
    - cffi.model.qualify
    - cffi.model.BaseTypeByIdentity.get_c_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 21
    ICount: 10
    IfCount: 14
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7ff13874b0d0>
    argNames:
    - self
    - tp
    - cname
    - approxname
    - named_ptr
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 902
    functionName: cffi.recompiler.Recompiler._struct_ctx
    functionSourceFile: cffi.recompiler
    functionUses: 20
    functionsReached:
    - cffi.cffi_opcode.CffiOp.__init__
    - c_fields.append
    - flags.append
    - tp.enumfields
    - replace_with.lstrip
    - <builtin>.list
    - cffi.recompiler.StructUnionExpr.__init__
    - replace_with.startswith
    - replace_with.strip
    - <builtin>.any
    - cffi.recompiler.Recompiler._check_not_opaque
    - cffi.model.StructOrUnion.anonymous_struct_fields
    - <builtin>.zip
    - cffi.recompiler.Recompiler._field_type
    - cffi.recompiler.FieldExpr.__init__
    - cffi.model.ArrayType.__init__
    - <builtin>.len
    - result.replace
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - cffi.model.qualify
    - cffi.model.BaseTypeByIdentity.get_c_name
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 660
    functionName: cffi.recompiler.Recompiler._generate_cpy_function_collecttype
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - cffi.model.BaseTypeByIdentity._get_items
    - <builtin>.getattr
    - tp.enumfields
    - replace_with.lstrip
    - replace_with.startswith
    - cffi.model.BaseFunctionType.__init__
    - replace_with.strip
    - arg._get_c_name
    - cffi.recompiler.Recompiler._do_collect_type
    - cffi.recompiler.Recompiler._field_type
    - cffi.model.ArrayType.__init__
    - cffi.model.FunctionPtrType.as_raw_function
    - result.replace
    - tp.as_raw_function
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - cffi.model.qualify
    - reprargs.append
    - cffi.model.BaseTypeByIdentity.get_c_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tp.as_raw_function
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 21
    ICount: 51
    IfCount: 14
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 665
    functionName: cffi.recompiler.Recompiler._generate_cpy_function_decl
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - tp.result.get_c_name
    - <builtin>.enumerate
    - <builtin>.max
    - arguments.append
    - io.StringIO.write
    - replace_with.lstrip
    - tp.is_integer_type
    - tp.get_c_name
    - cffi.recompiler.Recompiler._extra_local_variables
    - freelines.add
    - replace_with.startswith
    - replace_with.strip
    - cffi.recompiler.Recompiler._generate_cpy_constant_decl
    - cffi.recompiler.Recompiler._convert_funcarg_to_c
    - type.get_c_name
    - cffi.recompiler.Recompiler._convert_expr_from_c
    - cffi.recompiler.Recompiler._convert_funcarg_to_c_ptr_or_array
    - tp.name.replace
    - cffi.recompiler.Recompiler._gettypenum
    - <builtin>.len
    - cffi.recompiler.Recompiler.needs_version
    - result.replace
    - cffi.recompiler.Recompiler._prnt
    - <builtin>.range
    - tp.is_complex_type
    - result.count
    - <builtin>.set
    - call_arguments.append
    - cffi.recompiler.Recompiler._generate_cpy_function_decl.need_indirection
    - localvars.add
    - <builtin>.isinstance
    - cffi.recompiler.Recompiler._generate_cpy_const
    - cffi.model.qualify
    - arguments.insert
    - cffi.model.PrimitiveType.is_complex_type
    - totype.c_name_with_marker.replace
    - extra.lstrip
    - cffi.model.PointerType.__init__
    - cffi.model.BaseTypeByIdentity.get_c_name
    - <builtin>.sorted
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1097
    functionName: cffi.recompiler.Recompiler._generate_cpy_constant_decl
    functionSourceFile: cffi.recompiler
    functionUses: 1
    functionsReached:
    - io.StringIO.write
    - cffi.recompiler.Recompiler._generate_cpy_const
    - tp.is_integer_type
    - tp.get_c_name
    - cffi.recompiler.Recompiler._prnt
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: type.get_c_name
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: arguments.append
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: call_arguments.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tp.result.get_c_name
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - type
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 782
    functionName: cffi.recompiler.Recompiler._generate_cpy_function_decl.need_indirection
    functionSourceFile: cffi.recompiler
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - cffi.model.PrimitiveType.is_complex_type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 171
    functionName: cffi.model.PrimitiveType.is_complex_type
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7ff138155850>
    - <ast.Constant object at 0x7ff1381559a0>
    - <ast.Constant object at 0x7ff1381558b0>
    argNames:
    - self
    - replace_with
    - context
    - quals
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 29
    functionName: cffi.model.BaseTypeByIdentity.get_c_name
    functionSourceFile: cffi.model
    functionUses: 52
    functionsReached:
    - cffi.model.qualify
    - replace_with.startswith
    - replace_with.strip
    - result.count
    - result.replace
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised:
    - VerificationError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: arguments.insert
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 827
    functionName: cffi.recompiler.Recompiler._generate_cpy_function_ctx
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - tp.is_integer_type
    - <builtin>.len
    - cffi.cffi_opcode.CffiOp.__init__
    - tp.as_raw_function
    - cffi.recompiler.Recompiler._generate_cpy_constant_ctx
    - cffi.recompiler.GlobalExpr.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1101
    functionName: cffi.recompiler.Recompiler._generate_cpy_constant_ctx
    functionSourceFile: cffi.recompiler
    functionUses: 1
    functionsReached:
    - cffi.recompiler.GlobalExpr.__init__
    - cffi.cffi_opcode.CffiOp.__init__
    - tp.is_integer_type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - op
    - arg
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 4
    functionName: cffi.cffi_opcode.CffiOp.__init__
    functionSourceFile: ''
    functionUses: 38
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - item
    - length
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 298
    functionName: cffi.model.ArrayType.__init__
    functionSourceFile: ''
    functionUses: 100
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - tp
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 861
    functionName: cffi.recompiler.Recompiler._struct_collecttype
    functionSourceFile: cffi.recompiler
    functionUses: 2
    functionsReached:
    - cffi.model.BaseTypeByIdentity._get_items
    - <builtin>.getattr
    - tp.enumfields
    - replace_with.lstrip
    - replace_with.startswith
    - cffi.model.BaseFunctionType.__init__
    - replace_with.strip
    - arg._get_c_name
    - cffi.recompiler.Recompiler._do_collect_type
    - cffi.recompiler.Recompiler._field_type
    - cffi.model.ArrayType.__init__
    - cffi.recompiler.Recompiler._struct_collecttype
    - cffi.model.FunctionPtrType.as_raw_function
    - result.replace
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - tp.anonymous_struct_fields
    - cffi.model.qualify
    - <builtin>.isinstance
    - reprargs.append
    - cffi.model.BaseTypeByIdentity.get_c_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tp.anonymous_struct_fields
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 11
    IfCount: 3
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - tp
    - cname
    - approxname
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 868
    functionName: cffi.recompiler.Recompiler._struct_decl
    functionSourceFile: cffi.recompiler
    functionUses: 2
    functionsReached:
    - io.StringIO.write
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - <builtin>.str
    - cffi.recompiler.Recompiler._prnt
    - ftype.get_c_name
    - tp.enumfields
    - ftype.is_integer_type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ftype.is_integer_type
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ftype.get_c_name
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.str
    functionSourceFile: <builtin>
    functionUses: 85
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: flags.append
    functionSourceFile: <builtin>
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 359
    functionName: cffi.model.StructOrUnion.anonymous_struct_fields
    functionSourceFile: cffi.model
    functionUses: 21
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.zip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.any
    functionSourceFile: <builtin>
    functionUses: 22
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.list
    functionSourceFile: <builtin>
    functionUses: 91
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - location
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 988
    functionName: cffi.recompiler.Recompiler._check_not_opaque
    functionSourceFile: cffi.recompiler
    functionUses: 21
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: c_fields.append
    functionSourceFile: <builtin>
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cffi.recompiler.Recompiler._add_missing_struct_unions.<lambda1>
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tp.name.startswith
    functionSourceFile: <builtin>
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1018
    functionName: cffi.recompiler.Recompiler._generate_cpy_struct_collecttype
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - cffi.model.BaseTypeByIdentity._get_items
    - <builtin>.getattr
    - tp.enumfields
    - replace_with.lstrip
    - replace_with.startswith
    - cffi.model.BaseFunctionType.__init__
    - replace_with.strip
    - arg._get_c_name
    - cffi.recompiler.Recompiler._do_collect_type
    - cffi.recompiler.Recompiler._field_type
    - cffi.model.ArrayType.__init__
    - cffi.recompiler.Recompiler._struct_collecttype
    - cffi.model.FunctionPtrType.as_raw_function
    - result.replace
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - tp.anonymous_struct_fields
    - cffi.model.qualify
    - <builtin>.isinstance
    - reprargs.append
    - cffi.model.BaseTypeByIdentity.get_c_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - tp
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1022
    functionName: cffi.recompiler.Recompiler._struct_names
    functionSourceFile: cffi.recompiler
    functionUses: 2
    functionsReached:
    - tp.get_c_name
    - cname.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cname.replace
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1029
    functionName: cffi.recompiler.Recompiler._generate_cpy_struct_decl
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - io.StringIO.write
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - cname.replace
    - tp.get_c_name
    - <builtin>.str
    - cffi.recompiler.Recompiler._struct_decl
    - cffi.recompiler.Recompiler._prnt
    - ftype.get_c_name
    - cffi.recompiler.Recompiler._struct_names
    - tp.enumfields
    - ftype.is_integer_type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1033
    functionName: cffi.recompiler.Recompiler._generate_cpy_struct_ctx
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - cname.replace
    - cffi.cffi_opcode.CffiOp.__init__
    - c_fields.append
    - flags.append
    - cffi.recompiler.Recompiler._struct_names
    - tp.enumfields
    - replace_with.lstrip
    - <builtin>.list
    - cffi.recompiler.StructUnionExpr.__init__
    - tp.get_c_name
    - replace_with.startswith
    - replace_with.strip
    - <builtin>.any
    - cffi.recompiler.Recompiler._check_not_opaque
    - cffi.model.StructOrUnion.anonymous_struct_fields
    - <builtin>.zip
    - cffi.recompiler.Recompiler._field_type
    - cffi.recompiler.FieldExpr.__init__
    - cffi.model.ArrayType.__init__
    - <builtin>.len
    - result.replace
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - cffi.recompiler.Recompiler._struct_ctx
    - cffi.model.qualify
    - cffi.model.BaseTypeByIdentity.get_c_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 1041
    functionName: cffi.recompiler.Recompiler._generate_cpy_anonymous_collecttype
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - cffi.model.BaseTypeByIdentity._get_items
    - <builtin>.getattr
    - tp.enumfields
    - replace_with.lstrip
    - replace_with.startswith
    - cffi.model.BaseFunctionType.__init__
    - replace_with.strip
    - arg._get_c_name
    - cffi.recompiler.Recompiler._generate_cpy_enum_collecttype
    - cffi.recompiler.Recompiler._do_collect_type
    - cffi.recompiler.Recompiler._field_type
    - cffi.model.ArrayType.__init__
    - cffi.recompiler.Recompiler._struct_collecttype
    - cffi.model.FunctionPtrType.as_raw_function
    - result.replace
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - tp.anonymous_struct_fields
    - cffi.model.qualify
    - reprargs.append
    - cffi.model.BaseTypeByIdentity.get_c_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1117
    functionName: cffi.recompiler.Recompiler._generate_cpy_enum_collecttype
    functionSourceFile: cffi.recompiler
    functionUses: 1
    functionsReached:
    - cffi.model.BaseTypeByIdentity._get_items
    - <builtin>.getattr
    - tp.enumfields
    - replace_with.lstrip
    - replace_with.startswith
    - cffi.model.BaseFunctionType.__init__
    - replace_with.strip
    - arg._get_c_name
    - cffi.recompiler.Recompiler._do_collect_type
    - cffi.recompiler.Recompiler._field_type
    - cffi.model.ArrayType.__init__
    - cffi.model.FunctionPtrType.as_raw_function
    - result.replace
    - result.count
    - cffi.model.qualify
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - reprargs.append
    - cffi.model.BaseTypeByIdentity.get_c_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1047
    functionName: cffi.recompiler.Recompiler._generate_cpy_anonymous_decl
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - io.StringIO.write
    - cffi.recompiler.Recompiler._generate_cpy_const
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - tp.get_c_name
    - <builtin>.str
    - cffi.recompiler.Recompiler._struct_decl
    - cffi.recompiler.Recompiler._generate_cpy_enum_decl
    - cffi.recompiler.Recompiler._prnt
    - ftype.get_c_name
    - tp.enumfields
    - ftype.is_integer_type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7ff137a49ac0>
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1120
    functionName: cffi.recompiler.Recompiler._generate_cpy_enum_decl
    functionSourceFile: cffi.recompiler
    functionUses: 1
    functionsReached:
    - tp.get_c_name
    - io.StringIO.write
    - cffi.recompiler.Recompiler._generate_cpy_const
    - cffi.recompiler.Recompiler._prnt
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 1053
    functionName: cffi.recompiler.Recompiler._generate_cpy_anonymous_ctx
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.api.FFI.cast
    - flags.append
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - replace_with.startswith
    - <builtin>.any
    - newnames.append
    - <builtin>.reversed
    - cffi.recompiler.Recompiler._check_not_opaque
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - cffi.recompiler.Recompiler._field_type
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - result.count
    - s.lower
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - cffi.model.EnumType.build_baseinttype
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.recompiler.EnumExpr.__init__
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - ctn.discard
    - _r_line_directive.sub
    - fldnames.append
    - tp.enumfields
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - cffi.recompiler.StructUnionExpr.__init__
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - result.replace
    - cffi.cparser.Parser._get_type_and_quals
    - name.startswith
    - cffi.cparser.Parser._extract_quals
    - cffi.cparser._get_parser
    - <builtin>.range
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - cffi.recompiler.Recompiler._struct_ctx
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - c_fields.append
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - tp.check_not_partial
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - replace_with.strip
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.model.EnumType.check_not_partial
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - cffi.recompiler.FieldExpr.__init__
    - tp.build_baseinttype
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - _cffi_backend.cast
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - cffi.recompiler.Recompiler._enum_ctx
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - cffi.model.BaseTypeByIdentity.get_c_name
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - cffi.cffi_opcode.CffiOp.__init__
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.StructOrUnion.anonymous_struct_fields
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - cffi.recompiler.GlobalExpr.__init__
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - cname
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 1124
    functionName: cffi.recompiler.Recompiler._enum_ctx
    functionSourceFile: cffi.recompiler
    functionUses: 2
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.api.FFI.cast
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - cffi.model.EnumType.build_baseinttype
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.recompiler.EnumExpr.__init__
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - ctn.discard
    - _r_line_directive.sub
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - name.startswith
    - cffi.cparser.Parser._extract_quals
    - cffi.cparser._get_parser
    - <builtin>.range
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - tp.check_not_partial
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.model.EnumType.check_not_partial
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - tp.build_baseinttype
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - _cffi_backend.cast
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - cffi.cffi_opcode.CffiOp.__init__
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - cffi.recompiler.GlobalExpr.__init__
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 14
    IfCount: 4
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7ff137a539d0>
    - <ast.Constant object at 0x7ff137a53a00>
    - <ast.Constant object at 0x7ff137a53a30>
    argNames:
    - self
    - is_int
    - name
    - tp
    - category
    - check_value
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1062
    functionName: cffi.recompiler.Recompiler._generate_cpy_const
    functionSourceFile: cffi.recompiler
    functionUses: 5
    functionsReached:
    - tp.get_c_name
    - io.StringIO.write
    - cffi.recompiler.Recompiler._prnt
    linkageType: pythonLinkage
    raised:
    - VerificationError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1092
    functionName: cffi.recompiler.Recompiler._generate_cpy_constant_collecttype
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - cffi.model.BaseTypeByIdentity._get_items
    - <builtin>.getattr
    - tp.enumfields
    - replace_with.lstrip
    - tp.is_integer_type
    - replace_with.startswith
    - cffi.model.BaseFunctionType.__init__
    - replace_with.strip
    - arg._get_c_name
    - cffi.recompiler.Recompiler._do_collect_type
    - cffi.recompiler.Recompiler._field_type
    - cffi.model.ArrayType.__init__
    - cffi.model.FunctionPtrType.as_raw_function
    - result.replace
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - cffi.model.qualify
    - reprargs.append
    - cffi.model.BaseTypeByIdentity.get_c_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tp.check_not_partial
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.zip
    functionSourceFile: <builtin>
    functionUses: 86
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tp.build_baseinttype
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - cdecl
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 213
    functionName: cffi.api.FFI.sizeof
    functionSourceFile: cffi.api
    functionUses: 50
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.EnumType.check_not_partial
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - cdecl
    - source
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 293
    functionName: cffi.api.FFI.cast
    functionSourceFile: cffi.api
    functionUses: 7
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.EnumType.check_not_partial
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - _cffi_backend.cast
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.int
    functionSourceFile: <builtin>
    functionUses: 86
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 1145
    functionName: cffi.recompiler.Recompiler._generate_cpy_enum_ctx
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.api.FFI.cast
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - cffi.model.EnumType.build_baseinttype
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.recompiler.EnumExpr.__init__
    - cffi.model.ArrayType.build_backend_type
    - cffi.model.StructOrUnion.__init__
    - ctn.discard
    - _r_line_directive.sub
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - name.startswith
    - cffi.cparser.Parser._extract_quals
    - cffi.cparser._get_parser
    - <builtin>.range
    - cffi.cparser._preprocess
    - line.strip
    - name.split
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - tp.check_not_partial
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - match.group
    - cffi.model.RawFunctionType.as_function_pointer
    - cffi.model.EnumType.check_not_partial
    - re.match
    - cffi.cparser.Parser._declare
    - _r_define.finditer
    - parts.append
    - tp.build_baseinttype
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - _cffi_backend.cast
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - cffi.recompiler.Recompiler._enum_ctx
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - tp._get_c_name
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - cffi.cffi_opcode.CffiOp.__init__
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - cffi.recompiler.GlobalExpr.__init__
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tp._get_c_name
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1151
    functionName: cffi.recompiler.Recompiler._generate_cpy_macro_collecttype
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1154
    functionName: cffi.recompiler.Recompiler._generate_cpy_macro_decl
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - tp.get_c_name
    - io.StringIO.write
    - cffi.recompiler.Recompiler._generate_cpy_const
    - cffi.recompiler.Recompiler._prnt
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1161
    functionName: cffi.recompiler.Recompiler._generate_cpy_macro_ctx
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - cffi.recompiler.GlobalExpr.__init__
    - cffi.cffi_opcode.CffiOp.__init__
    linkageType: pythonLinkage
    raised:
    - VerificationError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1187
    functionName: cffi.recompiler.Recompiler._generate_cpy_variable_collecttype
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - cffi.model.BaseTypeByIdentity._get_items
    - <builtin>.getattr
    - tp.enumfields
    - replace_with.lstrip
    - replace_with.startswith
    - cffi.model.BaseFunctionType.__init__
    - replace_with.strip
    - arg._get_c_name
    - cffi.recompiler.Recompiler._do_collect_type
    - cffi.recompiler.Recompiler._field_type
    - cffi.recompiler.Recompiler._global_type
    - cffi.model.ArrayType.__init__
    - cffi.model.FunctionPtrType.as_raw_function
    - result.replace
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - cffi.model.qualify
    - reprargs.append
    - cffi.model.BaseTypeByIdentity.get_c_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 5
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1190
    functionName: cffi.recompiler.Recompiler._generate_cpy_variable_decl
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - io.StringIO.write
    - cffi.recompiler.Recompiler._global_type
    - cffi.model.qualify
    - <builtin>.isinstance
    - cffi.model.ArrayType.__init__
    - replace_with.startswith
    - replace_with.strip
    - result.count
    - result.replace
    - cffi.recompiler.Recompiler._prnt
    - cffi.model.BaseTypeByIdentity.get_c_name
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1213
    functionName: cffi.recompiler.Recompiler._generate_cpy_variable_ctx
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - cffi.recompiler.Recompiler._global_type
    - <builtin>.isinstance
    - cffi.model.ArrayType.__init__
    - cffi.cffi_opcode.CffiOp.__init__
    - cffi.recompiler.GlobalExpr.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1226
    functionName: cffi.recompiler.Recompiler._generate_cpy_extern_python_collecttype
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - cffi.model.BaseTypeByIdentity._get_items
    - <builtin>.getattr
    - tp.enumfields
    - replace_with.lstrip
    - replace_with.startswith
    - cffi.model.BaseFunctionType.__init__
    - replace_with.strip
    - arg._get_c_name
    - cffi.recompiler.Recompiler._do_collect_type
    - cffi.recompiler.Recompiler._field_type
    - cffi.model.ArrayType.__init__
    - cffi.model.FunctionPtrType.as_raw_function
    - result.replace
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - cffi.model.qualify
    - reprargs.append
    - cffi.model.BaseTypeByIdentity.get_c_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 13
    IfCount: 6
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    - tag_and_space
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 1233
    functionName: cffi.recompiler.Recompiler._extern_python_decl
    functionSourceFile: cffi.recompiler
    functionUses: 3
    functionsReached:
    - tp.result.get_c_name
    - <builtin>.enumerate
    - <builtin>.max
    - arguments.append
    - io.StringIO.write
    - replace_with.lstrip
    - cffi.recompiler.Recompiler._extern_python_decl.may_need_128_bits
    - replace_with.startswith
    - replace_with.strip
    - <builtin>.len
    - result.replace
    - cffi.recompiler.Recompiler._prnt
    - result.count
    - cffi.model.qualify
    - <builtin>.isinstance
    - totype.c_name_with_marker.replace
    - extra.lstrip
    - cffi.model.PointerType.__init__
    - cffi.model.BaseTypeByIdentity.get_c_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - tp
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1258
    functionName: cffi.recompiler.Recompiler._extern_python_decl.may_need_128_bits
    functionSourceFile: cffi.recompiler
    functionUses: 4
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1287
    functionName: cffi.recompiler.Recompiler._generate_cpy_extern_python_decl
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - tp.result.get_c_name
    - cffi.recompiler.Recompiler._extern_python_decl
    - <builtin>.enumerate
    - <builtin>.max
    - arguments.append
    - io.StringIO.write
    - replace_with.lstrip
    - cffi.recompiler.Recompiler._extern_python_decl.may_need_128_bits
    - replace_with.startswith
    - replace_with.strip
    - <builtin>.len
    - result.replace
    - cffi.recompiler.Recompiler._prnt
    - result.count
    - cffi.model.qualify
    - <builtin>.isinstance
    - totype.c_name_with_marker.replace
    - extra.lstrip
    - cffi.model.PointerType.__init__
    - cffi.model.BaseTypeByIdentity.get_c_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1290
    functionName: cffi.recompiler.Recompiler._generate_cpy_dllexport_python_decl
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - tp.result.get_c_name
    - cffi.recompiler.Recompiler._extern_python_decl
    - <builtin>.enumerate
    - <builtin>.max
    - arguments.append
    - io.StringIO.write
    - replace_with.lstrip
    - cffi.recompiler.Recompiler._extern_python_decl.may_need_128_bits
    - replace_with.startswith
    - replace_with.strip
    - <builtin>.len
    - result.replace
    - cffi.recompiler.Recompiler._prnt
    - result.count
    - cffi.model.qualify
    - <builtin>.isinstance
    - totype.c_name_with_marker.replace
    - extra.lstrip
    - cffi.model.PointerType.__init__
    - cffi.model.BaseTypeByIdentity.get_c_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 1293
    functionName: cffi.recompiler.Recompiler._generate_cpy_extern_python_plus_c_decl
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - tp.result.get_c_name
    - cffi.recompiler.Recompiler._extern_python_decl
    - <builtin>.enumerate
    - <builtin>.max
    - arguments.append
    - io.StringIO.write
    - replace_with.lstrip
    - cffi.recompiler.Recompiler._extern_python_decl.may_need_128_bits
    - replace_with.startswith
    - replace_with.strip
    - <builtin>.len
    - result.replace
    - cffi.recompiler.Recompiler._prnt
    - result.count
    - cffi.model.qualify
    - <builtin>.isinstance
    - totype.c_name_with_marker.replace
    - extra.lstrip
    - cffi.model.PointerType.__init__
    - cffi.model.BaseTypeByIdentity.get_c_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1296
    functionName: cffi.recompiler.Recompiler._generate_cpy_extern_python_ctx
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - cffi.recompiler.GlobalExpr.__init__
    - cffi.cffi_opcode.CffiOp.__init__
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    - VerificationError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: s.encode
    functionSourceFile: <builtin>
    functionUses: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: s.decode
    functionSourceFile: <builtin>
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: s.splitlines
    functionSourceFile: <builtin>
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.type
    functionSourceFile: <builtin>
    functionUses: 48
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.map
    functionSourceFile: <builtin>
    functionUses: 18
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.ascii
    functionSourceFile: <builtin>
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - index
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1341
    functionName: cffi.recompiler.Recompiler._emit_bytecode_VoidType
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - cffi.cffi_opcode.CffiOp.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - index
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1344
    functionName: cffi.recompiler.Recompiler._emit_bytecode_PrimitiveType
    functionSourceFile: cffi.recompiler
    functionUses: 1
    functionsReached:
    - cffi.cffi_opcode.CffiOp.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - index
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1348
    functionName: cffi.recompiler.Recompiler._emit_bytecode_UnknownIntegerType
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - cffi.cffi_opcode.CffiOp.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - index
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1354
    functionName: cffi.recompiler.Recompiler._emit_bytecode_UnknownFloatType
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - cffi.cffi_opcode.CffiOp.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - index
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1360
    functionName: cffi.recompiler.Recompiler._emit_bytecode_RawFunctionType
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - cffi.cffi_opcode.CffiOp.__init__
    - cffi.recompiler.Recompiler._emit_bytecode_PrimitiveType
    - <builtin>.int
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - index
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1379
    functionName: cffi.recompiler.Recompiler._emit_bytecode_PointerType
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - cffi.cffi_opcode.CffiOp.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - index
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1385
    functionName: cffi.recompiler.Recompiler._emit_bytecode_FunctionPtrType
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - cffi.cffi_opcode.CffiOp.__init__
    - tp.as_raw_function
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - index
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1389
    functionName: cffi.recompiler.Recompiler._emit_bytecode_ArrayType
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - <builtin>.str
    - cffi.cffi_opcode.CffiOp.__init__
    linkageType: pythonLinkage
    raised:
    - VerificationError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - index
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1403
    functionName: cffi.recompiler.Recompiler._emit_bytecode_StructType
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - cffi.cffi_opcode.CffiOp.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - index
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1408
    functionName: cffi.recompiler.Recompiler._emit_bytecode_EnumType
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - cffi.cffi_opcode.CffiOp.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1417
    functionName: cffi.recompiler.NativeIO.write
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - s.encode
    - <builtin>.super
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.super
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 9
    IfCount: 3
    argCount: 5
    argDefaultValues: []
    argNames:
    - ffi
    - module_name
    - preamble
    - target_file
    - verbose
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 1422
    functionName: cffi.recompiler._make_c_or_py_source
    functionSourceFile: cffi.recompiler
    functionUses: 13
    functionsReached:
    - <builtin>.open
    - flags.append
    - s.encode
    - <builtin>.enumerate
    - io.StringIO.write
    - replace_with.startswith
    - <builtin>.any
    - <builtin>.dict
    - cffi.recompiler.Recompiler._check_not_opaque
    - os.getpid
    - lst.sort
    - tp.name.startswith
    - <builtin>.zip
    - cffi.recompiler.Recompiler._field_type
    - cffi.model.ArrayType.__init__
    - <builtin>.len
    - cffi.recompiler.Recompiler.needs_version
    - os.unlink
    - io.StringIO
    - cffi.recompiler.Recompiler._prnt
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - g.close
    - cffi.model.attach_exception_info
    - cffi.recompiler.Recompiler.collect_step_tables
    - g.readlines
    - tp.enumfields
    - replace_with.lstrip
    - cffi.recompiler.StructUnionExpr.__init__
    - cffi.recompiler.Recompiler._to_py
    - op.as_c_expr
    - x.as_python_expr
    - <builtin>.ascii
    - lines.index
    - cffi.recompiler.Recompiler._generate
    - <builtin>.type
    - result.replace
    - cffi.recompiler.Recompiler._typedef_ctx
    - io.StringIO.getvalue
    - <builtin>.range
    - name.split
    - cffi.model.qualify
    - cffi.recompiler.Recompiler._struct_ctx
    - cffi.recompiler.Recompiler.write_source_to_f
    - cffi.recompiler.Recompiler.write_c_source_to_f
    - s.decode
    - c_fields.append
    - rep.append
    - os.path.dirname
    - replace_with.strip
    - f1.write
    - cffi.recompiler.FieldExpr.__init__
    - cffi.recompiler.Recompiler.write_py_source_to_f
    - cffi.recompiler.Recompiler.__init__
    - cffi.model.BaseTypeByIdentity.get_c_name
    - <builtin>.sorted
    - op.as_python_bytes
    - s.splitlines
    - cffi.cffi_opcode.CffiOp.__init__
    - <builtin>.getattr
    - <builtin>.print
    - cffi.recompiler.TypenameExpr.__init__
    - os.rename
    - <builtin>.max
    - <builtin>.list
    - cffi.recompiler.Recompiler._print_string_literal_in_array
    - <builtin>.tuple
    - cffi.model.StructOrUnion.anonymous_struct_fields
    - <builtin>.map
    - f1.read
    - cffi.recompiler.Recompiler._rel_readlines
    - <builtin>.set
    - cffi.recompiler.Recompiler.collect_type_table
    - cffi.recompiler.Recompiler._add_missing_struct_unions
    - entry.as_c_expr
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.print
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: io.StringIO
    functionSourceFile: io
    functionUses: 23
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: io.StringIO.getvalue
    functionSourceFile: io
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: f1.read
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.getpid
    functionSourceFile: os
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: f1.write
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.rename
    functionSourceFile: os
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.unlink
    functionSourceFile: os
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7ff137be7d00>
    argNames:
    - ffi
    - module_name
    - preamble
    - target_c_file
    - verbose
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 1450
    functionName: cffi.recompiler.make_c_source
    functionSourceFile: cffi.recompiler
    functionUses: 8
    functionsReached:
    - <builtin>.open
    - flags.append
    - s.encode
    - <builtin>.enumerate
    - io.StringIO.write
    - replace_with.startswith
    - <builtin>.any
    - <builtin>.dict
    - cffi.recompiler.Recompiler._check_not_opaque
    - os.getpid
    - lst.sort
    - tp.name.startswith
    - <builtin>.zip
    - cffi.recompiler.Recompiler._field_type
    - cffi.model.ArrayType.__init__
    - <builtin>.len
    - cffi.recompiler.Recompiler.needs_version
    - os.unlink
    - io.StringIO
    - cffi.recompiler.Recompiler._prnt
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - g.close
    - cffi.model.attach_exception_info
    - cffi.recompiler.Recompiler.collect_step_tables
    - g.readlines
    - tp.enumfields
    - replace_with.lstrip
    - cffi.recompiler.StructUnionExpr.__init__
    - cffi.recompiler.Recompiler._to_py
    - op.as_c_expr
    - x.as_python_expr
    - <builtin>.ascii
    - lines.index
    - cffi.recompiler.Recompiler._generate
    - <builtin>.type
    - result.replace
    - cffi.recompiler.Recompiler._typedef_ctx
    - io.StringIO.getvalue
    - <builtin>.range
    - name.split
    - cffi.model.qualify
    - cffi.recompiler.Recompiler._struct_ctx
    - cffi.recompiler.Recompiler.write_source_to_f
    - cffi.recompiler.Recompiler.write_c_source_to_f
    - s.decode
    - c_fields.append
    - rep.append
    - os.path.dirname
    - replace_with.strip
    - f1.write
    - cffi.recompiler.FieldExpr.__init__
    - cffi.recompiler.Recompiler.write_py_source_to_f
    - cffi.recompiler.Recompiler.__init__
    - cffi.model.BaseTypeByIdentity.get_c_name
    - <builtin>.sorted
    - op.as_python_bytes
    - s.splitlines
    - cffi.cffi_opcode.CffiOp.__init__
    - <builtin>.getattr
    - <builtin>.print
    - cffi.recompiler.TypenameExpr.__init__
    - os.rename
    - <builtin>.max
    - <builtin>.list
    - cffi.recompiler.Recompiler._print_string_literal_in_array
    - <builtin>.tuple
    - cffi.model.StructOrUnion.anonymous_struct_fields
    - cffi.recompiler._make_c_or_py_source
    - <builtin>.map
    - f1.read
    - cffi.recompiler.Recompiler._rel_readlines
    - <builtin>.set
    - cffi.recompiler.Recompiler.collect_type_table
    - cffi.recompiler.Recompiler._add_missing_struct_unions
    - entry.as_c_expr
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7ff137be7910>
    argNames:
    - ffi
    - module_name
    - target_py_file
    - verbose
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 1455
    functionName: cffi.recompiler.make_py_source
    functionSourceFile: cffi.recompiler
    functionUses: 9
    functionsReached:
    - <builtin>.open
    - flags.append
    - s.encode
    - <builtin>.enumerate
    - io.StringIO.write
    - replace_with.startswith
    - <builtin>.any
    - <builtin>.dict
    - cffi.recompiler.Recompiler._check_not_opaque
    - os.getpid
    - lst.sort
    - tp.name.startswith
    - <builtin>.zip
    - cffi.recompiler.Recompiler._field_type
    - cffi.model.ArrayType.__init__
    - <builtin>.len
    - cffi.recompiler.Recompiler.needs_version
    - os.unlink
    - io.StringIO
    - cffi.recompiler.Recompiler._prnt
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - g.close
    - cffi.model.attach_exception_info
    - cffi.recompiler.Recompiler.collect_step_tables
    - g.readlines
    - tp.enumfields
    - replace_with.lstrip
    - cffi.recompiler.StructUnionExpr.__init__
    - cffi.recompiler.Recompiler._to_py
    - op.as_c_expr
    - x.as_python_expr
    - <builtin>.ascii
    - lines.index
    - cffi.recompiler.Recompiler._generate
    - <builtin>.type
    - result.replace
    - cffi.recompiler.Recompiler._typedef_ctx
    - io.StringIO.getvalue
    - <builtin>.range
    - name.split
    - cffi.model.qualify
    - cffi.recompiler.Recompiler._struct_ctx
    - cffi.recompiler.Recompiler.write_source_to_f
    - cffi.recompiler.Recompiler.write_c_source_to_f
    - s.decode
    - c_fields.append
    - rep.append
    - os.path.dirname
    - replace_with.strip
    - f1.write
    - cffi.recompiler.FieldExpr.__init__
    - cffi.recompiler.Recompiler.write_py_source_to_f
    - cffi.recompiler.Recompiler.__init__
    - cffi.model.BaseTypeByIdentity.get_c_name
    - <builtin>.sorted
    - op.as_python_bytes
    - s.splitlines
    - cffi.cffi_opcode.CffiOp.__init__
    - <builtin>.getattr
    - <builtin>.print
    - cffi.recompiler.TypenameExpr.__init__
    - os.rename
    - <builtin>.max
    - <builtin>.list
    - cffi.recompiler.Recompiler._print_string_literal_in_array
    - <builtin>.tuple
    - cffi.model.StructOrUnion.anonymous_struct_fields
    - cffi.recompiler._make_c_or_py_source
    - <builtin>.map
    - f1.read
    - cffi.recompiler.Recompiler._rel_readlines
    - <builtin>.set
    - cffi.recompiler.Recompiler.collect_type_table
    - cffi.recompiler.Recompiler._add_missing_struct_unions
    - entry.as_c_expr
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - outputdir
    - modname
    - extension
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1459
    functionName: cffi.recompiler._modname_to_file
    functionSourceFile: cffi.recompiler
    functionUses: 6
    functionsReached:
    - modname.split
    - os.makedirs
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: modname.split
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.makedirs
    functionSourceFile: os
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - patchlist
    - cls
    - name
    - new_meth
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1473
    functionName: cffi.recompiler._patch_meth
    functionSourceFile: cffi.recompiler
    functionUses: 8
    functionsReached:
    - patchlist.append
    - <builtin>.setattr
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: patchlist.append
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.setattr
    functionSourceFile: <builtin>
    functionUses: 26
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - patchlist
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1479
    functionName: cffi.recompiler._unpatch_meths
    functionSourceFile: cffi.recompiler
    functionUses: 6
    functionsReached:
    - <builtin>.reversed
    - <builtin>.setattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.reversed
    functionSourceFile: <builtin>
    functionUses: 74
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - patchlist
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1483
    functionName: cffi.recompiler._patch_for_embedding
    functionSourceFile: cffi.recompiler
    functionUses: 6
    functionsReached:
    - cffi.recompiler._patch_meth
    - <builtin>.setattr
    - patchlist.append
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cffi.recompiler._patch_for_embedding.<lambda1>
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwds
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1493
    functionName: cffi.recompiler._patch_for_embedding.my_link_shared_object
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached:
    - <builtin>.list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - patchlist
    - target
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1503
    functionName: cffi.recompiler._patch_for_target
    functionSourceFile: cffi.recompiler
    functionUses: 6
    functionsReached:
    - patchlist.append
    - cffi.recompiler._patch_meth
    - <builtin>.setattr
    - <builtin>.getattr
    - target.endswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: target.endswith
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cffi.recompiler._patch_for_target.<lambda1>
    functionSourceFile: cffi.recompiler
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 15
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 22
    ICount: 8
    IfCount: 15
    argCount: 12
    argDefaultValues:
    - <ast.Constant object at 0x7ff137c03940>
    - <ast.Constant object at 0x7ff137c03910>
    - <ast.Constant object at 0x7ff137c038e0>
    - <ast.Constant object at 0x7ff137c038b0>
    - <ast.Constant object at 0x7ff137c03880>
    - <ast.Constant object at 0x7ff137c03850>
    - <ast.Constant object at 0x7ff137c03820>
    - <ast.Constant object at 0x7ff137c037f0>
    argNames:
    - ffi
    - module_name
    - preamble
    - tmpdir
    - call_c_compiler
    - c_file
    - source_extension
    - extradir
    - compiler_verbose
    - target
    - debug
    - kwds
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 1520
    functionName: cffi.recompiler.recompile
    functionSourceFile: cffi.recompiler
    functionUses: 5
    functionsReached:
    - <builtin>.open
    - cffi.recompiler._patch_for_target
    - flags.append
    - s.encode
    - cffi.ffiplatform._build
    - <builtin>.enumerate
    - io.StringIO.write
    - kwds.get
    - replace_with.startswith
    - <builtin>.any
    - <builtin>.reversed
    - <builtin>.dict
    - cffi.recompiler.Recompiler._check_not_opaque
    - os.getpid
    - lst.sort
    - tp.name.startswith
    - os.environ.copy
    - <builtin>.zip
    - cffi.ffiplatform.get_extension
    - cffi.recompiler.Recompiler._field_type
    - allsources.append
    - cffi.model.ArrayType.__init__
    - <builtin>.len
    - cffi.recompiler.Recompiler.needs_version
    - os.unlink
    - io.StringIO
    - cffi.recompiler.Recompiler._prnt
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - g.close
    - os.environ.get
    - saved_environ.items
    - distutils.core.Distribution
    - distutils.core.Distribution.parse_config_files
    - cffi.model.attach_exception_info
    - distutils.log.set_verbosity
    - os.makedirs
    - <builtin>.setattr
    - cffi.recompiler.Recompiler.collect_step_tables
    - module_name.encode
    - g.readlines
    - tp.enumfields
    - os.chdir
    - cffi.api.FFI._apply_embedding_fix.ensure
    - replace_with.lstrip
    - cffi.recompiler.StructUnionExpr.__init__
    - cffi.recompiler.Recompiler._to_py
    - cffi.ffiplatform.compile
    - op.as_c_expr
    - x.as_python_expr
    - os.getcwd
    - distutils.core.Extension
    - <builtin>.ascii
    - lines.index
    - cffi.recompiler.Recompiler._generate
    - <builtin>.type
    - lst.append
    - result.replace
    - cffi.recompiler.Recompiler._typedef_ctx
    - io.StringIO.getvalue
    - cffi.ffiplatform._hack_at_distutils
    - <builtin>.range
    - name.split
    - cffi.model.qualify
    - cffi.recompiler.Recompiler._struct_ctx
    - cffi.recompiler.Recompiler.write_source_to_f
    - os.path.abspath
    - distutils.core.Distribution.get_option_dict
    - cffi.recompiler.Recompiler.write_c_source_to_f
    - s.decode
    - c_fields.append
    - rep.append
    - distutils.sysconfig.get_config_var
    - os.path.dirname
    - replace_with.strip
    - f1.write
    - sysconfig.get_config_var
    - cffi.recompiler.FieldExpr.__init__
    - cffi.recompiler._patch_for_embedding
    - kwds.setdefault
    - cffi.recompiler.Recompiler.write_py_source_to_f
    - cffi.recompiler.make_py_source
    - cffi.recompiler.Recompiler.__init__
    - cffi.recompiler.make_c_source
    - distutils.log.set_threshold
    - cffi.model.BaseTypeByIdentity.get_c_name
    - <builtin>.sorted
    - cffi.api.FFI._apply_windows_unicode
    - op.as_python_bytes
    - s.splitlines
    - cffi.recompiler._patch_meth
    - cffi.cffi_opcode.CffiOp.__init__
    - <builtin>.getattr
    - <builtin>.print
    - cffi.recompiler.TypenameExpr.__init__
    - os.rename
    - <builtin>.max
    - <builtin>.list
    - distutils.core.Distribution.run_command
    - distutils.core.Distribution.get_command_obj
    - cffi.recompiler.Recompiler._print_string_literal_in_array
    - os.path.normpath
    - modname.split
    - cffi.recompiler._unpatch_meths
    - <builtin>.tuple
    - cffi.model.StructOrUnion.anonymous_struct_fields
    - cffi.recompiler._modname_to_file
    - target.endswith
    - cffi.recompiler._make_c_or_py_source
    - <builtin>.map
    - f1.read
    - cffi.recompiler.Recompiler._rel_readlines
    - <builtin>.set
    - patchlist.append
    - <builtin>.hasattr
    - cffi.recompiler.Recompiler.collect_type_table
    - cffi.api.FFI._apply_embedding_fix
    - cffi.recompiler.Recompiler._add_missing_struct_unions
    - entry.as_c_expr
    - cmd_obj.get_outputs
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: module_name.encode
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwds
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 579
    functionName: cffi.api.FFI._apply_windows_unicode
    functionSourceFile: cffi.api
    functionUses: 7
    functionsReached:
    - <builtin>.list
    - <builtin>.isinstance
    - kwds.get
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 16
    ICount: 5
    IfCount: 11
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwds
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 587
    functionName: cffi.api.FFI._apply_embedding_fix
    functionSourceFile: cffi.api
    functionUses: 6
    functionsReached:
    - distutils.sysconfig.get_config_var
    - <builtin>.hasattr
    - lst.append
    - os.path.join
    - kwds.setdefault
    - sysconfig.get_config_var
    - cffi.api.FFI._apply_embedding_fix.ensure
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Tuple object at 0x7ff138d7eaf0>
    argNames:
    - srcfilename
    - modname
    - sources
    - kwds
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 8
    functionName: cffi.ffiplatform.get_extension
    functionSourceFile: cffi.ffiplatform
    functionUses: 11
    functionsReached:
    - cffi.ffiplatform._hack_at_distutils
    - allsources.append
    - distutils.core.Extension
    - os.path.normpath
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.getcwd
    functionSourceFile: os
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.abspath
    functionSourceFile: os
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.chdir
    functionSourceFile: os
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7ff138db6dc0>
    - <ast.Constant object at 0x7ff138db6220>
    argNames:
    - tmpdir
    - ext
    - compiler_verbose
    - debug
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 16
    functionName: cffi.ffiplatform.compile
    functionSourceFile: cffi.ffiplatform
    functionUses: 10
    functionsReached:
    - distutils.core.Distribution.run_command
    - distutils.core.Distribution.get_command_obj
    - distutils.log.set_threshold
    - os.path.abspath
    - os.environ.get
    - saved_environ.items
    - distutils.core.Distribution
    - cmd_obj.get_outputs
    - distutils.core.Distribution.parse_config_files
    - distutils.log.set_verbosity
    - cffi.ffiplatform._hack_at_distutils
    - cffi.ffiplatform._build
    - os.environ.copy
    - distutils.core.Distribution.get_option_dict
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: cffi.cffi_opcode
    functionSourceFile: cffi.cffi_opcode
    functionUses: 0
    functionsReached:
    - <builtin>.list
    - <builtin>.isinstance
    - <builtin>.globals
    - _name.startswith
    - <builtin>.dict
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 8
    functionName: cffi.cffi_opcode.CffiOp.as_c_expr
    functionSourceFile: cffi.cffi_opcode
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 15
    functionName: cffi.cffi_opcode.CffiOp.as_python_bytes
    functionSourceFile: cffi.cffi_opcode
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - cffi.cffi_opcode.format_four_bytes
    - <builtin>.int
    linkageType: pythonLinkage
    raised:
    - OverflowError
    - VerificationError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 26
    functionName: cffi.cffi_opcode.CffiOp.__str__
    functionSourceFile: cffi.cffi_opcode
    functionUses: 0
    functionsReached:
    - CLASS_NAME.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: CLASS_NAME.get
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.globals
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _name.startswith
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cffi
    functionSourceFile: cffi
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: cffi.api
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - <builtin>.object
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: cffi.api.<lambda1>
    functionSourceFile: cffi.api
    functionUses: 2
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.object
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.hasattr
    functionSourceFile: <builtin>
    functionUses: 91
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _dummy_thread.allocate_lock
    functionSourceFile: _dummy_thread
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dummy_thread.allocate_lock
    functionSourceFile: dummy_thread
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _thread.allocate_lock
    functionSourceFile: _thread
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: thread.allocate_lock
    functionSourceFile: thread
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 297
    functionName: cffi.cparser.Parser.__init__
    functionSourceFile: cffi.cparser
    functionUses: 2
    functionsReached:
    - <builtin>.set
    - weakref.WeakKeyDictionary
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: types.ModuleType
    functionSourceFile: types
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - backend
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 579
    functionName: cffi.model.get_typecache
    functionSourceFile: cffi.model
    functionUses: 2
    functionsReached:
    - weakref.WeakValueDictionary
    - <builtin>.type
    - <builtin>.isinstance
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cffi_backend.set_ffi
    functionSourceFile: _cffi_backend
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: name.startswith
    functionSourceFile: <builtin>
    functionUses: 67
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - type
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 14
    functionLinenumber: 433
    functionName: cffi.api.FFI._get_cached_btype
    functionSourceFile: cffi.api
    functionUses: 50
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - name.split
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.EnumType.check_not_partial
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - <builtin>.max
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.ArrayType.length_is_unknown
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - <builtin>.min
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cffi_backend._get_types
    functionSourceFile: _cffi_backend
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 4
    IfCount: 4
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7ff13843a610>
    argNames:
    - self
    - csource
    - override
    - options
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 119
    functionName: cffi.api.FFI._cdef
    functionSourceFile: cffi.api
    functionUses: 4
    functionsReached:
    - _r_int_literal.match
    - prefixes.get
    - <builtin>.iter
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - <builtin>.object
    - cffi.cparser.Parser._make_partial
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - cffi.cparser._warn_for_non_extern_non_static_global_variable
    - int_str.lower
    - cffi.cparser.Parser._parse_decl
    - newnames.append
    - int_str.startswith
    - <builtin>.reversed
    - csource.encode
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - macros.items
    - look_for_words.discard
    - cffi.cparser._common_type_names
    - cffi.cparser.Parser._internal_parse
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - csourcelines.append
    - tp.finish_backend_type
    - enumvalues.append
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.model.StructOrUnion.__init__
    - _r_line_directive.sub
    - ctn.discard
    - cffi.model.unknown_type
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - cffi.cparser.Parser._declare_function
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._get_unknown_type
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser.parse
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - cffi.cparser._get_parser
    - name.startswith
    - <builtin>.range
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - value.strip
    - cffi.cparser.Parser._add_integer_constant
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - cffi.cparser.Parser._get_unknown_ptr_type
    - fldquals.append
    - typenames.append
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - _r_float_dotdotdot.sub
    - cffi.cparser.Parser._parse_function_type
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - tp.is_integer_type
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - match.group
    - cffi.model.RawFunctionType.as_function_pointer
    - re.match
    - cffi.cparser.Parser._declare
    - decl.name.startswith
    - _r_define.finditer
    - parts.append
    - cffi.cparser.Parser._process_macros
    - <builtin>.int
    - fldbitsize.append
    - cffi.cparser._warn_for_string_literal
    - words_used.add
    - type.as_function_pointer
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - <builtin>.sorted
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cache.clear
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.model.UnknownFloatType.__init__
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - cffi.model.UnknownIntegerType.__init__
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - cffi.model.unknown_ptr_type
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7ff13843a880>
    - <ast.Constant object at 0x7ff13843aca0>
    argNames:
    - self
    - csource
    - packed
    - pack
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 114
    functionName: cffi.api.FFI.embedding_api
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - _r_int_literal.match
    - prefixes.get
    - <builtin>.iter
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - <builtin>.object
    - cffi.cparser.Parser._make_partial
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - cffi.cparser._warn_for_non_extern_non_static_global_variable
    - int_str.lower
    - cffi.cparser.Parser._parse_decl
    - newnames.append
    - int_str.startswith
    - <builtin>.reversed
    - csource.encode
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - macros.items
    - look_for_words.discard
    - cffi.cparser._common_type_names
    - cffi.cparser.Parser._internal_parse
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - csourcelines.append
    - tp.finish_backend_type
    - enumvalues.append
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.model.StructOrUnion.__init__
    - _r_line_directive.sub
    - ctn.discard
    - cffi.model.unknown_type
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - cffi.cparser.Parser._declare_function
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._get_unknown_type
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser.parse
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - cffi.cparser._get_parser
    - name.startswith
    - <builtin>.range
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - value.strip
    - cffi.cparser.Parser._add_integer_constant
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - cffi.cparser.Parser._get_unknown_ptr_type
    - fldquals.append
    - typenames.append
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - _r_float_dotdotdot.sub
    - cffi.cparser.Parser._parse_function_type
    - cffi.api.FFI._cdef
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - tp.is_integer_type
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - match.group
    - cffi.model.RawFunctionType.as_function_pointer
    - re.match
    - cffi.cparser.Parser._declare
    - decl.name.startswith
    - _r_define.finditer
    - parts.append
    - cffi.cparser.Parser._process_macros
    - <builtin>.int
    - fldbitsize.append
    - cffi.cparser._warn_for_string_literal
    - words_used.add
    - type.as_function_pointer
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - <builtin>.sorted
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cache.clear
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.model.UnknownFloatType.__init__
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - cffi.model.UnknownIntegerType.__init__
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - cffi.model.unknown_ptr_type
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: csource.encode
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7ff13816a220>
    - <ast.Constant object at 0x7ff13816a130>
    - <ast.Constant object at 0x7ff13816a2b0>
    - <ast.Constant object at 0x7ff13859f970>
    argNames:
    - self
    - csource
    - override
    - packed
    - pack
    - dllexport
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 369
    functionName: cffi.cparser.Parser.parse
    functionSourceFile: cffi.cparser
    functionUses: 5
    functionsReached:
    - _r_int_literal.match
    - prefixes.get
    - <builtin>.iter
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - cffi.cparser._warn_for_non_extern_non_static_global_variable
    - int_str.lower
    - cffi.cparser.Parser._parse_decl
    - newnames.append
    - int_str.startswith
    - <builtin>.reversed
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - macros.items
    - look_for_words.discard
    - cffi.cparser._common_type_names
    - cffi.cparser.Parser._internal_parse
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - csourcelines.append
    - enumvalues.append
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.model.StructOrUnion.__init__
    - _r_line_directive.sub
    - ctn.discard
    - cffi.model.unknown_type
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - cffi.cparser.Parser._declare_function
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._get_unknown_type
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - cffi.cparser._get_parser
    - name.startswith
    - <builtin>.range
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - value.strip
    - cffi.cparser.Parser._add_integer_constant
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - cffi.cparser.Parser._get_unknown_ptr_type
    - fldquals.append
    - typenames.append
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - _r_float_dotdotdot.sub
    - cffi.cparser.Parser._parse_function_type
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - tp.is_integer_type
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - re.match
    - cffi.cparser.Parser._declare
    - decl.name.startswith
    - _r_define.finditer
    - parts.append
    - cffi.cparser.Parser._process_macros
    - <builtin>.int
    - fldbitsize.append
    - cffi.cparser._warn_for_string_literal
    - words_used.add
    - type.as_function_pointer
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - <builtin>.sorted
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.model.UnknownFloatType.__init__
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - cffi.model.UnknownIntegerType.__init__
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - cffi.model.unknown_ptr_type
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cache.clear
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tp.finish_backend_type
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7ff138714130>
    argNames:
    - self
    - name
    - flags
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 137
    functionName: cffi.api.FFI.dlopen
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - libname.encode
    - _cffi_backend.load_library
    - ctypes.util.find_library
    - cffi.api._load_backend_lib
    - cffi.api._make_ffi_library
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - ffi
    - libname
    - flags
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 830
    functionName: cffi.api._make_ffi_library
    functionSourceFile: cffi.api
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - libname.encode
    - _cffi_backend.load_library
    - ctypes.util.find_library
    - cffi.api._load_backend_lib
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - lib
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 155
    functionName: cffi.api.FFI.dlclose
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - <builtin>.type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - cdecl
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 162
    functionName: cffi.api.FFI._typeof_locked
    functionSourceFile: cffi.api
    functionUses: 50
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.EnumType.check_not_partial
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cdecl.encode
    functionSourceFile: <builtin>
    functionUses: 51
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - cdecl
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 551
    functionName: cffi.cparser.Parser.parse_type
    functionSourceFile: cffi.cparser
    functionUses: 51
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - newnames.append
    - <builtin>.reversed
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - csourcelines.append
    - enumvalues.append
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.model.StructOrUnion.__init__
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - match.groups
    - cffi.cparser.Parser._c_div
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser._get_parser
    - cffi.cparser.Parser._extract_quals
    - name.startswith
    - <builtin>.range
    - cffi.cparser._preprocess
    - line.strip
    - name.split
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - fldquals.append
    - typenames.append
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - _r_float_dotdotdot.sub
    - cffi.cparser.Parser._parse_function_type
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - match.group
    - cffi.model.RawFunctionType.as_function_pointer
    - re.match
    - cffi.cparser.Parser._declare
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - fldbitsize.append
    - cffi.cparser._warn_for_string_literal
    - words_used.add
    - type.as_function_pointer
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - <builtin>.sorted
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: type.as_function_pointer
    functionSourceFile: <builtin>
    functionUses: 65
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7ff138d51760>
    argNames:
    - self
    - cdecl
    - consider_function_as_funcptr
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 180
    functionName: cffi.api.FFI._typeof
    functionSourceFile: cffi.api
    functionUses: 50
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.EnumType.check_not_partial
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised:
    - CDefError
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - cdecl
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 194
    functionName: cffi.api.FFI.typeof
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - _cffi_backend.typeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - cffi.api._builtin_function_type
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.EnumType.check_not_partial
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - ffi._get_cached_btype
    - cffi.cparser.Parser._parse
    - <builtin>.max
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.ArrayType.length_is_unknown
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - <builtin>.min
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cffi_backend.typeof
    functionSourceFile: _cffi_backend
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - func
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 952
    functionName: cffi.api._builtin_function_type
    functionSourceFile: cffi.api
    functionUses: 1
    functionsReached:
    - ffi._get_cached_btype
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cffi_backend.sizeof
    functionSourceFile: _cffi_backend
    functionUses: 51
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - cdecl
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 223
    functionName: cffi.api.FFI.alignof
    functionSourceFile: cffi.api
    functionUses: 8
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - _cffi_backend.alignof
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.EnumType.check_not_partial
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cffi_backend.alignof
    functionSourceFile: _cffi_backend
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - cdecl
    - fields_or_indexes
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 231
    functionName: cffi.api.FFI.offsetof
    functionSourceFile: cffi.api
    functionUses: 8
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - cffi.model.EnumType.build_baseinttype
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.FunctionPtrType.build_backend_type
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.model.EnumType.check_not_partial
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - cffi.api.FFI._typeoffsetof
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - _cffi_backend.typeoffsetof
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - ctype
    - field_or_index
    - fields_or_indexes
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 510
    functionName: cffi.api.FFI._typeoffsetof
    functionSourceFile: cffi.api
    functionUses: 10
    functionsReached:
    - _cffi_backend.typeoffsetof
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7ff13817d640>
    argNames:
    - self
    - cdecl
    - init
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 242
    functionName: cffi.api.FFI.new
    functionSourceFile: cffi.api
    functionUses: 9
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - _cffi_backend.newp
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.EnumType.check_not_partial
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cffi_backend.newp
    functionSourceFile: _cffi_backend
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7ff13817ddc0>
    - <ast.Constant object at 0x7ff13817d940>
    - <ast.Constant object at 0x7ff13817d880>
    argNames:
    - self
    - alloc
    - free
    - should_clear_after_alloc
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 269
    functionName: cffi.api.FFI.new_allocator
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - _cffi_backend.FFI
    - compiled_ffi.new_allocator
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cffi_backend.FFI
    functionSourceFile: _cffi_backend
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: compiled_ffi.new_allocator
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7ff13817d2b0>
    argNames:
    - cdecl
    - init
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 287
    functionName: cffi.api.FFI.new_allocator.allocate
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.EnumType.check_not_partial
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cffi_backend.cast
    functionSourceFile: _cffi_backend
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.UnaryOp object at 0x7ff138389370>
    argNames:
    - self
    - cdata
    - maxlen
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 302
    functionName: cffi.api.FFI.string
    functionSourceFile: cffi.api
    functionUses: 8
    functionsReached:
    - _cffi_backend.string
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cffi_backend.string
    functionSourceFile: _cffi_backend
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - cdata
    - length
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 320
    functionName: cffi.api.FFI.unpack
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - _cffi_backend.unpack
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cffi_backend.unpack
    functionSourceFile: _cffi_backend
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Name object at 0x7ff13867aca0>
    - <ast.Constant object at 0x7ff13867aa60>
    argNames:
    - self
    - cdecl
    - python_buffer
    - require_writable
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 350
    functionName: cffi.api.FFI.from_buffer
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - _cffi_backend.from_buffer
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.EnumType.check_not_partial
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cffi_backend.from_buffer
    functionSourceFile: _cffi_backend
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - dest
    - src
    - n
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 368
    functionName: cffi.api.FFI.memmove
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - _cffi_backend.memmove
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cffi_backend.memmove
    functionSourceFile: _cffi_backend
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7ff138747e80>
    - <ast.Constant object at 0x7ff138747dc0>
    - <ast.Constant object at 0x7ff1387478e0>
    argNames:
    - self
    - cdecl
    - python_callable
    - error
    - onerror
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 384
    functionName: cffi.api.FFI.callback
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - cffi.api.<lambda1>
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - cffi.model.EnumType.build_baseinttype
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.api.FFI.callback.callback_decorator_wrap
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.FunctionPtrType.build_backend_type
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.model.EnumType.check_not_partial
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - _cffi_backend.callback
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - python_callable
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 392
    functionName: cffi.api.FFI.callback.callback_decorator_wrap
    functionSourceFile: cffi.api
    functionUses: 1
    functionsReached:
    - cffi.api.<lambda1>
    - _cffi_backend.callback
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cffi_backend.callback
    functionSourceFile: _cffi_backend
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7ff138d559a0>
    argNames:
    - self
    - cdecl
    - replace_with
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 405
    functionName: cffi.api.FFI.getctype
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - replace_with.startswith
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - _cffi_backend.getcname
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - replace_with.strip
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.RawFunctionType.as_function_pointer
    - cffi.model.EnumType.check_not_partial
    - match.group
    - re.match
    - cffi.cparser.Parser._declare
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.ArrayType.length_is_unknown
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: replace_with.strip
    functionSourceFile: <builtin>
    functionUses: 54
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: replace_with.startswith
    functionSourceFile: <builtin>
    functionUses: 54
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cffi_backend.getcname
    functionSourceFile: _cffi_backend
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7ff13874b970>
    argNames:
    - self
    - cdata
    - destructor
    - size
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 421
    functionName: cffi.api.FFI.gc
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - _cffi_backend.gcp
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cffi_backend.gcp
    functionSourceFile: _cffi_backend
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _dummy_thread.allocate_lock.acquire
    functionSourceFile: _dummy_thread
    functionUses: 51
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7ff1383451c0>
    argNames:
    - self
    - ffi
    - finishlist
    - can_delay
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 13
    functionLinenumber: 56
    functionName: cffi.model.BaseTypeByIdentity.get_cached_btype
    functionSourceFile: cffi.model
    functionUses: 50
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.RawFunctionType.as_function_pointer
    - cffi.model.EnumType.check_not_partial
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - <builtin>.max
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - <builtin>.min
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: type.finish_backend_type
    functionSourceFile: <builtin>
    functionUses: 51
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7ff13874ba00>
    - <ast.Constant object at 0x7ff13874b100>
    argNames:
    - self
    - source
    - tmpdir
    - kwargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 445
    functionName: cffi.api.FFI.verify
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - <builtin>.open
    - f.write
    - cffi.verifier.Verifier._write_source_to
    - cffi.verifier.Verifier.__init__
    - cffi.verifier._get_so_suffixes
    - cffi.ffiplatform._build
    - kwds.get
    - cffi.ffiplatform._flatten
    - k1.lstrip
    - os.environ.copy
    - cffi.ffiplatform.get_extension
    - allsources.append
    - <builtin>.len
    - cffi.vengine_cpy.VCPythonEngine.__init__
    - cffi.verifier.Verifier.get_module_name
    - io.StringIO
    - kwds.copy
    - <builtin>.isinstance
    - os.environ.get
    - saved_environ.items
    - distutils.core.Distribution
    - <builtin>.hex
    - distutils.core.Distribution.parse_config_files
    - distutils.log.set_verbosity
    - cffi.verifier.Verifier._load_library
    - os.makedirs
    - names.reverse
    - os.path.isfile
    - binascii.crc32
    - os.path.split
    - os.path.exists
    - basename.endswith
    - cffi.ffiplatform.compile
    - os.path.isabs
    - distutils.core.Extension
    - cffi.ffiplatform.flatten
    - io.StringIO.getvalue
    - cffi.verifier.Verifier.make_relative_to
    - cffi.ffiplatform._hack_at_distutils
    - os.path.basename
    - cffi.verifier._ensure_dir
    - os.path.abspath
    - cffi.verifier.Verifier.get_extension
    - os.path.isdir
    - fp.write
    - os.path.samefile
    - cffi.ffiplatform.samefile
    - distutils.core.Distribution.get_option_dict
    - cffi.verifier._caller_dir_pycache
    - cffi.verifier.Verifier._compile_module
    - cffi.verifier.Verifier.load_library
    - cffi.verifier._locate_engine_class
    - os.path.dirname
    - cffi.verifier._extension_suffixes
    - cffi.ffiplatform.maybe_relative_path
    - cffi.verifier.Verifier._write_source
    - distutils.log.set_threshold
    - imp.get_suffixes
    - names.append
    - <builtin>.sorted
    - cffi.api.FFI._apply_windows_unicode
    - fp.read
    - f.getvalue
    - <builtin>.list
    - distutils.core.Distribution.run_command
    - distutils.core.Distribution.get_command_obj
    - key.encode
    - x.keys
    - os.path.normpath
    - cffi.verifier.Verifier._locate_module
    - <builtin>.__import__
    - shutil.move
    - basename.split
    - k2.lstrip
    - cffi.vengine_gen.VGenericEngine.__init__
    - sys._getframe
    - <builtin>.hasattr
    - cmd_obj.get_outputs
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 247
    functionName: cffi.verifier._caller_dir_pycache
    functionSourceFile: cffi.verifier
    functionUses: 3
    functionsReached:
    - sys._getframe
    - os.path.dirname
    - os.path.abspath
    - os.environ.get
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 12
    argDefaultValues:
    - <ast.Constant object at 0x7ff1383f67c0>
    - <ast.Constant object at 0x7ff1383f6610>
    - <ast.Constant object at 0x7ff1383f6e80>
    - <ast.Constant object at 0x7ff1383f6e50>
    - <ast.Constant object at 0x7ff1383f61f0>
    - <ast.Constant object at 0x7ff1383f68e0>
    - <ast.Constant object at 0x7ff1383f6bb0>
    - <ast.Constant object at 0x7ff1383f6820>
    argNames:
    - self
    - ffi
    - preamble
    - tmpdir
    - modulename
    - ext_package
    - tag
    - force_generic_engine
    - source_extension
    - flags
    - relative_to
    - kwds
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 32
    functionName: cffi.verifier.Verifier.__init__
    functionSourceFile: cffi.verifier
    functionUses: 1
    functionsReached:
    - cffi.verifier._caller_dir_pycache
    - f.write
    - binascii.crc32
    - cffi.verifier._get_so_suffixes
    - f.getvalue
    - cffi.verifier._locate_engine_class
    - cffi.ffiplatform._flatten
    - os.path.dirname
    - key.encode
    - x.keys
    - k1.lstrip
    - cffi.verifier._extension_suffixes
    - <builtin>.len
    - cffi.vengine_cpy.VCPythonEngine.__init__
    - k2.lstrip
    - cffi.ffiplatform.flatten
    - io.StringIO
    - cffi.vengine_gen.VGenericEngine.__init__
    - cffi.verifier.Verifier.make_relative_to
    - kwds.copy
    - sys._getframe
    - <builtin>.isinstance
    - os.path.abspath
    - os.environ.get
    - <builtin>.hex
    - os.path.join
    - imp.get_suffixes
    - <builtin>.sorted
    linkageType: pythonLinkage
    raised:
    - TypeError
    - VerificationError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 92
    functionName: cffi.verifier.Verifier.load_library
    functionSourceFile: cffi.verifier
    functionUses: 1
    functionsReached:
    - <builtin>.open
    - cffi.verifier.Verifier._load_library
    - os.makedirs
    - names.reverse
    - cffi.verifier.Verifier._write_source_to
    - os.path.isfile
    - cffi.verifier.Verifier._compile_module
    - os.path.split
    - cffi.verifier._get_so_suffixes
    - fp.read
    - cffi.ffiplatform._build
    - os.path.exists
    - basename.endswith
    - distutils.core.Distribution.run_command
    - distutils.core.Distribution.get_command_obj
    - os.path.dirname
    - cffi.ffiplatform.compile
    - os.path.isabs
    - os.path.samefile
    - os.path.normpath
    - distutils.core.Extension
    - os.environ.copy
    - cffi.verifier.Verifier._locate_module
    - cffi.ffiplatform.get_extension
    - <builtin>.__import__
    - allsources.append
    - shutil.move
    - basename.split
    - cffi.verifier._extension_suffixes
    - cffi.ffiplatform.maybe_relative_path
    - cffi.verifier.Verifier.get_module_name
    - io.StringIO
    - io.StringIO.getvalue
    - cffi.ffiplatform._hack_at_distutils
    - cffi.verifier.Verifier._write_source
    - os.path.basename
    - cffi.verifier._ensure_dir
    - distutils.log.set_threshold
    - <builtin>.hasattr
    - os.path.abspath
    - distutils.log.set_verbosity
    - os.environ.get
    - saved_environ.items
    - distutils.core.Distribution
    - cffi.verifier.Verifier.get_extension
    - os.path.isdir
    - cmd_obj.get_outputs
    - distutils.core.Distribution.parse_config_files
    - os.path.join
    - imp.get_suffixes
    - fp.write
    - cffi.ffiplatform.samefile
    - names.append
    - distutils.core.Distribution.get_option_dict
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 475
    functionName: cffi.api.FFI._get_errno
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - _cffi_backend.get_errno
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cffi_backend.get_errno
    functionSourceFile: _cffi_backend
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - errno
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 477
    functionName: cffi.api.FFI._set_errno
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - _cffi_backend.set_errno
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cffi_backend.set_errno
    functionSourceFile: _cffi_backend
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.property
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: cffi.api.FFI
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - <builtin>.property
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.UnaryOp object at 0x7ff138348880>
    argNames:
    - self
    - code
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 482
    functionName: cffi.api.FFI.getwinerror
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - _cffi_backend.getwinerror
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cffi_backend.getwinerror
    functionSourceFile: _cffi_backend
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - ctype
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 485
    functionName: cffi.api.FFI._pointer_to
    functionSourceFile: cffi.api
    functionUses: 1
    functionsReached:
    - cache.get
    - cffi.model.global_cache
    - <builtin>.getattr
    - cffi.model.pointer_cache
    - kwds.pop
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - ffi
    - BType
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 613
    functionName: cffi.model.pointer_cache
    functionSourceFile: cffi.model
    functionUses: 4
    functionsReached:
    - cache.get
    - cffi.model.global_cache
    - kwds.pop
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - cdata
    - fields_or_indexes
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 489
    functionName: cffi.api.FFI.addressof
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - cache.get
    - cffi.model.global_cache
    - cffi.api.FFI._pointer_to
    - <builtin>.type
    - _cffi_backend.typeof
    - _cffi_backend.typeoffsetof
    - <builtin>.getattr
    - cffi.api.FFI._typeoffsetof
    - _cffi_backend.rawaddressof
    - cffi.model.pointer_cache
    - kwds.pop
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cffi_backend.rawaddressof
    functionSourceFile: _cffi_backend
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cffi_backend.typeoffsetof
    functionSourceFile: _cffi_backend
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - ffi_to_include
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 517
    functionName: cffi.api.FFI.include
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - cffi.cparser.Parser._add_constants
    - other._declarations.items
    - cffi.cparser.Parser.include
    - name.startswith
    - other._int_constants.items
    - name.split
    - cffi.cparser.Parser._declare
    linkageType: pythonLinkage
    raised:
    - TypeError
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 973
    functionName: cffi.cparser.Parser.include
    functionSourceFile: cffi.cparser
    functionUses: 1
    functionsReached:
    - cffi.cparser.Parser._add_constants
    - other._declarations.items
    - name.startswith
    - other._int_constants.items
    - name.split
    - cffi.cparser.Parser._declare
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - x
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 540
    functionName: cffi.api.FFI.new_handle
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - _cffi_backend.newp_handle
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cffi_backend.newp_handle
    functionSourceFile: _cffi_backend
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - x
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 543
    functionName: cffi.api.FFI.from_handle
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - _cffi_backend.from_handle
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cffi_backend.from_handle
    functionSourceFile: _cffi_backend
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - x
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 546
    functionName: cffi.api.FFI.release
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - _cffi_backend.release
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cffi_backend.release
    functionSourceFile: _cffi_backend
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - enabled_flag
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 549
    functionName: cffi.api.FFI.set_unicode
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - _r_int_literal.match
    - prefixes.get
    - <builtin>.iter
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - <builtin>.object
    - cffi.cparser.Parser._make_partial
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - cffi.cparser._warn_for_non_extern_non_static_global_variable
    - int_str.lower
    - cffi.cparser.Parser._parse_decl
    - newnames.append
    - int_str.startswith
    - <builtin>.reversed
    - csource.encode
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.api.FFI.cdef
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - macros.items
    - look_for_words.discard
    - cffi.cparser._common_type_names
    - cffi.cparser.Parser._internal_parse
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - csourcelines.append
    - tp.finish_backend_type
    - enumvalues.append
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.model.StructOrUnion.__init__
    - _r_line_directive.sub
    - ctn.discard
    - cffi.model.unknown_type
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - cffi.cparser.Parser._declare_function
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._get_unknown_type
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser.parse
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - cffi.cparser._get_parser
    - name.startswith
    - <builtin>.range
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - value.strip
    - cffi.cparser.Parser._add_integer_constant
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - cffi.cparser.Parser._get_unknown_ptr_type
    - fldquals.append
    - typenames.append
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - _r_float_dotdotdot.sub
    - cffi.cparser.Parser._parse_function_type
    - cffi.api.FFI._cdef
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - tp.is_integer_type
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - match.group
    - cffi.model.RawFunctionType.as_function_pointer
    - re.match
    - cffi.cparser.Parser._declare
    - decl.name.startswith
    - _r_define.finditer
    - parts.append
    - cffi.cparser.Parser._process_macros
    - <builtin>.int
    - fldbitsize.append
    - cffi.cparser._warn_for_string_literal
    - words_used.add
    - type.as_function_pointer
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - <builtin>.sorted
    - cffi.cparser._remove_line_directives
    - <builtin>.bool
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cache.clear
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.model.UnknownFloatType.__init__
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - cffi.model.UnknownIntegerType.__init__
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - cffi.model.unknown_ptr_type
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.bool
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kwds.get
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - key
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 589
    functionName: cffi.api.FFI._apply_embedding_fix.ensure
    functionSourceFile: cffi.api
    functionUses: 7
    functionsReached:
    - kwds.setdefault
    - lst.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kwds.setdefault
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: lst.append
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sysconfig.get_config_var
    functionSourceFile: sysconfig
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: distutils.sysconfig.get_config_var
    functionSourceFile: distutils
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7ff138c2e340>
    argNames:
    - self
    - module_name
    - source
    - source_extension
    - kwds
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 637
    functionName: cffi.api.FFI.set_source
    functionSourceFile: cffi.api
    functionUses: 1
    functionsReached:
    - <builtin>.str
    - <builtin>.isinstance
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised:
    - TypeError
    - ValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7ff138d43190>
    argNames:
    - self
    - module_name
    - pkgconfig_libs
    - source
    - source_extension
    - kwds
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 650
    functionName: cffi.api.FFI.set_source_pkgconfig
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - cffi.pkgconfig.flags_from_pkgconfig.get_library_dirs
    - cffi.pkgconfig.flags_from_pkgconfig.get_other_libs
    - cffi.pkgconfig.flags_from_pkgconfig
    - x.startswith
    - <builtin>.str
    - a.append
    - <builtin>.tuple
    - cffi.pkgconfig.flags_from_pkgconfig.get_libraries
    - cfg2.items
    - cffi.pkgconfig.flags_from_pkgconfig.kwargs
    - cffi.pkgconfig.flags_from_pkgconfig.get_other_cflags
    - sys.getfilesystemencoding
    - string.split
    - cffi.pkgconfig.flags_from_pkgconfig.get_macros
    - cffi.api.FFI.set_source
    - berr.decode
    - cffi.pkgconfig.merge_flags
    - <builtin>.isinstance
    - <builtin>.hasattr
    - subprocess.Popen
    - cffi.pkgconfig.flags_from_pkgconfig.get_macros._macro
    - x.split
    - cffi.pkgconfig.flags_from_pkgconfig.get_include_dirs
    - cffi.pkgconfig.call
    - bout.decode
    - pc.communicate
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - libs
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 60
    functionName: cffi.pkgconfig.flags_from_pkgconfig
    functionSourceFile: cffi.pkgconfig
    functionUses: 1
    functionsReached:
    - cffi.pkgconfig.flags_from_pkgconfig.get_library_dirs
    - cffi.pkgconfig.flags_from_pkgconfig.get_other_libs
    - x.startswith
    - a.append
    - <builtin>.tuple
    - cffi.pkgconfig.flags_from_pkgconfig.get_libraries
    - cfg2.items
    - cffi.pkgconfig.flags_from_pkgconfig.kwargs
    - cffi.pkgconfig.flags_from_pkgconfig.get_other_cflags
    - sys.getfilesystemencoding
    - string.split
    - cffi.pkgconfig.flags_from_pkgconfig.get_macros
    - berr.decode
    - cffi.pkgconfig.merge_flags
    - <builtin>.isinstance
    - subprocess.Popen
    - cffi.pkgconfig.flags_from_pkgconfig.get_macros._macro
    - x.split
    - cffi.pkgconfig.flags_from_pkgconfig.get_include_dirs
    - cffi.pkgconfig.call
    - bout.decode
    - pc.communicate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - cfg1
    - cfg2
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 7
    functionName: cffi.pkgconfig.merge_flags
    functionSourceFile: cffi.pkgconfig
    functionUses: 2
    functionsReached:
    - <builtin>.isinstance
    - cfg2.items
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 3
    IfCount: 5
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7ff138437c40>
    - <ast.Constant object at 0x7ff1384374c0>
    argNames:
    - self
    - tmpdir
    - verbose
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 660
    functionName: cffi.api.FFI.distutils_extension
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - <builtin>.open
    - cffi.verifier.Verifier._write_source_to
    - cffi.recompiler._patch_for_target
    - flags.append
    - s.encode
    - cffi.ffiplatform._build
    - <builtin>.enumerate
    - io.StringIO.write
    - kwds.get
    - replace_with.startswith
    - <builtin>.any
    - <builtin>.reversed
    - <builtin>.dict
    - cffi.recompiler.Recompiler._check_not_opaque
    - os.getpid
    - cffi.recompiler.recompile
    - lst.sort
    - tp.name.startswith
    - os.environ.copy
    - <builtin>.zip
    - cffi.ffiplatform.get_extension
    - cffi.recompiler.Recompiler._field_type
    - allsources.append
    - cffi.model.ArrayType.__init__
    - <builtin>.len
    - cffi.recompiler.Recompiler.needs_version
    - os.unlink
    - cffi.verifier.Verifier.get_module_name
    - io.StringIO
    - cffi.recompiler.Recompiler._prnt
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - g.close
    - os.environ.get
    - saved_environ.items
    - distutils.core.Distribution
    - distutils.core.Distribution.parse_config_files
    - cffi.model.attach_exception_info
    - distutils.log.set_verbosity
    - os.makedirs
    - names.reverse
    - <builtin>.setattr
    - cffi.recompiler.Recompiler.collect_step_tables
    - os.path.split
    - module_name.encode
    - g.readlines
    - os.path.exists
    - os.chdir
    - basename.endswith
    - cffi.api.FFI._apply_embedding_fix.ensure
    - tp.enumfields
    - replace_with.lstrip
    - cffi.recompiler.StructUnionExpr.__init__
    - cffi.recompiler.Recompiler._to_py
    - cffi.ffiplatform.compile
    - os.path.isabs
    - op.as_c_expr
    - x.as_python_expr
    - os.getcwd
    - distutils.core.Extension
    - <builtin>.ascii
    - lines.index
    - cffi.recompiler.Recompiler._generate
    - <builtin>.type
    - lst.append
    - result.replace
    - cffi.recompiler.Recompiler._typedef_ctx
    - io.StringIO.getvalue
    - cffi.ffiplatform._hack_at_distutils
    - <builtin>.range
    - name.split
    - os.path.basename
    - cffi.verifier._ensure_dir
    - cffi.recompiler.Recompiler._struct_ctx
    - cffi.recompiler.Recompiler.write_source_to_f
    - os.path.abspath
    - cffi.model.qualify
    - cffi.verifier.Verifier.get_extension
    - os.path.isdir
    - fp.write
    - os.path.samefile
    - distutils.core.Distribution.get_option_dict
    - cffi.recompiler.Recompiler.write_c_source_to_f
    - s.decode
    - c_fields.append
    - rep.append
    - distutils.sysconfig.get_config_var
    - os.path.dirname
    - replace_with.strip
    - distutils.dir_util.mkpath
    - f1.write
    - sysconfig.get_config_var
    - cffi.recompiler.FieldExpr.__init__
    - cffi.ffiplatform.maybe_relative_path
    - cffi.recompiler._patch_for_embedding
    - kwds.setdefault
    - cffi.verifier.Verifier._write_source
    - cffi.recompiler.Recompiler.write_py_source_to_f
    - cffi.recompiler.make_py_source
    - distutils.log.set_threshold
    - cffi.recompiler.make_c_source
    - cffi.recompiler.Recompiler.__init__
    - names.append
    - cffi.model.BaseTypeByIdentity.get_c_name
    - cffi.api.FFI._apply_windows_unicode
    - <builtin>.sorted
    - op.as_python_bytes
    - s.splitlines
    - cffi.recompiler._patch_meth
    - cffi.cffi_opcode.CffiOp.__init__
    - <builtin>.getattr
    - <builtin>.print
    - cffi.recompiler.TypenameExpr.__init__
    - os.rename
    - fp.read
    - <builtin>.max
    - <builtin>.list
    - distutils.core.Distribution.run_command
    - distutils.core.Distribution.get_command_obj
    - cffi.recompiler.Recompiler._print_string_literal_in_array
    - os.path.normpath
    - modname.split
    - cffi.recompiler._unpatch_meths
    - <builtin>.tuple
    - cffi.model.StructOrUnion.anonymous_struct_fields
    - basename.split
    - cffi.recompiler._modname_to_file
    - target.endswith
    - sys.stderr.write
    - cffi.recompiler._make_c_or_py_source
    - <builtin>.map
    - f1.read
    - cffi.recompiler.Recompiler._rel_readlines
    - <builtin>.set
    - patchlist.append
    - <builtin>.hasattr
    - cffi.recompiler.Recompiler.collect_type_table
    - cffi.api.FFI._apply_embedding_fix
    - cffi.recompiler.Recompiler._add_missing_struct_unions
    - entry.as_c_expr
    - cmd_obj.get_outputs
    - os.path.join
    linkageType: pythonLinkage
    raised:
    - TypeError
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 119
    functionName: cffi.verifier.Verifier.get_extension
    functionSourceFile: cffi.verifier
    functionUses: 5
    functionsReached:
    - <builtin>.open
    - os.makedirs
    - names.reverse
    - cffi.verifier.Verifier._write_source_to
    - os.path.split
    - os.path.exists
    - fp.read
    - basename.endswith
    - os.path.dirname
    - os.path.isabs
    - os.path.normpath
    - distutils.core.Extension
    - cffi.ffiplatform.get_extension
    - allsources.append
    - basename.split
    - cffi.ffiplatform.maybe_relative_path
    - cffi.verifier.Verifier.get_module_name
    - io.StringIO
    - io.StringIO.getvalue
    - cffi.ffiplatform._hack_at_distutils
    - cffi.verifier.Verifier._write_source
    - os.path.basename
    - cffi.verifier._ensure_dir
    - <builtin>.hasattr
    - os.path.isdir
    - os.path.join
    - fp.write
    - os.path.samefile
    - names.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: distutils.dir_util.mkpath
    functionSourceFile: distutils
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sys.stderr.write
    functionSourceFile: sys
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - filename
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 686
    functionName: cffi.api.FFI.emit_c_code
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - <builtin>.open
    - cffi.recompiler._patch_for_target
    - flags.append
    - s.encode
    - cffi.ffiplatform._build
    - <builtin>.enumerate
    - io.StringIO.write
    - kwds.get
    - replace_with.startswith
    - <builtin>.any
    - <builtin>.reversed
    - <builtin>.dict
    - cffi.recompiler.Recompiler._check_not_opaque
    - os.getpid
    - cffi.recompiler.recompile
    - lst.sort
    - tp.name.startswith
    - os.environ.copy
    - <builtin>.zip
    - cffi.ffiplatform.get_extension
    - cffi.recompiler.Recompiler._field_type
    - allsources.append
    - cffi.model.ArrayType.__init__
    - <builtin>.len
    - cffi.recompiler.Recompiler.needs_version
    - os.unlink
    - io.StringIO
    - cffi.recompiler.Recompiler._prnt
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - g.close
    - os.environ.get
    - saved_environ.items
    - distutils.core.Distribution
    - distutils.core.Distribution.parse_config_files
    - cffi.model.attach_exception_info
    - distutils.log.set_verbosity
    - os.makedirs
    - <builtin>.setattr
    - cffi.recompiler.Recompiler.collect_step_tables
    - module_name.encode
    - g.readlines
    - tp.enumfields
    - os.chdir
    - cffi.api.FFI._apply_embedding_fix.ensure
    - replace_with.lstrip
    - cffi.recompiler.StructUnionExpr.__init__
    - cffi.recompiler.Recompiler._to_py
    - cffi.ffiplatform.compile
    - op.as_c_expr
    - x.as_python_expr
    - os.getcwd
    - distutils.core.Extension
    - <builtin>.ascii
    - lines.index
    - cffi.recompiler.Recompiler._generate
    - <builtin>.type
    - lst.append
    - result.replace
    - cffi.recompiler.Recompiler._typedef_ctx
    - io.StringIO.getvalue
    - cffi.ffiplatform._hack_at_distutils
    - <builtin>.range
    - name.split
    - cffi.model.qualify
    - cffi.recompiler.Recompiler._struct_ctx
    - cffi.recompiler.Recompiler.write_source_to_f
    - os.path.abspath
    - distutils.core.Distribution.get_option_dict
    - cffi.recompiler.Recompiler.write_c_source_to_f
    - s.decode
    - c_fields.append
    - rep.append
    - distutils.sysconfig.get_config_var
    - os.path.dirname
    - replace_with.strip
    - f1.write
    - sysconfig.get_config_var
    - cffi.recompiler.FieldExpr.__init__
    - cffi.recompiler._patch_for_embedding
    - kwds.setdefault
    - cffi.recompiler.Recompiler.write_py_source_to_f
    - cffi.recompiler.make_py_source
    - cffi.recompiler.Recompiler.__init__
    - cffi.recompiler.make_c_source
    - distutils.log.set_threshold
    - cffi.model.BaseTypeByIdentity.get_c_name
    - <builtin>.sorted
    - cffi.api.FFI._apply_windows_unicode
    - op.as_python_bytes
    - s.splitlines
    - cffi.recompiler._patch_meth
    - cffi.cffi_opcode.CffiOp.__init__
    - <builtin>.getattr
    - <builtin>.print
    - cffi.recompiler.TypenameExpr.__init__
    - os.rename
    - <builtin>.max
    - <builtin>.list
    - distutils.core.Distribution.run_command
    - distutils.core.Distribution.get_command_obj
    - cffi.recompiler.Recompiler._print_string_literal_in_array
    - os.path.normpath
    - modname.split
    - cffi.recompiler._unpatch_meths
    - <builtin>.tuple
    - cffi.model.StructOrUnion.anonymous_struct_fields
    - cffi.recompiler._modname_to_file
    - target.endswith
    - cffi.recompiler._make_c_or_py_source
    - <builtin>.map
    - f1.read
    - cffi.recompiler.Recompiler._rel_readlines
    - <builtin>.set
    - patchlist.append
    - <builtin>.hasattr
    - cffi.recompiler.Recompiler.collect_type_table
    - cffi.api.FFI._apply_embedding_fix
    - cffi.recompiler.Recompiler._add_missing_struct_unions
    - entry.as_c_expr
    - cmd_obj.get_outputs
    - os.path.join
    linkageType: pythonLinkage
    raised:
    - TypeError
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - filename
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 698
    functionName: cffi.api.FFI.emit_python_code
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - <builtin>.open
    - cffi.recompiler._patch_for_target
    - flags.append
    - s.encode
    - cffi.ffiplatform._build
    - <builtin>.enumerate
    - io.StringIO.write
    - kwds.get
    - replace_with.startswith
    - <builtin>.any
    - <builtin>.reversed
    - <builtin>.dict
    - cffi.recompiler.Recompiler._check_not_opaque
    - os.getpid
    - cffi.recompiler.recompile
    - lst.sort
    - tp.name.startswith
    - os.environ.copy
    - <builtin>.zip
    - cffi.ffiplatform.get_extension
    - cffi.recompiler.Recompiler._field_type
    - allsources.append
    - cffi.model.ArrayType.__init__
    - <builtin>.len
    - cffi.recompiler.Recompiler.needs_version
    - os.unlink
    - io.StringIO
    - cffi.recompiler.Recompiler._prnt
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - g.close
    - os.environ.get
    - saved_environ.items
    - distutils.core.Distribution
    - distutils.core.Distribution.parse_config_files
    - cffi.model.attach_exception_info
    - distutils.log.set_verbosity
    - os.makedirs
    - <builtin>.setattr
    - cffi.recompiler.Recompiler.collect_step_tables
    - module_name.encode
    - g.readlines
    - tp.enumfields
    - os.chdir
    - cffi.api.FFI._apply_embedding_fix.ensure
    - replace_with.lstrip
    - cffi.recompiler.StructUnionExpr.__init__
    - cffi.recompiler.Recompiler._to_py
    - cffi.ffiplatform.compile
    - op.as_c_expr
    - x.as_python_expr
    - os.getcwd
    - distutils.core.Extension
    - <builtin>.ascii
    - lines.index
    - cffi.recompiler.Recompiler._generate
    - <builtin>.type
    - lst.append
    - result.replace
    - cffi.recompiler.Recompiler._typedef_ctx
    - io.StringIO.getvalue
    - cffi.ffiplatform._hack_at_distutils
    - <builtin>.range
    - name.split
    - cffi.model.qualify
    - cffi.recompiler.Recompiler._struct_ctx
    - cffi.recompiler.Recompiler.write_source_to_f
    - os.path.abspath
    - distutils.core.Distribution.get_option_dict
    - cffi.recompiler.Recompiler.write_c_source_to_f
    - s.decode
    - c_fields.append
    - rep.append
    - distutils.sysconfig.get_config_var
    - os.path.dirname
    - replace_with.strip
    - f1.write
    - sysconfig.get_config_var
    - cffi.recompiler.FieldExpr.__init__
    - cffi.recompiler._patch_for_embedding
    - kwds.setdefault
    - cffi.recompiler.Recompiler.write_py_source_to_f
    - cffi.recompiler.make_py_source
    - cffi.recompiler.Recompiler.__init__
    - cffi.recompiler.make_c_source
    - distutils.log.set_threshold
    - cffi.model.BaseTypeByIdentity.get_c_name
    - <builtin>.sorted
    - cffi.api.FFI._apply_windows_unicode
    - op.as_python_bytes
    - s.splitlines
    - cffi.recompiler._patch_meth
    - cffi.cffi_opcode.CffiOp.__init__
    - <builtin>.getattr
    - <builtin>.print
    - cffi.recompiler.TypenameExpr.__init__
    - os.rename
    - <builtin>.max
    - <builtin>.list
    - distutils.core.Distribution.run_command
    - distutils.core.Distribution.get_command_obj
    - cffi.recompiler.Recompiler._print_string_literal_in_array
    - os.path.normpath
    - modname.split
    - cffi.recompiler._unpatch_meths
    - <builtin>.tuple
    - cffi.model.StructOrUnion.anonymous_struct_fields
    - cffi.recompiler._modname_to_file
    - target.endswith
    - cffi.recompiler._make_c_or_py_source
    - <builtin>.map
    - f1.read
    - cffi.recompiler.Recompiler._rel_readlines
    - <builtin>.set
    - patchlist.append
    - <builtin>.hasattr
    - cffi.recompiler.Recompiler.collect_type_table
    - cffi.api.FFI._apply_embedding_fix
    - cffi.recompiler.Recompiler._add_missing_struct_unions
    - entry.as_c_expr
    - cmd_obj.get_outputs
    - os.path.join
    linkageType: pythonLinkage
    raised:
    - TypeError
    - ValueError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7ff13816adf0>
    - <ast.Constant object at 0x7ff13816ad30>
    - <ast.Constant object at 0x7ff13816ae20>
    - <ast.Constant object at 0x7ff13816ae80>
    argNames:
    - self
    - tmpdir
    - verbose
    - target
    - debug
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 710
    functionName: cffi.api.FFI.compile
    functionSourceFile: cffi.api
    functionUses: 1
    functionsReached:
    - <builtin>.open
    - cffi.recompiler._patch_for_target
    - flags.append
    - s.encode
    - cffi.ffiplatform._build
    - <builtin>.enumerate
    - io.StringIO.write
    - kwds.get
    - replace_with.startswith
    - <builtin>.any
    - <builtin>.reversed
    - <builtin>.dict
    - cffi.recompiler.Recompiler._check_not_opaque
    - os.getpid
    - cffi.recompiler.recompile
    - lst.sort
    - tp.name.startswith
    - os.environ.copy
    - <builtin>.zip
    - cffi.ffiplatform.get_extension
    - cffi.recompiler.Recompiler._field_type
    - allsources.append
    - cffi.model.ArrayType.__init__
    - <builtin>.len
    - cffi.recompiler.Recompiler.needs_version
    - os.unlink
    - io.StringIO
    - cffi.recompiler.Recompiler._prnt
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - g.close
    - os.environ.get
    - saved_environ.items
    - distutils.core.Distribution
    - distutils.core.Distribution.parse_config_files
    - cffi.model.attach_exception_info
    - distutils.log.set_verbosity
    - os.makedirs
    - <builtin>.setattr
    - cffi.recompiler.Recompiler.collect_step_tables
    - module_name.encode
    - g.readlines
    - tp.enumfields
    - os.chdir
    - cffi.api.FFI._apply_embedding_fix.ensure
    - replace_with.lstrip
    - cffi.recompiler.StructUnionExpr.__init__
    - cffi.recompiler.Recompiler._to_py
    - cffi.ffiplatform.compile
    - op.as_c_expr
    - x.as_python_expr
    - os.getcwd
    - distutils.core.Extension
    - <builtin>.ascii
    - lines.index
    - cffi.recompiler.Recompiler._generate
    - <builtin>.type
    - lst.append
    - result.replace
    - cffi.recompiler.Recompiler._typedef_ctx
    - io.StringIO.getvalue
    - cffi.ffiplatform._hack_at_distutils
    - <builtin>.range
    - name.split
    - cffi.model.qualify
    - cffi.recompiler.Recompiler._struct_ctx
    - cffi.recompiler.Recompiler.write_source_to_f
    - os.path.abspath
    - distutils.core.Distribution.get_option_dict
    - cffi.recompiler.Recompiler.write_c_source_to_f
    - s.decode
    - c_fields.append
    - rep.append
    - distutils.sysconfig.get_config_var
    - os.path.dirname
    - replace_with.strip
    - f1.write
    - sysconfig.get_config_var
    - cffi.recompiler.FieldExpr.__init__
    - cffi.recompiler._patch_for_embedding
    - kwds.setdefault
    - cffi.recompiler.Recompiler.write_py_source_to_f
    - cffi.recompiler.make_py_source
    - cffi.recompiler.Recompiler.__init__
    - cffi.recompiler.make_c_source
    - distutils.log.set_threshold
    - cffi.model.BaseTypeByIdentity.get_c_name
    - <builtin>.sorted
    - cffi.api.FFI._apply_windows_unicode
    - op.as_python_bytes
    - s.splitlines
    - cffi.recompiler._patch_meth
    - cffi.cffi_opcode.CffiOp.__init__
    - <builtin>.getattr
    - <builtin>.print
    - cffi.recompiler.TypenameExpr.__init__
    - os.rename
    - <builtin>.max
    - <builtin>.list
    - distutils.core.Distribution.run_command
    - distutils.core.Distribution.get_command_obj
    - cffi.recompiler.Recompiler._print_string_literal_in_array
    - os.path.normpath
    - modname.split
    - cffi.recompiler._unpatch_meths
    - <builtin>.tuple
    - cffi.model.StructOrUnion.anonymous_struct_fields
    - cffi.recompiler._modname_to_file
    - target.endswith
    - cffi.recompiler._make_c_or_py_source
    - <builtin>.map
    - f1.read
    - cffi.recompiler.Recompiler._rel_readlines
    - <builtin>.set
    - patchlist.append
    - <builtin>.hasattr
    - cffi.recompiler.Recompiler.collect_type_table
    - cffi.api.FFI._apply_embedding_fix
    - cffi.recompiler.Recompiler._add_missing_struct_unions
    - entry.as_c_expr
    - cmd_obj.get_outputs
    - os.path.join
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - func
    - tag
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 729
    functionName: cffi.api.FFI.init_once
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - _dummy_thread.allocate_lock
    - dummy_thread.allocate_lock
    - _thread.allocate_lock
    - thread.allocate_lock
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - pysource
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 753
    functionName: cffi.api.FFI.embedding_init_code
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - <builtin>.open
    - cffi.recompiler._patch_for_target
    - flags.append
    - s.encode
    - cffi.ffiplatform._build
    - <builtin>.enumerate
    - cffi.api.FFI.compile
    - io.StringIO.write
    - kwds.get
    - replace_with.startswith
    - <builtin>.any
    - <builtin>.reversed
    - <builtin>.dict
    - cffi.recompiler.Recompiler._check_not_opaque
    - os.getpid
    - cffi.recompiler.recompile
    - lst.sort
    - tp.name.startswith
    - os.environ.copy
    - <builtin>.zip
    - cffi.ffiplatform.get_extension
    - cffi.recompiler.Recompiler._field_type
    - allsources.append
    - cffi.model.ArrayType.__init__
    - <builtin>.len
    - cffi.recompiler.Recompiler.needs_version
    - os.unlink
    - cffi.recompiler.Recompiler._prnt
    - io.StringIO
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - g.close
    - os.environ.get
    - saved_environ.items
    - distutils.core.Distribution
    - distutils.core.Distribution.parse_config_files
    - cffi.model.attach_exception_info
    - distutils.log.set_verbosity
    - os.makedirs
    - <builtin>.setattr
    - cffi.recompiler.Recompiler.collect_step_tables
    - module_name.encode
    - g.readlines
    - tp.enumfields
    - os.chdir
    - cffi.api.FFI._apply_embedding_fix.ensure
    - replace_with.lstrip
    - cffi.recompiler.StructUnionExpr.__init__
    - cffi.recompiler.Recompiler._to_py
    - cffi.ffiplatform.compile
    - op.as_c_expr
    - x.as_python_expr
    - os.getcwd
    - distutils.core.Extension
    - <builtin>.ascii
    - lines.index
    - cffi.recompiler.Recompiler._generate
    - <builtin>.type
    - lst.append
    - result.replace
    - line.startswith
    - pysource.splitlines
    - cffi.recompiler.Recompiler._typedef_ctx
    - io.StringIO.getvalue
    - <builtin>.range
    - cffi.ffiplatform._hack_at_distutils
    - name.split
    - cffi.model.qualify
    - cffi.recompiler.Recompiler._struct_ctx
    - cffi.recompiler.Recompiler.write_source_to_f
    - os.path.abspath
    - distutils.core.Distribution.get_option_dict
    - cffi.recompiler.Recompiler.write_c_source_to_f
    - s.decode
    - c_fields.append
    - rep.append
    - distutils.sysconfig.get_config_var
    - os.path.dirname
    - replace_with.strip
    - f1.write
    - re.match
    - sysconfig.get_config_var
    - line.rstrip
    - cffi.recompiler.FieldExpr.__init__
    - cffi.recompiler._patch_for_embedding
    - kwds.setdefault
    - cffi.recompiler.Recompiler.write_py_source_to_f
    - cffi.recompiler.make_py_source
    - cffi.recompiler.Recompiler.__init__
    - cffi.recompiler.make_c_source
    - distutils.log.set_threshold
    - cffi.model.BaseTypeByIdentity.get_c_name
    - <builtin>.sorted
    - cffi.api.FFI._apply_windows_unicode
    - op.as_python_bytes
    - s.splitlines
    - cffi.recompiler._patch_meth
    - cffi.cffi_opcode.CffiOp.__init__
    - <builtin>.getattr
    - <builtin>.print
    - cffi.recompiler.TypenameExpr.__init__
    - os.rename
    - <builtin>.max
    - <builtin>.list
    - distutils.core.Distribution.run_command
    - distutils.core.Distribution.get_command_obj
    - cffi.recompiler.Recompiler._print_string_literal_in_array
    - os.path.normpath
    - modname.split
    - cffi.recompiler._unpatch_meths
    - <builtin>.tuple
    - cffi.model.StructOrUnion.anonymous_struct_fields
    - cffi.recompiler._modname_to_file
    - target.endswith
    - cffi.recompiler._make_c_or_py_source
    - <builtin>.map
    - f1.read
    - cffi.recompiler.Recompiler._rel_readlines
    - <builtin>.set
    - patchlist.append
    - <builtin>.hasattr
    - cffi.recompiler.Recompiler.collect_type_table
    - cffi.api.FFI._apply_embedding_fix
    - cffi.recompiler.Recompiler._add_missing_struct_unions
    - entry.as_c_expr
    - cmd_obj.get_outputs
    - os.path.join
    - match.end
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: re.match
    functionSourceFile: re
    functionUses: 68
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: match.end
    functionSourceFile: <builtin>
    functionUses: 69
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pysource.splitlines
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line.rstrip
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line.startswith
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kwds
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 779
    functionName: cffi.api.FFI.def_extern
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 7
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 783
    functionName: cffi.api.FFI.list_types
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - typedefs.append
    - key.startswith
    - typedefs.sort
    - unions.append
    - structs.append
    - structs.sort
    - unions.sort
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: key.startswith
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typedefs.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: structs.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: unions.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typedefs.sort
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: structs.sort
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: unions.sort
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 0
    IfCount: 6
    argCount: 3
    argDefaultValues: []
    argNames:
    - backend
    - name
    - flags
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 804
    functionName: cffi.api._load_backend_lib
    functionSourceFile: cffi.api
    functionUses: 2
    functionsReached:
    - _cffi_backend.load_library
    - <builtin>.isinstance
    - ctypes.util.find_library
    linkageType: pythonLinkage
    raised:
    - OSError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cffi_backend.load_library
    functionSourceFile: _cffi_backend
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ctypes.util.find_library
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 15
    functionLinenumber: 834
    functionName: cffi.api._make_ffi_library.accessor_function
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - backendlib.load_function
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.EnumType.check_not_partial
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - <builtin>.max
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.ArrayType.length_is_unknown
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - <builtin>.min
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: backendlib.load_function
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 15
    functionLinenumber: 841
    functionName: cffi.api._make_ffi_library.accessor_variable
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - <builtin>.setattr
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - name.split
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.EnumType.check_not_partial
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - <builtin>.max
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.ArrayType.length_is_unknown
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - <builtin>.min
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - <builtin>.property
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cffi.api._make_ffi_library.accessor_variable.<lambda1>
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cffi.api._make_ffi_library.accessor_variable.<lambda2>
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 15
    functionLinenumber: 851
    functionName: cffi.api._make_ffi_library.addressof_var
    functionSourceFile: cffi.api
    functionUses: 1
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - backendlib.load_function
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - <builtin>.range
    - cffi.model.pointer_cache
    - name.startswith
    - cffi.cparser.Parser._extract_quals
    - cffi.cparser._get_parser
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.EnumType.check_not_partial
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - <builtin>.max
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.ArrayType.length_is_unknown
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - <builtin>.min
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 866
    functionName: cffi.api._make_ffi_library.accessor_constant
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 870
    functionName: cffi.api._make_ffi_library.accessor_int_constant
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 877
    functionName: cffi.api._make_ffi_library.update_accessors
    functionSourceFile: cffi.api
    functionUses: 5
    functionsReached:
    - <builtin>.isinstance
    - ffi._parser._declarations.items
    - accessors.setdefault
    - <builtin>.enumerate
    - key.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ffi._parser._declarations.items
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: key.split
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Name object at 0x7ff1386d4a60>
    - <ast.Name object at 0x7ff1386d4610>
    argNames:
    - name
    - tp
    - i
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 892
    functionName: cffi.api._make_ffi_library.update_accessors.accessor_enum
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - tp.check_not_partial
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: accessors.setdefault
    functionSourceFile: <builtin>
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 900
    functionName: cffi.api._make_ffi_library.make_accessor
    functionSourceFile: cffi.api
    functionUses: 3
    functionsReached:
    - <builtin>.isinstance
    - ffi._parser._declarations.items
    - cffi.api._make_ffi_library.update_accessors
    - accessors.setdefault
    - <builtin>.enumerate
    - key.split
    linkageType: pythonLinkage
    raised:
    - AttributeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 911
    functionName: cffi.api._make_ffi_library.FFILibrary.__getattr__
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.getattr
    - ffi._parser._declarations.items
    - cffi.api._make_ffi_library.make_accessor
    - cffi.api._make_ffi_library.update_accessors
    - accessors.setdefault
    - <builtin>.enumerate
    - key.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 914
    functionName: cffi.api._make_ffi_library.FFILibrary.__setattr__
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - property.__set__
    - <builtin>.setattr
    - <builtin>.getattr
    - ffi._parser._declarations.items
    - cffi.api._make_ffi_library.make_accessor
    - cffi.api._make_ffi_library.update_accessors
    - accessors.setdefault
    - <builtin>.enumerate
    - key.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: property.__set__
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 922
    functionName: cffi.api._make_ffi_library.FFILibrary.__dir__
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - accessors.setdefault
    - <builtin>.isinstance
    - ffi._parser._declarations.items
    - cffi.api._make_ffi_library.update_accessors
    - accessors.keys
    - <builtin>.enumerate
    - key.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: accessors.keys
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 16
    functionLinenumber: 926
    functionName: cffi.api._make_ffi_library.FFILibrary.__addressof__
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.api._make_ffi_library.addressof_var
    - ffi._parser._declarations.items
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - backendlib.load_function
    - fldnames.append
    - accessors.setdefault
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.api._make_ffi_library.make_accessor
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - cffi.model.pointer_cache
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.EnumType.check_not_partial
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - match.end
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - <builtin>.max
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.ArrayType.length_is_unknown
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - <builtin>.min
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - cffi.api._make_ffi_library.update_accessors
    - key.split
    - pycparser.CParser
    linkageType: pythonLinkage
    raised:
    - AttributeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 938
    functionName: cffi.api._make_ffi_library.FFILibrary.__cffi_close__
    functionSourceFile: cffi.api
    functionUses: 0
    functionsReached:
    - backendlib.close_lib
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: backendlib.close_lib
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: libname.encode
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ffi._get_cached_btype
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cffi.pkgconfig
    functionSourceFile: cffi.pkgconfig
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cfg2.items
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Call object at 0x7ff138b134f0>
    argNames:
    - libname
    - flag
    - encoding
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 26
    functionName: cffi.pkgconfig.call
    functionSourceFile: cffi.pkgconfig
    functionUses: 3
    functionsReached:
    - <builtin>.isinstance
    - subprocess.Popen
    - a.append
    - bout.decode
    - berr.decode
    - pc.communicate
    linkageType: pythonLinkage
    raised:
    - PkgConfigError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: a.append
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: subprocess.Popen
    functionSourceFile: subprocess
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pc.communicate
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: berr.decode
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: bout.decode
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - string
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 75
    functionName: cffi.pkgconfig.flags_from_pkgconfig.get_include_dirs
    functionSourceFile: cffi.pkgconfig
    functionUses: 3
    functionsReached:
    - string.split
    - x.startswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: string.split
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: x.startswith
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - string
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 78
    functionName: cffi.pkgconfig.flags_from_pkgconfig.get_library_dirs
    functionSourceFile: cffi.pkgconfig
    functionUses: 3
    functionsReached:
    - string.split
    - x.startswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - string
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 81
    functionName: cffi.pkgconfig.flags_from_pkgconfig.get_libraries
    functionSourceFile: cffi.pkgconfig
    functionUses: 3
    functionsReached:
    - string.split
    - x.startswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - string
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 85
    functionName: cffi.pkgconfig.flags_from_pkgconfig.get_macros
    functionSourceFile: cffi.pkgconfig
    functionUses: 3
    functionsReached:
    - x.startswith
    - string.split
    - cffi.pkgconfig.flags_from_pkgconfig.get_macros._macro
    - x.split
    - <builtin>.tuple
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - x
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 86
    functionName: cffi.pkgconfig.flags_from_pkgconfig.get_macros._macro
    functionSourceFile: cffi.pkgconfig
    functionUses: 4
    functionsReached:
    - <builtin>.tuple
    - x.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: x.split
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - string
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 94
    functionName: cffi.pkgconfig.flags_from_pkgconfig.get_other_cflags
    functionSourceFile: cffi.pkgconfig
    functionUses: 3
    functionsReached:
    - string.split
    - x.startswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - string
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 98
    functionName: cffi.pkgconfig.flags_from_pkgconfig.get_other_libs
    functionSourceFile: cffi.pkgconfig
    functionUses: 3
    functionsReached:
    - string.split
    - x.startswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - libname
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 103
    functionName: cffi.pkgconfig.flags_from_pkgconfig.kwargs
    functionSourceFile: cffi.pkgconfig
    functionUses: 2
    functionsReached:
    - cffi.pkgconfig.flags_from_pkgconfig.get_library_dirs
    - cffi.pkgconfig.flags_from_pkgconfig.get_other_libs
    - x.startswith
    - a.append
    - <builtin>.tuple
    - cffi.pkgconfig.flags_from_pkgconfig.get_libraries
    - cffi.pkgconfig.flags_from_pkgconfig.get_other_cflags
    - sys.getfilesystemencoding
    - string.split
    - cffi.pkgconfig.flags_from_pkgconfig.get_macros
    - berr.decode
    - <builtin>.isinstance
    - subprocess.Popen
    - cffi.pkgconfig.flags_from_pkgconfig.get_macros._macro
    - x.split
    - cffi.pkgconfig.flags_from_pkgconfig.get_include_dirs
    - cffi.pkgconfig.call
    - bout.decode
    - pc.communicate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sys.getfilesystemencoding
    functionSourceFile: sys
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cffi.error
    functionSourceFile: cffi.error
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 7
    functionName: cffi.error.CDefError.__str__
    functionSourceFile: cffi.error
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: cffi.cparser
    functionSourceFile: cffi.cparser
    functionUses: 0
    functionsReached:
    - thread.allocate_lock
    - _thread.allocate_lock
    - re.compile
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 19
    functionName: cffi.cparser._workaround_for_static_import_finders
    functionSourceFile: cffi.cparser
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: re.compile
    functionSourceFile: re
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 50
    functionName: cffi.cparser._get_parser
    functionSourceFile: cffi.cparser
    functionUses: 65
    functionsReached:
    - _pycparser.CParser
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _pycparser.CParser
    functionSourceFile: _pycparser
    functionUses: 66
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pycparser.CParser
    functionSourceFile: pycparser
    functionUses: 66
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 5
    IfCount: 7
    argCount: 1
    argDefaultValues: []
    argNames:
    - csource
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 56
    functionName: cffi.cparser._workaround_for_old_pycparser
    functionSourceFile: cffi.cparser
    functionUses: 66
    functionsReached:
    - match.start
    - csource.startswith
    - _r_star_const_space.search
    - <builtin>.len
    - match.group
    - match.end
    - parts.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _r_star_const_space.search
    functionSourceFile: <builtin>
    functionUses: 67
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: match.start
    functionSourceFile: <builtin>
    functionUses: 68
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: parts.append
    functionSourceFile: <builtin>
    functionUses: 68
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: match.group
    functionSourceFile: <builtin>
    functionUses: 70
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: csource.startswith
    functionSourceFile: <builtin>
    functionUses: 67
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 7
    IfCount: 6
    argCount: 1
    argDefaultValues: []
    argNames:
    - csource
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 98
    functionName: cffi.cparser._preprocess_extern_python
    functionSourceFile: cffi.cparser
    functionUses: 66
    functionsReached:
    - match.start
    - csource.find
    - _r_extern_python.search
    - match.group
    - match.end
    - parts.append
    linkageType: pythonLinkage
    raised:
    - CDefError
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _r_extern_python.search
    functionSourceFile: <builtin>
    functionUses: 67
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: csource.find
    functionSourceFile: <builtin>
    functionUses: 67
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - csource
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 148
    functionName: cffi.cparser._warn_for_string_literal
    functionSourceFile: cffi.cparser
    functionUses: 66
    functionsReached:
    - csource.splitlines
    - warnings.warn
    - line.lstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: csource.splitlines
    functionSourceFile: <builtin>
    functionUses: 69
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line.lstrip
    functionSourceFile: <builtin>
    functionUses: 67
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: warnings.warn
    functionSourceFile: warnings
    functionUses: 69
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - decl
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 160
    functionName: cffi.cparser._warn_for_non_extern_non_static_global_variable
    functionSourceFile: cffi.cparser
    functionUses: 8
    functionsReached:
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - csource
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 167
    functionName: cffi.cparser._remove_line_directives
    functionSourceFile: cffi.cparser
    functionUses: 66
    functionsReached:
    - _r_line_directive.sub
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - m
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 173
    functionName: cffi.cparser._remove_line_directives.replace
    functionSourceFile: cffi.cparser
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - m.group
    - line_directives.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: m.group
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line_directives.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _r_line_directive.sub
    functionSourceFile: <builtin>
    functionUses: 68
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - csource
    - line_directives
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 180
    functionName: cffi.cparser._put_back_line_directives
    functionSourceFile: cffi.cparser
    functionUses: 66
    functionsReached:
    - _r_line_directive.sub
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - m
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 181
    functionName: cffi.cparser._put_back_line_directives.replace
    functionSourceFile: cffi.cparser
    functionUses: 0
    functionsReached:
    - <builtin>.int
    - m.group
    - s.startswith
    linkageType: pythonLinkage
    raised:
    - AssertionError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: s.startswith
    functionSourceFile: <builtin>
    functionUses: 67
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - csource
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 189
    functionName: cffi.cparser._preprocess
    functionSourceFile: cffi.cparser
    functionUses: 65
    functionsReached:
    - cffi.cparser._workaround_for_old_pycparser
    - match.start
    - cffi.cparser._remove_line_directives
    - _r_cdecl.sub
    - _r_float_dotdotdot.sub
    - _r_stdcall1.sub
    - _r_line_directive.sub
    - cffi.cparser._preprocess_extern_python
    - _r_partial_enum.finditer
    - <builtin>.enumerate
    - macrovalue.replace
    - _r_int_dotdotdot.sub
    - <builtin>.list
    - _r_stdcall2.sub
    - _r_star_const_space.search
    - cffi.cparser._put_back_line_directives
    - line.lstrip
    - _r_extern_python.search
    - <builtin>.reversed
    - match.group
    - _r_define.finditer
    - parts.append
    - _r_partial_array.sub
    - match.groups
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - cffi.cparser._warn_for_string_literal
    - _r_define.sub
    - csource.splitlines
    - csource.find
    - csource.startswith
    - csource.replace
    - match.end
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - m
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 195
    functionName: cffi.cparser._preprocess.replace_keeping_newlines
    functionSourceFile: cffi.cparser
    functionUses: 0
    functionsReached:
    - m.group
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _r_comment.sub
    functionSourceFile: <builtin>
    functionUses: 66
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _r_define.finditer
    functionSourceFile: <builtin>
    functionUses: 66
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: match.groups
    functionSourceFile: <builtin>
    functionUses: 66
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: macrovalue.replace
    functionSourceFile: <builtin>
    functionUses: 66
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _r_define.sub
    functionSourceFile: <builtin>
    functionUses: 66
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _r_stdcall2.sub
    functionSourceFile: <builtin>
    functionUses: 66
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _r_stdcall1.sub
    functionSourceFile: <builtin>
    functionUses: 66
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _r_cdecl.sub
    functionSourceFile: <builtin>
    functionUses: 66
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _r_partial_array.sub
    functionSourceFile: <builtin>
    functionUses: 66
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _r_partial_enum.finditer
    functionSourceFile: <builtin>
    functionUses: 66
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _r_int_dotdotdot.sub
    functionSourceFile: <builtin>
    functionUses: 66
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _r_float_dotdotdot.sub
    functionSourceFile: <builtin>
    functionUses: 66
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: csource.replace
    functionSourceFile: <builtin>
    functionUses: 66
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 10
    IfCount: 8
    argCount: 1
    argDefaultValues: []
    argNames:
    - csource
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 255
    functionName: cffi.cparser._common_type_names
    functionSourceFile: cffi.cparser
    functionUses: 65
    functionsReached:
    - <builtin>.set
    - words_used.add
    - words_used.discard
    - _r_words.findall
    - look_for_words.discard
    - look_for_words.add
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: look_for_words.add
    functionSourceFile: <builtin>
    functionUses: 66
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _r_words.findall
    functionSourceFile: <builtin>
    functionUses: 66
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: words_used.discard
    functionSourceFile: <builtin>
    functionUses: 66
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: look_for_words.discard
    functionSourceFile: <builtin>
    functionUses: 66
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: words_used.add
    functionSourceFile: <builtin>
    functionUses: 66
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: weakref.WeakKeyDictionary
    functionSourceFile: weakref
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 10
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - csource
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 307
    functionName: cffi.cparser.Parser._parse
    functionSourceFile: cffi.cparser
    functionUses: 64
    functionsReached:
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.cparser._workaround_for_old_pycparser
    - match.start
    - cffi.cparser._remove_line_directives
    - _r_cdecl.sub
    - _r_float_dotdotdot.sub
    - _r_stdcall1.sub
    - ctn.discard
    - _r_line_directive.sub
    - cffi.cparser.Parser.convert_pycparser_error
    - cffi.cparser._preprocess_extern_python
    - <builtin>.enumerate
    - _r_partial_enum.finditer
    - macrovalue.replace
    - _r_int_dotdotdot.sub
    - <builtin>.list
    - _r_stdcall2.sub
    - _r_star_const_space.search
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - line.lstrip
    - _r_extern_python.search
    - words_used.discard
    - <builtin>.reversed
    - match.group
    - look_for_words.add
    - re.match
    - _r_define.finditer
    - parts.append
    - _r_partial_array.sub
    - lock.release
    - lock.acquire
    - match.groups
    - _r_comment.sub
    - <builtin>.int
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - cffi.cparser._warn_for_string_literal
    - name.startswith
    - cffi.cparser._preprocess
    - cffi.cparser._get_parser
    - cffi.cparser._common_type_names
    - line.strip
    - _r_define.sub
    - _pycparser.CParser
    - <builtin>.set
    - words_used.add
    - csource.splitlines
    - csource.find
    - csource.startswith
    - csource.replace
    - csourcelines.append
    - _r_words.findall
    - typenames.append
    - match.end
    - pycparser.CParser
    - <builtin>.sorted
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typenames.append
    functionSourceFile: <builtin>
    functionUses: 65
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ctn.discard
    functionSourceFile: <builtin>
    functionUses: 65
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: csourcelines.append
    functionSourceFile: <builtin>
    functionUses: 65
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: lock.acquire
    functionSourceFile: <builtin>
    functionUses: 65
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - e
    - csource
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 359
    functionName: cffi.cparser.Parser.convert_pycparser_error
    functionSourceFile: cffi.cparser
    functionUses: 65
    functionsReached:
    - csource.splitlines
    - cffi.cparser.Parser._convert_pycparser_error
    - <builtin>.str
    - <builtin>.int
    - <builtin>.len
    - match.group
    - re.match
    - line.strip
    linkageType: pythonLinkage
    raised:
    - CDefError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: lock.release
    functionSourceFile: <builtin>
    functionUses: 65
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - e
    - csource
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 345
    functionName: cffi.cparser.Parser._convert_pycparser_error
    functionSourceFile: cffi.cparser
    functionUses: 66
    functionsReached:
    - csource.splitlines
    - <builtin>.str
    - <builtin>.int
    - <builtin>.len
    - match.group
    - re.match
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: line.strip
    functionSourceFile: <builtin>
    functionUses: 66
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 9
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 14
    ICount: 3
    IfCount: 9
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - csource
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 393
    functionName: cffi.cparser.Parser._internal_parse
    functionSourceFile: cffi.cparser
    functionUses: 6
    functionsReached:
    - _r_int_literal.match
    - prefixes.get
    - <builtin>.iter
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - cffi.cparser._warn_for_non_extern_non_static_global_variable
    - int_str.lower
    - cffi.cparser.Parser._parse_decl
    - newnames.append
    - int_str.startswith
    - <builtin>.reversed
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - macros.items
    - look_for_words.discard
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - csourcelines.append
    - enumvalues.append
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.model.StructOrUnion.__init__
    - _r_line_directive.sub
    - ctn.discard
    - cffi.model.unknown_type
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - cffi.cparser.Parser._declare_function
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._get_unknown_type
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - cffi.cparser._get_parser
    - name.startswith
    - <builtin>.range
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - value.strip
    - cffi.cparser.Parser._add_integer_constant
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - cffi.cparser.Parser._get_unknown_ptr_type
    - fldquals.append
    - typenames.append
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - _r_float_dotdotdot.sub
    - cffi.cparser.Parser._parse_function_type
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - tp.is_integer_type
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - re.match
    - cffi.cparser.Parser._declare
    - decl.name.startswith
    - _r_define.finditer
    - parts.append
    - cffi.cparser.Parser._process_macros
    - <builtin>.int
    - fldbitsize.append
    - cffi.cparser._warn_for_string_literal
    - words_used.add
    - type.as_function_pointer
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - <builtin>.sorted
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.model.UnknownFloatType.__init__
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - cffi.model.UnknownIntegerType.__init__
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - cffi.model.unknown_ptr_type
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised:
    - CDefError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - macros
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 471
    functionName: cffi.cparser.Parser._process_macros
    functionSourceFile: cffi.cparser
    functionUses: 7
    functionsReached:
    - _r_int_literal.match
    - cffi.cparser.Parser._add_constants
    - int_str.lower
    - <builtin>.int
    - value.strip
    - macros.items
    - int_str.startswith
    - name.split
    - cffi.cparser.Parser._declare
    - cffi.cparser.Parser._add_integer_constant
    linkageType: pythonLinkage
    raised:
    - CDefError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.iter
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 18
    ICount: 10
    IfCount: 12
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - decl
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 500
    functionName: cffi.cparser.Parser._parse_decl
    functionSourceFile: cffi.cparser
    functionUses: 7
    functionsReached:
    - _r_int_literal.match
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - <builtin>.enumerate
    - macrovalue.replace
    - cffi.cparser._warn_for_non_extern_non_static_global_variable
    - s.rstrip
    - int_str.lower
    - newnames.append
    - int_str.startswith
    - <builtin>.reversed
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - csourcelines.append
    - enumvalues.append
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.model.StructOrUnion.__init__
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - cffi.cparser.Parser._declare_function
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - cffi.cparser.Parser._add_integer_constant
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - fldquals.append
    - typenames.append
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - _r_float_dotdotdot.sub
    - cffi.cparser.Parser._parse_function_type
    - tp.is_integer_type
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - re.match
    - cffi.cparser.Parser._declare
    - decl.name.startswith
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - fldbitsize.append
    - cffi.cparser._warn_for_string_literal
    - words_used.add
    - type.as_function_pointer
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - <builtin>.sorted
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse_constant
    - cffi.cparser.Parser._parse
    - <builtin>.list
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised:
    - CDefError
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - decl
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 983
    functionName: cffi.cparser.Parser._get_unknown_type
    functionSourceFile: cffi.cparser
    functionUses: 7
    functionsReached:
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - cffi.model.EnumType.force_the_name
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - name.replace
    - cffi.model.UnknownIntegerType.__init__
    - cffi.model.StructOrUnion.__init__
    - cffi.model.unknown_type
    - cffi.model.UnknownFloatType.__init__
    linkageType: pythonLinkage
    raised:
    - FFIError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - decl
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 1002
    functionName: cffi.cparser.Parser._get_unknown_ptr_type
    functionSourceFile: cffi.cparser
    functionUses: 7
    functionsReached:
    - cffi.model.qualify
    - cffi.model.NamedPointerType.__init__
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - totype.c_name_with_marker.replace
    - cffi.model.StructOrUnion.__init__
    - extra.lstrip
    - cffi.model.unknown_ptr_type
    - cffi.model.PointerType.__init__
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised:
    - FFIError
    returnType: N/A
  - BBCount: 21
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 11
    EdgeCount: 30
    ICount: 1
    IfCount: 21
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7ff138d7eb20>
    - <ast.Constant object at 0x7ff138d7e760>
    - <ast.Constant object at 0x7ff138d7e9a0>
    argNames:
    - self
    - typenode
    - name
    - partial_length_ok
    - typedef_example
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 597
    functionName: cffi.cparser.Parser._get_type_and_quals
    functionSourceFile: cffi.cparser
    functionUses: 63
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - newnames.append
    - <builtin>.reversed
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - csourcelines.append
    - enumvalues.append
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.model.StructOrUnion.__init__
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - fldquals.append
    - typenames.append
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - _r_float_dotdotdot.sub
    - cffi.cparser.Parser._parse_function_type
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - re.match
    - cffi.cparser.Parser._declare
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - fldbitsize.append
    - cffi.cparser._warn_for_string_literal
    - words_used.add
    - type.as_function_pointer
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - <builtin>.sorted
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse_constant
    - cffi.cparser.Parser._parse
    - <builtin>.list
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised:
    - FFIError
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7ff13853a0a0>
    - <ast.Constant object at 0x7ff13853ae50>
    argNames:
    - self
    - name
    - obj
    - included
    - quals
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 562
    functionName: cffi.cparser.Parser._declare
    functionSourceFile: cffi.cparser
    functionUses: 69
    functionsReached:
    - name.split
    linkageType: pythonLinkage
    raised:
    - FFIError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - key
    - val
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 448
    functionName: cffi.cparser.Parser._add_constants
    functionSourceFile: cffi.cparser
    functionUses: 69
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - FFIError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - int_str
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 456
    functionName: cffi.cparser.Parser._add_integer_constant
    functionSourceFile: cffi.cparser
    functionUses: 9
    functionsReached:
    - cffi.cparser.Parser._add_constants
    - int_str.lower
    - <builtin>.int
    - int_str.startswith
    - name.split
    - cffi.cparser.Parser._declare
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: int_str.lower
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: int_str.startswith
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: macros.items
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: value.strip
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _r_int_literal.match
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - tp
    - quals
    - decl
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 488
    functionName: cffi.cparser.Parser._declare_function
    functionSourceFile: cffi.cparser
    functionUses: 8
    functionsReached:
    - cffi.cparser.Parser._get_type_pointer
    - cffi.model.qualify
    - <builtin>.isinstance
    - cffi.model.NamedPointerType.__init__
    - cffi.model.BaseFunctionType.__init__
    - reprargs.append
    - totype.c_name_with_marker.replace
    - arg._get_c_name
    - extra.lstrip
    - cffi.model.RawFunctionType.as_function_pointer
    - name.split
    - cffi.cparser.Parser._declare
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7ff1385d4490>
    argNames:
    - self
    - type
    - quals
    - declname
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 588
    functionName: cffi.cparser.Parser._get_type_pointer
    functionSourceFile: cffi.cparser
    functionUses: 65
    functionsReached:
    - cffi.model.qualify
    - <builtin>.isinstance
    - cffi.model.NamedPointerType.__init__
    - cffi.model.BaseFunctionType.__init__
    - reprargs.append
    - totype.c_name_with_marker.replace
    - arg._get_c_name
    - extra.lstrip
    - cffi.model.RawFunctionType.as_function_pointer
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 21
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 11
    EdgeCount: 30
    ICount: 11
    IfCount: 21
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7ff1385540d0>
    - <ast.Constant object at 0x7ff138554490>
    argNames:
    - self
    - kind
    - type
    - name
    - nested
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 745
    functionName: cffi.cparser.Parser._get_struct_union_enum_type
    functionSourceFile: cffi.cparser
    functionUses: 63
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - newnames.append
    - <builtin>.reversed
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - csourcelines.append
    - enumvalues.append
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.model.StructOrUnion.__init__
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - fldquals.append
    - typenames.append
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - _r_float_dotdotdot.sub
    - cffi.cparser.Parser._parse_function_type
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - match.group
    - cffi.model.RawFunctionType.as_function_pointer
    - re.match
    - cffi.cparser.Parser._declare
    - parts.append
    - _r_define.finditer
    - <builtin>.int
    - fldbitsize.append
    - cffi.cparser._warn_for_string_literal
    - words_used.add
    - type.as_function_pointer
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - <builtin>.sorted
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse_constant
    - cffi.cparser.Parser._parse
    - <builtin>.list
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised:
    - CDefError
    - AssertionError
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: decl.name.startswith
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - cdecl
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 554
    functionName: cffi.cparser.Parser.parse_type_and_quals
    functionSourceFile: cffi.cparser
    functionUses: 63
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - newnames.append
    - <builtin>.reversed
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - csourcelines.append
    - enumvalues.append
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.model.StructOrUnion.__init__
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - match.groups
    - cffi.cparser.Parser._c_div
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser._get_parser
    - cffi.cparser.Parser._extract_quals
    - name.startswith
    - <builtin>.range
    - cffi.cparser._preprocess
    - line.strip
    - name.split
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - fldquals.append
    - typenames.append
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - _r_float_dotdotdot.sub
    - cffi.cparser.Parser._parse_function_type
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - match.group
    - cffi.model.RawFunctionType.as_function_pointer
    - re.match
    - cffi.cparser.Parser._declare
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - fldbitsize.append
    - cffi.cparser._warn_for_string_literal
    - words_used.add
    - type.as_function_pointer
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - <builtin>.sorted
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised:
    - CDefError
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - type
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 576
    functionName: cffi.cparser.Parser._extract_quals
    functionSourceFile: cffi.cparser
    functionUses: 64
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 235
    functionName: cffi.model.RawFunctionType.as_function_pointer
    functionSourceFile: cffi.model
    functionUses: 66
    functionsReached:
    - arg._get_c_name
    - cffi.model.BaseFunctionType.__init__
    - reprargs.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: type.name.startswith
    functionSourceFile: <builtin>
    functionUses: 66
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7ff1383eeb20>
    argNames:
    - self
    - totype
    - name
    - quals
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 288
    functionName: cffi.model.NamedPointerType.__init__
    functionSourceFile: cffi.model
    functionUses: 68
    functionsReached:
    - cffi.model.qualify
    - totype.c_name_with_marker.replace
    - extra.lstrip
    - cffi.model.PointerType.__init__
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 23
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 12
    EdgeCount: 33
    ICount: 0
    IfCount: 23
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7ff138714c70>
    argNames:
    - self
    - exprnode
    - partial_length_ok
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 870
    functionName: cffi.cparser.Parser._parse_constant
    functionSourceFile: cffi.cparser
    functionUses: 65
    functionsReached:
    - s.lower
    - <builtin>.ord
    - <builtin>.isinstance
    - cffi.cparser.Parser._c_div
    - <builtin>.int
    - <builtin>.len
    - s.rstrip
    - cffi.cparser.Parser._parse_constant
    - s.startswith
    linkageType: pythonLinkage
    raised:
    - CDefError
    - FFIError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: prefixes.get
    functionSourceFile: <builtin>
    functionUses: 64
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: newnames.append
    functionSourceFile: <builtin>
    functionUses: 64
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - parser
    - commontype
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 25
    functionName: cffi.commontypes.resolve_common_type
    functionSourceFile: cffi.commontypes
    functionUses: 63
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - newnames.append
    - <builtin>.reversed
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - csourcelines.append
    - enumvalues.append
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.model.StructOrUnion.__init__
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - match.groups
    - cffi.cparser.Parser._c_div
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser._get_parser
    - cffi.cparser.Parser._extract_quals
    - name.startswith
    - <builtin>.range
    - cffi.cparser._preprocess
    - line.strip
    - name.split
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - fldquals.append
    - typenames.append
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - _r_float_dotdotdot.sub
    - cffi.cparser.Parser._parse_function_type
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - match.group
    - cffi.model.RawFunctionType.as_function_pointer
    - re.match
    - cffi.cparser.Parser._declare
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - fldbitsize.append
    - cffi.cparser._warn_for_string_literal
    - words_used.add
    - type.as_function_pointer
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - <builtin>.sorted
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised:
    - FFIError
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 1
    IfCount: 6
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7ff138d43a00>
    argNames:
    - self
    - typenode
    - funcname
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 702
    functionName: cffi.cparser.Parser._parse_function_type
    functionSourceFile: cffi.cparser
    functionUses: 63
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - newnames.append
    - <builtin>.reversed
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - csourcelines.append
    - enumvalues.append
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.model.StructOrUnion.__init__
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - fldquals.append
    - typenames.append
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - _r_float_dotdotdot.sub
    - cffi.cparser.Parser._parse_function_type
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - match.group
    - cffi.model.RawFunctionType.as_function_pointer
    - re.match
    - cffi.cparser.Parser._declare
    - parts.append
    - _r_define.finditer
    - <builtin>.int
    - fldbitsize.append
    - cffi.cparser._warn_for_string_literal
    - words_used.add
    - type.as_function_pointer
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - <builtin>.sorted
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse_constant
    - cffi.cparser.Parser._parse
    - <builtin>.list
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised:
    - CDefError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: params.pop
    functionSourceFile: <builtin>
    functionUses: 64
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - type
    - quals
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 737
    functionName: cffi.cparser.Parser._as_func_arg
    functionSourceFile: cffi.cparser
    functionUses: 64
    functionsReached:
    - type.as_function_pointer
    - <builtin>.isinstance
    - cffi.model.qualify
    - totype.c_name_with_marker.replace
    - extra.lstrip
    - cffi.model.PointerType.__init__
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7ff138624760>
    argNames:
    - self
    - args
    - result
    - ellipsis
    - abi
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 207
    functionName: cffi.model.BaseFunctionType.__init__
    functionSourceFile: cffi.model
    functionUses: 78
    functionsReached:
    - arg._get_c_name
    - reprargs.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7ff138389c40>
    argNames:
    - self
    - name
    - fldnames
    - fldtypes
    - fldbitsize
    - fldquals
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 351
    functionName: cffi.model.StructOrUnion.__init__
    functionSourceFile: cffi.model
    functionUses: 70
    functionsReached:
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 3
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - explicit_name
    - decls
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 949
    functionName: cffi.cparser.Parser._build_enum_type
    functionSourceFile: cffi.cparser
    functionUses: 64
    functionsReached:
    - s.lower
    - enumerators.append
    - <builtin>.ord
    - <builtin>.isinstance
    - _r_enum_dotdotdot.match
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - cffi.cparser.Parser._add_constants
    - cffi.cparser.Parser._c_div
    - <builtin>.int
    - <builtin>.len
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - enumvalues.append
    - s.rstrip
    - cffi.cparser.Parser._parse_constant
    - s.startswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - forcename
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 502
    functionName: cffi.model.EnumType.force_the_name
    functionSourceFile: cffi.model
    functionUses: 67
    functionsReached:
    - cffi.model.EnumType.force_the_name
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - name.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - nested
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 863
    functionName: cffi.cparser.Parser._make_partial
    functionSourceFile: cffi.cparser
    functionUses: 64
    functionsReached:
    - cffi.model.BaseTypeByIdentity.has_c_name
    - <builtin>.isinstance
    - cffi.model.BaseTypeByIdentity._get_c_name
    linkageType: pythonLinkage
    raised:
    - CDefError
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fldnames.append
    functionSourceFile: <builtin>
    functionUses: 64
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fldtypes.append
    functionSourceFile: <builtin>
    functionUses: 64
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fldbitsize.append
    functionSourceFile: <builtin>
    functionUses: 64
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fldquals.append
    functionSourceFile: <builtin>
    functionUses: 65
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 50
    functionName: cffi.model.BaseTypeByIdentity.has_c_name
    functionSourceFile: cffi.model
    functionUses: 65
    functionsReached:
    - cffi.model.BaseTypeByIdentity._get_c_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: s.rstrip
    functionSourceFile: <builtin>
    functionUses: 66
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: s.lower
    functionSourceFile: <builtin>
    functionUses: 66
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.ord
    functionSourceFile: <builtin>
    functionUses: 70
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - a
    - b
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 943
    functionName: cffi.cparser.Parser._c_div
    functionSourceFile: ''
    functionUses: 66
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _r_enum_dotdotdot.match
    functionSourceFile: <builtin>
    functionUses: 65
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: enumerators.append
    functionSourceFile: <builtin>
    functionUses: 65
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: enumvalues.append
    functionSourceFile: <builtin>
    functionUses: 65
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7ff138123be0>
    argNames:
    - self
    - name
    - enumerators
    - enumvalues
    - baseinttype
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 495
    functionName: cffi.model.EnumType.__init__
    functionSourceFile: cffi.model
    functionUses: 65
    functionsReached:
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: other._declarations.items
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: other._int_constants.items
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7ff138196550>
    argNames:
    - name
    - structname
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 561
    functionName: cffi.model.unknown_type
    functionSourceFile: cffi.model
    functionUses: 9
    functionsReached:
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - cffi.model.EnumType.force_the_name
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - name.replace
    - cffi.model.StructOrUnion.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 181
    functionName: cffi.model.UnknownIntegerType.__init__
    functionSourceFile: ''
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 195
    functionName: cffi.model.UnknownFloatType.__init__
    functionSourceFile: ''
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7ff138437a90>
    argNames:
    - name
    - structname
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 569
    functionName: cffi.model.unknown_ptr_type
    functionSourceFile: cffi.model
    functionUses: 8
    functionsReached:
    - cffi.model.qualify
    - cffi.model.NamedPointerType.__init__
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - totype.c_name_with_marker.replace
    - cffi.model.StructOrUnion.__init__
    - extra.lstrip
    - cffi.model.PointerType.__init__
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: -1
    functionName: cffi.commontypes
    functionSourceFile: cffi.commontypes
    functionUses: 0
    functionsReached:
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - cffi.model.EnumType.force_the_name
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - cffi.model.StructOrUnion.__init__
    - name.replace
    - cffi.model.unknown_type
    - _cffi_backend._get_common_types
    - cffi.commontypes.win_common_types
    - _type.endswith
    - COMMON_TYPES.update
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cffi_backend._get_common_types
    functionSourceFile: _cffi_backend
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _type.endswith
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: COMMON_TYPES.get
    functionSourceFile: <builtin>
    functionUses: 64
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 160
    functionName: cffi.model.PrimitiveType.__init__
    functionSourceFile: ''
    functionUses: 67
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 55
    functionName: cffi.commontypes.win_common_types
    functionSourceFile: cffi.commontypes
    functionUses: 1
    functionsReached:
    - cffi.model.StructOrUnion.__init__
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: COMMON_TYPES.update
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: -1
    functionName: cffi.model
    functionSourceFile: cffi.model
    functionUses: 0
    functionsReached:
    - _dummy_thread.allocate_lock
    - dummy_thread.allocate_lock
    - cffi.model.qualify
    - cffi.model.VoidType.__init__
    - cffi.model.ArrayType.__init__
    - weakref.WeakValueDictionary
    - totype.c_name_with_marker.replace
    - cffi.model.ConstPointerType
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - _thread.allocate_lock
    - thread.allocate_lock
    - cffi.model.PointerType.__init__
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - quals
    - replace_with
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 12
    functionName: cffi.model.qualify
    functionSourceFile: cffi.model
    functionUses: 128
    functionsReached:
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: replace_with.lstrip
    functionSourceFile: <builtin>
    functionUses: 129
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: result.count
    functionSourceFile: <builtin>
    functionUses: 53
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: result.replace
    functionSourceFile: <builtin>
    functionUses: 53
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 47
    functionName: cffi.model.BaseTypeByIdentity._get_c_name
    functionSourceFile: cffi.model
    functionUses: 67
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 53
    functionName: cffi.model.BaseTypeByIdentity.is_integer_type
    functionSourceFile: cffi.model
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - ffi
    - finishlist
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 16
    functionLinenumber: 512
    functionName: cffi.model.EnumType.build_backend_type
    functionSourceFile: cffi.model
    functionUses: 50
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - <builtin>.range
    - name.startswith
    - cffi.cparser.Parser._extract_quals
    - cffi.cparser._get_parser
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.EnumType.check_not_partial
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - <builtin>.max
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.ArrayType.length_is_unknown
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - <builtin>.min
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - ffi
    - finishlist
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 199
    functionName: cffi.model.UnknownFloatType.build_backend_type
    functionSourceFile: ''
    functionUses: 51
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - ffi
    - finishlist
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 91
    functionName: cffi.model.VoidType.build_backend_type
    functionSourceFile: cffi.model
    functionUses: 51
    functionsReached:
    - cache.get
    - cffi.model.global_cache
    - kwds.pop
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - ffi
    - finishlist
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 15
    functionLinenumber: 317
    functionName: cffi.model.ArrayType.build_backend_type
    functionSourceFile: cffi.model
    functionUses: 50
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.EnumType.check_not_partial
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - <builtin>.max
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.ArrayType.length_is_unknown
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - <builtin>.min
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised:
    - CDefError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - ffi
    - finishlist
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 242
    functionName: cffi.model.FunctionPtrType.build_backend_type
    functionSourceFile: cffi.model
    functionUses: 51
    functionsReached:
    - args.append
    - cache.get
    - cffi.model.global_cache
    - <builtin>.getattr
    - tp.get_cached_btype
    - <builtin>.tuple
    - kwds.pop
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - ffi
    - finishlist
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 174
    functionName: cffi.model.PrimitiveType.build_backend_type
    functionSourceFile: cffi.model
    functionUses: 51
    functionsReached:
    - cache.get
    - cffi.model.global_cache
    - kwds.pop
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - ffi
    - finishlist
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 231
    functionName: cffi.model.RawFunctionType.build_backend_type
    functionSourceFile: ''
    functionUses: 51
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - CDefError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - ffi
    - finishlist
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 15
    functionLinenumber: 273
    functionName: cffi.model.PointerType.build_backend_type
    functionSourceFile: cffi.model
    functionUses: 50
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - <builtin>.range
    - name.startswith
    - cffi.cparser.Parser._extract_quals
    - cffi.cparser._get_parser
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.EnumType.check_not_partial
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - tp.get_cached_btype
    - cffi.model.PrimitiveType.build_backend_type
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - <builtin>.max
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.ArrayType.length_is_unknown
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - <builtin>.min
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - ffi
    - finishlist
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 188
    functionName: cffi.model.UnknownIntegerType.build_backend_type
    functionSourceFile: ''
    functionUses: 51
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ffi._cached_btypes.setdefault
    functionSourceFile: <builtin>
    functionUses: 51
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 65
    functionName: cffi.model.BaseTypeByIdentity.__repr__
    functionSourceFile: cffi.model
    functionUses: 0
    functionsReached:
    - cffi.model.BaseTypeByIdentity._get_c_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 74
    functionName: cffi.model.BaseType.__eq__
    functionSourceFile: cffi.model
    functionUses: 0
    functionsReached:
    - cffi.model.BaseTypeByIdentity._get_items
    - <builtin>.getattr
    - other._get_items
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: other._get_items
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 78
    functionName: cffi.model.BaseType.__ne__
    functionSourceFile: cffi.model
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 81
    functionName: cffi.model.BaseType.__hash__
    functionSourceFile: cffi.model
    functionUses: 0
    functionsReached:
    - <builtin>.hash
    - cffi.model.BaseTypeByIdentity._get_items
    - <builtin>.tuple
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.hash
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 88
    functionName: cffi.model.VoidType.__init__
    functionSourceFile: cffi.model
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - srctype
    - ffi
    - funcname
    - args
    - kwds
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 590
    functionName: cffi.model.global_cache
    functionSourceFile: cffi.model
    functionUses: 58
    functionsReached:
    - cache.get
    - kwds.pop
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 98
    functionName: cffi.model.BasePrimitiveType.is_complex_type
    functionSourceFile: cffi.model
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 165
    functionName: cffi.model.PrimitiveType.is_char_type
    functionSourceFile: cffi.model
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 167
    functionName: cffi.model.PrimitiveType.is_integer_type
    functionSourceFile: cffi.model
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 169
    functionName: cffi.model.PrimitiveType.is_float_type
    functionSourceFile: cffi.model
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 185
    functionName: cffi.model.UnknownIntegerType.is_integer_type
    functionSourceFile: cffi.model
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: arg._get_c_name
    functionSourceFile: <builtin>
    functionUses: 79
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: reprargs.append
    functionSourceFile: <builtin>
    functionUses: 79
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tp.get_cached_btype
    functionSourceFile: <builtin>
    functionUses: 52
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: args.append
    functionSourceFile: <builtin>
    functionUses: 52
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: extra.lstrip
    functionSourceFile: <builtin>
    functionUses: 90
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: totype.c_name_with_marker.replace
    functionSourceFile: <builtin>
    functionUses: 90
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7ff138d55a00>
    argNames:
    - self
    - ffi
    - finishlist
    - can_delay
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 14
    functionLinenumber: 397
    functionName: cffi.model.StructOrUnion.get_cached_btype
    functionSourceFile: cffi.model
    functionUses: 50
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - <builtin>.range
    - cffi.cparser.Parser._extract_quals
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.EnumType.check_not_partial
    - match.group
    - cffi.model.RawFunctionType.as_function_pointer
    - re.match
    - cffi.cparser.Parser._declare
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - tp.get_cached_btype
    - cffi.model.PrimitiveType.build_backend_type
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - <builtin>.max
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.ArrayType.length_is_unknown
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - <builtin>.min
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - totype
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 279
    functionName: cffi.model.ConstPointerType
    functionSourceFile: cffi.model
    functionUses: 1
    functionsReached:
    - cffi.model.qualify
    - totype.c_name_with_marker.replace
    - extra.lstrip
    - cffi.model.PointerType.__init__
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 311
    functionName: cffi.model.ArrayType.length_is_unknown
    functionSourceFile: cffi.model
    functionUses: 51
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - newlength
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 314
    functionName: cffi.model.ArrayType.resolve_length
    functionSourceFile: cffi.model
    functionUses: 0
    functionsReached:
    - cffi.model.ArrayType.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 332
    functionName: cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    functionSourceFile: cffi.model
    functionUses: 74
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - forcename
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 336
    functionName: cffi.model.StructOrUnionOrEnum.force_the_name
    functionSourceFile: cffi.model
    functionUses: 0
    functionsReached:
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 340
    functionName: cffi.model.StructOrUnionOrEnum.get_official_name
    functionSourceFile: cffi.model
    functionUses: 69
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7ff1387032e0>
    argNames:
    - self
    - expand_anonymous_struct_union
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 365
    functionName: cffi.model.StructOrUnion.enumfields
    functionSourceFile: cffi.model
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.zip
    - type.enumfields
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: type.enumfields
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 379
    functionName: cffi.model.StructOrUnion.force_flatten
    functionSourceFile: cffi.model
    functionUses: 0
    functionsReached:
    - types.append
    - bitsizes.append
    - <builtin>.isinstance
    - <builtin>.zip
    - <builtin>.len
    - fldquals.append
    - <builtin>.tuple
    - cffi.model.StructOrUnion.enumfields
    - type.enumfields
    - names.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: names.append
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: types.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: bitsizes.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 5
    IfCount: 10
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - ffi
    - finishlist
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 404
    functionName: cffi.model.StructOrUnion.finish_backend_type
    functionSourceFile: cffi.model
    functionUses: 50
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - cffi.model.EnumType.build_baseinttype
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - <builtin>.range
    - name.startswith
    - cffi.cparser.Parser._extract_quals
    - cffi.cparser._get_parser
    - cffi.cparser._preprocess
    - line.strip
    - name.split
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - match.group
    - cffi.model.RawFunctionType.as_function_pointer
    - cffi.model.EnumType.check_not_partial
    - re.match
    - cffi.cparser.Parser._declare
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - tp.get_cached_btype
    - cffi.model.PrimitiveType.build_backend_type
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _cffi_backend.complete_struct_or_union
    functionSourceFile: _cffi_backend
    functionUses: 51
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ftype.length_is_unknown
    functionSourceFile: <builtin>
    functionUses: 51
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ftype.item.get_cached_btype
    functionSourceFile: <builtin>
    functionUses: 51
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.divmod
    functionSourceFile: <builtin>
    functionUses: 51
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - msg
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 467
    functionName: cffi.model.StructOrUnion._verification_error
    functionSourceFile: ''
    functionUses: 51
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - VerificationError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ftype.resolve_length
    functionSourceFile: <builtin>
    functionUses: 51
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ftype.get_cached_btype
    functionSourceFile: <builtin>
    functionUses: 51
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 470
    functionName: cffi.model.StructOrUnion.check_not_partial
    functionSourceFile: cffi.model
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - VerificationMissing
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - ffi
    - finishlist
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 474
    functionName: cffi.model.StructOrUnion.build_backend_type
    functionSourceFile: cffi.model
    functionUses: 0
    functionsReached:
    - cache.get
    - cffi.model.global_cache
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - <builtin>.getattr
    - cffi.model.StructOrUnion.check_not_partial
    - finishlist.append
    - kwds.pop
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: finishlist.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: name.replace
    functionSourceFile: <builtin>
    functionUses: 74
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 508
    functionName: cffi.model.EnumType.check_not_partial
    functionSourceFile: cffi.model
    functionUses: 51
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - VerificationMissing
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 2
    IfCount: 5
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - ffi
    - finishlist
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 15
    functionLinenumber: 520
    functionName: cffi.model.EnumType.build_baseinttype
    functionSourceFile: cffi.model
    functionUses: 50
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.EnumType.check_not_partial
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - <builtin>.max
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.ArrayType.length_is_unknown
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - <builtin>.min
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised:
    - CDefError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.min
    functionSourceFile: <builtin>
    functionUses: 51
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: __warningregistry__.clear
    functionSourceFile: <builtin>
    functionUses: 51
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: weakref.WeakValueDictionary
    functionSourceFile: weakref
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kwds.pop
    functionSourceFile: <builtin>
    functionUses: 62
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cache.get
    functionSourceFile: <builtin>
    functionUses: 59
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cffi.lock
    functionSourceFile: cffi.lock
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cffi.verifier
    functionSourceFile: cffi.verifier
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 15
    functionName: cffi.verifier._extension_suffixes
    functionSourceFile: cffi.verifier
    functionUses: 6
    functionsReached:
    - imp.get_suffixes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: imp.get_suffixes
    functionSourceFile: imp
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - s
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 24
    functionName: cffi.verifier.NativeIO.write
    functionSourceFile: cffi.verifier
    functionUses: 0
    functionsReached:
    - s.encode
    - <builtin>.super
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - x
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 114
    functionName: cffi.ffiplatform.flatten
    functionSourceFile: cffi.ffiplatform
    functionUses: 2
    functionsReached:
    - cffi.ffiplatform._flatten
    - <builtin>.isinstance
    - f.write
    - <builtin>.len
    - x.keys
    - io.StringIO
    - f.getvalue
    - <builtin>.sorted
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - ffi
    - force_generic_engine
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 223
    functionName: cffi.verifier._locate_engine_class
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - verifier
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 15
    functionName: cffi.vengine_gen.VGenericEngine.__init__
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - verifier
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 14
    functionName: cffi.vengine_cpy.VCPythonEngine.__init__
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - kwds
    - relative_to
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 132
    functionName: cffi.verifier.Verifier.make_relative_to
    functionSourceFile: cffi.verifier
    functionUses: 2
    functionsReached:
    - kwds.copy
    - os.path.join
    - <builtin>.isinstance
    - os.path.dirname
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: key.encode
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: binascii.crc32
    functionSourceFile: binascii
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.hex
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: k1.lstrip
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: k2.lstrip
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 293
    functionName: cffi.verifier._get_so_suffixes
    functionSourceFile: cffi.verifier
    functionUses: 5
    functionsReached:
    - imp.get_suffixes
    - cffi.verifier._extension_suffixes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7ff138329c10>
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 73
    functionName: cffi.verifier.Verifier.write_source
    functionSourceFile: cffi.verifier
    functionUses: 0
    functionsReached:
    - <builtin>.open
    - cffi.verifier._ensure_dir
    - os.makedirs
    - os.path.dirname
    - cffi.verifier.Verifier._write_source_to
    - fp.read
    - io.StringIO
    - os.path.isdir
    - fp.write
    - io.StringIO.getvalue
    - os.path.exists
    - cffi.verifier.Verifier._write_source
    linkageType: pythonLinkage
    raised:
    - VerificationError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7ff138516fa0>
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 174
    functionName: cffi.verifier.Verifier._write_source
    functionSourceFile: cffi.verifier
    functionUses: 7
    functionsReached:
    - <builtin>.open
    - os.makedirs
    - cffi.verifier._ensure_dir
    - os.path.dirname
    - cffi.verifier.Verifier._write_source_to
    - fp.read
    - io.StringIO
    - os.path.isdir
    - fp.write
    - io.StringIO.getvalue
    - os.path.exists
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 82
    functionName: cffi.verifier.Verifier.compile_module
    functionSourceFile: cffi.verifier
    functionUses: 0
    functionsReached:
    - <builtin>.open
    - os.makedirs
    - names.reverse
    - cffi.verifier.Verifier._write_source_to
    - cffi.verifier.Verifier._compile_module
    - os.path.split
    - fp.read
    - cffi.ffiplatform._build
    - os.path.exists
    - basename.endswith
    - distutils.core.Distribution.run_command
    - distutils.core.Distribution.get_command_obj
    - os.path.dirname
    - cffi.ffiplatform.compile
    - os.path.isabs
    - os.path.samefile
    - os.path.normpath
    - distutils.core.Extension
    - os.environ.copy
    - cffi.ffiplatform.get_extension
    - allsources.append
    - shutil.move
    - basename.split
    - cffi.ffiplatform.maybe_relative_path
    - cffi.verifier.Verifier.get_module_name
    - io.StringIO
    - io.StringIO.getvalue
    - cffi.ffiplatform._hack_at_distutils
    - cffi.verifier.Verifier._write_source
    - os.path.basename
    - cffi.verifier._ensure_dir
    - distutils.log.set_threshold
    - <builtin>.hasattr
    - os.path.abspath
    - distutils.log.set_verbosity
    - os.environ.get
    - saved_environ.items
    - distutils.core.Distribution
    - cffi.verifier.Verifier.get_extension
    - os.path.isdir
    - cmd_obj.get_outputs
    - distutils.core.Distribution.parse_config_files
    - os.path.join
    - fp.write
    - cffi.ffiplatform.samefile
    - names.append
    - distutils.core.Distribution.get_option_dict
    linkageType: pythonLinkage
    raised:
    - VerificationError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 199
    functionName: cffi.verifier.Verifier._compile_module
    functionSourceFile: cffi.verifier
    functionUses: 3
    functionsReached:
    - <builtin>.open
    - os.makedirs
    - names.reverse
    - cffi.verifier.Verifier._write_source_to
    - os.path.split
    - fp.read
    - cffi.ffiplatform._build
    - os.path.exists
    - basename.endswith
    - distutils.core.Distribution.run_command
    - distutils.core.Distribution.get_command_obj
    - os.path.dirname
    - cffi.ffiplatform.compile
    - os.path.isabs
    - os.path.samefile
    - os.path.normpath
    - distutils.core.Extension
    - os.environ.copy
    - cffi.ffiplatform.get_extension
    - allsources.append
    - shutil.move
    - basename.split
    - cffi.ffiplatform.maybe_relative_path
    - cffi.verifier.Verifier.get_module_name
    - io.StringIO
    - io.StringIO.getvalue
    - cffi.ffiplatform._hack_at_distutils
    - cffi.verifier.Verifier._write_source
    - os.path.basename
    - cffi.verifier._ensure_dir
    - distutils.log.set_threshold
    - <builtin>.hasattr
    - os.path.abspath
    - distutils.log.set_verbosity
    - os.environ.get
    - saved_environ.items
    - distutils.core.Distribution
    - cffi.verifier.Verifier.get_extension
    - os.path.isdir
    - cmd_obj.get_outputs
    - distutils.core.Distribution.parse_config_files
    - os.path.join
    - fp.write
    - cffi.ffiplatform.samefile
    - names.append
    - distutils.core.Distribution.get_option_dict
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 148
    functionName: cffi.verifier.Verifier._locate_module
    functionSourceFile: cffi.verifier
    functionUses: 2
    functionsReached:
    - os.path.basename
    - <builtin>.hasattr
    - os.path.isfile
    - basename.split
    - cffi.verifier._extension_suffixes
    - cffi.verifier.Verifier.get_module_name
    - imp.get_suffixes
    - cffi.verifier._get_so_suffixes
    - basename.endswith
    - <builtin>.__import__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 212
    functionName: cffi.verifier.Verifier._load_library
    functionSourceFile: ''
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 108
    functionName: cffi.verifier.Verifier.get_module_name
    functionSourceFile: cffi.verifier
    functionUses: 10
    functionsReached:
    - basename.split
    - os.path.basename
    - basename.endswith
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.basename
    functionSourceFile: os
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: basename.split
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: basename.endswith
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 119
    functionName: cffi.ffiplatform._hack_at_distutils
    functionSourceFile: ''
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - path
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 68
    functionName: cffi.ffiplatform.maybe_relative_path
    functionSourceFile: cffi.ffiplatform
    functionUses: 6
    functionsReached:
    - names.reverse
    - os.path.isabs
    - os.path.split
    - os.path.join
    - os.path.samefile
    - names.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 129
    functionName: cffi.verifier.Verifier.generates_python_module
    functionSourceFile: cffi.verifier
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: kwds.copy
    functionSourceFile: <builtin>
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.isfile
    functionSourceFile: os
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.__import__
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 167
    functionName: cffi.verifier.Verifier._write_source_to
    functionSourceFile: cffi.verifier
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.exists
    functionSourceFile: os
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fp.read
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - filename
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 304
    functionName: cffi.verifier._ensure_dir
    functionSourceFile: cffi.verifier
    functionUses: 8
    functionsReached:
    - os.path.isdir
    - os.makedirs
    - os.path.dirname
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fp.write
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - f1
    - f2
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 65
    functionName: cffi.ffiplatform.samefile
    functionSourceFile: cffi.ffiplatform
    functionUses: 4
    functionsReached:
    - os.path.abspath
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: shutil.move
    functionSourceFile: shutil
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.environ.get
    functionSourceFile: os
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sys._getframe
    functionSourceFile: sys
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - dirname
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 257
    functionName: cffi.verifier.set_tmpdir
    functionSourceFile: cffi.verifier
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7ff13816ab80>
    - <ast.Constant object at 0x7ff13816a250>
    argNames:
    - tmpdir
    - keep_so
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 262
    functionName: cffi.verifier.cleanup_tmpdir
    functionSourceFile: cffi.verifier
    functionUses: 0
    functionsReached:
    - sys._getframe
    - cffi.verifier._caller_dir_pycache
    - os.path.dirname
    - os.path.abspath
    - cffi.verifier._extension_suffixes
    - os.environ.get
    - os.unlink
    - os.path.isdir
    - clean_dir.append
    - os.path.join
    - imp.get_suffixes
    - cffi.verifier._get_so_suffixes
    - os.listdir
    - fn.lower
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.listdir
    functionSourceFile: os
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fn.lower
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.isdir
    functionSourceFile: os
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: clean_dir.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cffi.vengine_cpy
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwds
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 20
    functionName: cffi.vengine_cpy.VCPythonEngine.patch_extension_kwds
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - module_name
    - path
    - so_suffixes
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 23
    functionName: cffi.vengine_cpy.VCPythonEngine.find_module
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached:
    - <builtin>.open
    - <builtin>.isinstance
    - os.path.isfile
    - <builtin>.type
    - cffi._imp_emulation.find_module
    - _imp.is_builtin
    - f.close
    - os.path.join
    - cffi._imp_emulation.get_suffixes
    - tokenize.detect_encoding
    - _imp.is_frozen
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 0
    IfCount: 8
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7ff13817df10>
    argNames:
    - name
    - path
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 39
    functionName: cffi._imp_emulation.find_module
    functionSourceFile: cffi._imp_emulation
    functionUses: 1
    functionsReached:
    - <builtin>.open
    - <builtin>.isinstance
    - os.path.isfile
    - <builtin>.type
    - _imp.is_builtin
    - os.path.join
    - cffi._imp_emulation.get_suffixes
    - tokenize.detect_encoding
    - _imp.is_frozen
    linkageType: pythonLinkage
    raised:
    - TypeError
    - RuntimeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: f.close
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 37
    functionName: cffi.vengine_cpy.VCPythonEngine.collect_types
    functionSourceFile: cffi.vengine_cpy
    functionUses: 1
    functionsReached:
    - cffi.vengine_cpy.VCPythonEngine._generate
    - cffi.model.attach_exception_info
    - <builtin>.type
    - <builtin>.getattr
    - lst.sort
    - name.split
    - cffi.vengine_cpy.VCPythonEngine._get_declarations
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - step_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 210
    functionName: cffi.vengine_cpy.VCPythonEngine._generate
    functionSourceFile: cffi.vengine_cpy
    functionUses: 2
    functionsReached:
    - lst.sort
    - <builtin>.type
    - <builtin>.getattr
    - cffi.model.attach_exception_info
    - name.split
    - cffi.vengine_cpy.VCPythonEngine._get_declarations
    linkageType: pythonLinkage
    raised:
    - VerificationError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7ff136e17970>
    argNames:
    - self
    - what
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 41
    functionName: cffi.vengine_cpy.VCPythonEngine._prnt
    functionSourceFile: cffi.vengine_cpy
    functionUses: 20
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - type
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 44
    functionName: cffi.vengine_cpy.VCPythonEngine._gettypenum
    functionSourceFile: cffi.vengine_cpy
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - tp
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 48
    functionName: cffi.vengine_cpy.VCPythonEngine._do_collect_type
    functionSourceFile: cffi.vengine_cpy
    functionUses: 3
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 54
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 55
    functionName: cffi.vengine_cpy.VCPythonEngine.write_source_to_f
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached:
    - os.path.basename
    - <builtin>.hasattr
    - cffi.vengine_cpy.VCPythonEngine._get_declarations
    - cffi.vengine_cpy.VCPythonEngine._prnt
    - cffi.vengine_cpy.VCPythonEngine._generate
    - <builtin>.type
    - cffi.vengine_cpy.VCPythonEngine._generate_setup_custom
    - basename.split
    - <builtin>.getattr
    - cffi.vengine_cpy.VCPythonEngine.collect_types
    - cffi.verifier.Verifier.get_module_name
    - lst.sort
    - name.split
    - cffi.model.attach_exception_info
    - basename.endswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 808
    functionName: cffi.vengine_cpy.VCPythonEngine._generate_setup_custom
    functionSourceFile: cffi.vengine_cpy
    functionUses: 1
    functionsReached:
    - cffi.vengine_cpy.VCPythonEngine._prnt
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 7
    IfCount: 4
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7ff138b85d00>
    argNames:
    - self
    - flags
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 146
    functionName: cffi.vengine_cpy.VCPythonEngine.load_library
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - basename.endswith
    - importlib.machinery.ExtensionFileLoader
    - <builtin>.list
    - cffi.vengine_cpy.VCPythonEngine._load
    - cffi._imp_emulation.acquire_lock
    - <builtin>.dict
    - lst.sort
    - sys.setdlopenflags
    - sys.getdlopenflags
    - basename.split
    - <builtin>.type
    - <builtin>.len
    - warnings.warn
    - cffi.verifier.Verifier.get_module_name
    - <builtin>.map
    - cffi._imp_emulation.release_lock
    - <builtin>.range
    - importlib.machinery.ModuleSpec
    - name.split
    - cffi.vengine_cpy.VCPythonEngine._get_declarations
    - importlib._bootstrap._load
    - os.path.basename
    - <builtin>.hasattr
    - importlib._bootstrap._load._cffi_setup
    - cffi.model.attach_exception_info
    - cffi._imp_emulation.load_dynamic
    linkageType: pythonLinkage
    raised:
    - VerificationError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cffi._imp_emulation.acquire_lock
    functionSourceFile: cffi
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sys.getdlopenflags
    functionSourceFile: sys
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: sys.setdlopenflags
    functionSourceFile: sys
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7ff138b134c0>
    argNames:
    - name
    - path
    - file
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 80
    functionName: cffi._imp_emulation.load_dynamic
    functionSourceFile: cffi._imp_emulation
    functionUses: 1
    functionsReached:
    - importlib.machinery.ExtensionFileLoader
    - importlib.machinery.ModuleSpec
    - importlib._bootstrap._load
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cffi._imp_emulation.release_lock
    functionSourceFile: cffi
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - module
    - step_name
    - kwds
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 225
    functionName: cffi.vengine_cpy.VCPythonEngine._load
    functionSourceFile: cffi.vengine_cpy
    functionUses: 1
    functionsReached:
    - lst.sort
    - <builtin>.type
    - <builtin>.getattr
    - cffi.model.attach_exception_info
    - name.split
    - cffi.vengine_cpy.VCPythonEngine._get_declarations
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 187
    functionName: cffi.vengine_cpy.VCPythonEngine.load_library.FFILibrary.__dir__
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached:
    - <builtin>.list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: importlib._bootstrap._load._cffi_setup
    functionSourceFile: importlib
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 204
    functionName: cffi.vengine_cpy.VCPythonEngine._get_declarations
    functionSourceFile: cffi.vengine_cpy
    functionUses: 5
    functionsReached:
    - lst.sort
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 235
    functionName: cffi.vengine_cpy.VCPythonEngine._generate_nothing
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    - module
    - kwds
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 238
    functionName: cffi.vengine_cpy.VCPythonEngine._loaded_noop
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 6
    IfCount: 5
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - tp
    - fromvar
    - tovar
    - errcode
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 243
    functionName: cffi.vengine_cpy.VCPythonEngine._convert_funcarg_to_c
    functionSourceFile: cffi.vengine_cpy
    functionUses: 1
    functionsReached:
    - tp.name.replace
    - <builtin>.isinstance
    - tp.is_integer_type
    - tp.get_c_name
    - cffi.vengine_cpy.VCPythonEngine._prnt
    - cffi.vengine_cpy.VCPythonEngine._gettypenum
    - cffi.vengine_cpy.VCPythonEngine._convert_funcarg_to_c_ptr_or_array
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 8
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - tp
    - fromvar
    - tovar
    - errcode
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 286
    functionName: cffi.vengine_cpy.VCPythonEngine._convert_funcarg_to_c_ptr_or_array
    functionSourceFile: cffi.vengine_cpy
    functionUses: 2
    functionsReached:
    - cffi.vengine_cpy.VCPythonEngine._prnt
    - cffi.vengine_cpy.VCPythonEngine._gettypenum
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - tp
    - localvars
    - freelines
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 279
    functionName: cffi.vengine_cpy.VCPythonEngine._extra_local_variables
    functionSourceFile: cffi.vengine_cpy
    functionUses: 1
    functionsReached:
    - localvars.add
    - freelines.add
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 0
    IfCount: 8
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - tp
    - var
    - context
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 299
    functionName: cffi.vengine_cpy.VCPythonEngine._convert_expr_from_c
    functionSourceFile: cffi.vengine_cpy
    functionUses: 7
    functionsReached:
    - tp.name.replace
    - cffi.model.qualify
    - <builtin>.isinstance
    - totype.c_name_with_marker.replace
    - cffi.model.UnknownIntegerType.is_integer_type
    - cffi.vengine_cpy.VCPythonEngine._gettypenum
    - extra.lstrip
    - cffi.model.PrimitiveType.is_integer_type
    - cffi.model.PointerType.__init__
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised:
    - TypeError
    - NotImplementedError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 338
    functionName: cffi.vengine_cpy.VCPythonEngine._generate_cpy_function_collecttype
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - cffi.vengine_cpy.VCPythonEngine._do_collect_type
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 11
    ICount: 32
    IfCount: 7
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 349
    functionName: cffi.vengine_cpy.VCPythonEngine._generate_cpy_function_decl
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached:
    - tp.result.get_c_name
    - cffi.vengine_cpy.VCPythonEngine._convert_expr_from_c
    - cffi.vengine_cpy.VCPythonEngine._convert_funcarg_to_c_ptr_or_array
    - <builtin>.enumerate
    - replace_with.lstrip
    - tp.is_integer_type
    - tp.get_c_name
    - freelines.add
    - type.get_c_name
    - tp.name.replace
    - cffi.vengine_cpy.VCPythonEngine._check_int_constant_value
    - <builtin>.len
    - cffi.model.UnknownIntegerType.is_integer_type
    - cffi.vengine_cpy.VCPythonEngine._generate_cpy_const
    - <builtin>.range
    - cffi.vengine_cpy.VCPythonEngine._extra_local_variables
    - <builtin>.set
    - localvars.add
    - cffi.vengine_cpy.VCPythonEngine._convert_funcarg_to_c
    - cffi.model.qualify
    - <builtin>.isinstance
    - cffi.vengine_cpy.VCPythonEngine._prnt
    - totype.c_name_with_marker.replace
    - cffi.vengine_cpy.VCPythonEngine._gettypenum
    - extra.lstrip
    - cffi.model.PrimitiveType.is_integer_type
    - cffi.model.PointerType.__init__
    - <builtin>.sorted
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 25
    IfCount: 5
    argCount: 9
    argDefaultValues:
    - <ast.Constant object at 0x7ff1382d75b0>
    - <ast.Constant object at 0x7ff1382d7340>
    - <ast.Constant object at 0x7ff1382d7af0>
    - <ast.Constant object at 0x7ff1382d7f40>
    - <ast.Constant object at 0x7ff1382d7730>
    - <ast.Constant object at 0x7ff1382d7df0>
    argNames:
    - self
    - is_int
    - name
    - tp
    - category
    - vartp
    - delayed
    - size_too
    - check_value
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 615
    functionName: cffi.vengine_cpy.VCPythonEngine._generate_cpy_const
    functionSourceFile: cffi.vengine_cpy
    functionUses: 6
    functionsReached:
    - tp.name.replace
    - cffi.model.qualify
    - <builtin>.isinstance
    - cffi.vengine_cpy.VCPythonEngine._check_int_constant_value
    - cffi.vengine_cpy.VCPythonEngine._prnt
    - totype.c_name_with_marker.replace
    - cffi.model.UnknownIntegerType.is_integer_type
    - cffi.vengine_cpy.VCPythonEngine._convert_expr_from_c
    - cffi.vengine_cpy.VCPythonEngine._gettypenum
    - extra.lstrip
    - cffi.model.PrimitiveType.is_integer_type
    - cffi.model.PointerType.__init__
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 429
    functionName: cffi.vengine_cpy.VCPythonEngine._generate_cpy_function_method
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached:
    - cffi.vengine_cpy.VCPythonEngine._prnt
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    - module
    - library
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 443
    functionName: cffi.vengine_cpy.VCPythonEngine._loaded_cpy_function
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached:
    - <builtin>.setattr
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 454
    functionName: cffi.vengine_cpy.VCPythonEngine._generate_cpy_struct_decl
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - cffi.vengine_cpy.VCPythonEngine._prnt
    - <builtin>.str
    - cffi.vengine_cpy.VCPythonEngine._generate_struct_or_union_decl
    - ftype._get_c_name
    - ftype.get_c_name
    - tp.enumfields
    - ftype.is_integer_type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 27
    IfCount: 4
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - tp
    - prefix
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 475
    functionName: cffi.vengine_cpy.VCPythonEngine._generate_struct_or_union_decl
    functionSourceFile: cffi.vengine_cpy
    functionUses: 3
    functionsReached:
    - <builtin>.isinstance
    - cffi.vengine_cpy.VCPythonEngine._prnt
    - <builtin>.str
    - ftype.get_c_name
    - ftype._get_c_name
    - tp.enumfields
    - ftype.is_integer_type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 457
    functionName: cffi.vengine_cpy.VCPythonEngine._generate_cpy_struct_method
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached:
    - cffi.vengine_cpy.VCPythonEngine._prnt
    - cffi.vengine_cpy.VCPythonEngine._generate_struct_or_union_method
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - tp
    - prefix
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 526
    functionName: cffi.vengine_cpy.VCPythonEngine._generate_struct_or_union_method
    functionSourceFile: cffi.vengine_cpy
    functionUses: 3
    functionsReached:
    - cffi.vengine_cpy.VCPythonEngine._prnt
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    - module
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 459
    functionName: cffi.vengine_cpy.VCPythonEngine._loading_cpy_struct
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.getattr
    - tp.force_flatten
    - cffi.vengine_cpy.VCPythonEngine._loading_struct_or_union
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - tp
    - prefix
    - name
    - module
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 533
    functionName: cffi.vengine_cpy.VCPythonEngine._loading_struct_or_union
    functionSourceFile: cffi.vengine_cpy
    functionUses: 3
    functionsReached:
    - <builtin>.isinstance
    - tp.force_flatten
    - <builtin>.len
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    - module
    - kwds
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 16
    functionLinenumber: 461
    functionName: cffi.vengine_cpy.VCPythonEngine._loaded_cpy_struct
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - _cffi_backend.alignof
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - cffi.api.FFI.offsetof
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - tp.enumfields
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.vengine_cpy.VCPythonEngine._loaded_struct_or_union.check
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.RawFunctionType.as_function_pointer
    - cffi.model.EnumType.check_not_partial
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - cffi.api.FFI.alignof
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - cffi.vengine_cpy.VCPythonEngine._loaded_struct_or_union
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - <builtin>.max
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - cffi.api.FFI._typeoffsetof
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - <builtin>.min
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - _cffi_backend.typeoffsetof
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 5
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - tp
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 15
    functionLinenumber: 554
    functionName: cffi.vengine_cpy.VCPythonEngine._loaded_struct_or_union
    functionSourceFile: cffi.vengine_cpy
    functionUses: 3
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - _cffi_backend.alignof
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - cffi.api.FFI.offsetof
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - tp.enumfields
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.vengine_cpy.VCPythonEngine._loaded_struct_or_union.check
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.RawFunctionType.as_function_pointer
    - cffi.model.EnumType.check_not_partial
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - cffi.api.FFI.alignof
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - <builtin>.max
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - cffi.api.FFI._typeoffsetof
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - <builtin>.min
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - _cffi_backend.typeoffsetof
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 465
    functionName: cffi.vengine_cpy.VCPythonEngine._generate_cpy_union_decl
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - cffi.vengine_cpy.VCPythonEngine._prnt
    - <builtin>.str
    - cffi.vengine_cpy.VCPythonEngine._generate_struct_or_union_decl
    - ftype._get_c_name
    - ftype.get_c_name
    - tp.enumfields
    - ftype.is_integer_type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 468
    functionName: cffi.vengine_cpy.VCPythonEngine._generate_cpy_union_method
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached:
    - cffi.vengine_cpy.VCPythonEngine._prnt
    - cffi.vengine_cpy.VCPythonEngine._generate_struct_or_union_method
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    - module
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 470
    functionName: cffi.vengine_cpy.VCPythonEngine._loading_cpy_union
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.getattr
    - tp.force_flatten
    - cffi.vengine_cpy.VCPythonEngine._loading_struct_or_union
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    - module
    - kwds
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 16
    functionLinenumber: 472
    functionName: cffi.vengine_cpy.VCPythonEngine._loaded_cpy_union
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - _cffi_backend.alignof
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - cffi.api.FFI.offsetof
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - tp.enumfields
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.vengine_cpy.VCPythonEngine._loaded_struct_or_union.check
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.RawFunctionType.as_function_pointer
    - cffi.model.EnumType.check_not_partial
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - cffi.api.FFI.alignof
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - cffi.vengine_cpy.VCPythonEngine._loaded_struct_or_union
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - <builtin>.max
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - cffi.api.FFI._typeoffsetof
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - <builtin>.min
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - _cffi_backend.typeoffsetof
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ftype._get_c_name
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tp.force_flatten
    functionSourceFile: <builtin>
    functionUses: 8
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - realvalue
    - expectedvalue
    - msg
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 561
    functionName: cffi.vengine_cpy.VCPythonEngine._loaded_struct_or_union.check
    functionSourceFile: cffi.vengine_cpy
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - VerificationError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 590
    functionName: cffi.vengine_cpy.VCPythonEngine._generate_cpy_anonymous_decl
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached:
    - cffi.vengine_cpy.VCPythonEngine._convert_expr_from_c
    - tp.enumfields
    - replace_with.lstrip
    - <builtin>.str
    - ftype.get_c_name
    - <builtin>.zip
    - tp.name.replace
    - cffi.vengine_cpy.VCPythonEngine._check_int_constant_value
    - cffi.vengine_cpy.VCPythonEngine._enum_funcname
    - cffi.model.UnknownIntegerType.is_integer_type
    - cffi.vengine_cpy.VCPythonEngine._generate_struct_or_union_decl
    - cffi.vengine_cpy.VCPythonEngine._generate_cpy_const
    - ftype._get_c_name
    - cffi.model.qualify
    - <builtin>.isinstance
    - cffi.vengine_cpy.VCPythonEngine._prnt
    - totype.c_name_with_marker.replace
    - name.replace
    - cffi.vengine_cpy.VCPythonEngine._gettypenum
    - extra.lstrip
    - cffi.model.PrimitiveType.is_integer_type
    - cffi.vengine_cpy.VCPythonEngine._generate_cpy_enum_decl
    - cffi.model.PointerType.__init__
    - ftype.is_integer_type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 7
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7ff138520340>
    argNames:
    - self
    - tp
    - name
    - prefix
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 705
    functionName: cffi.vengine_cpy.VCPythonEngine._generate_cpy_enum_decl
    functionSourceFile: cffi.vengine_cpy
    functionUses: 1
    functionsReached:
    - tp.name.replace
    - cffi.model.qualify
    - <builtin>.isinstance
    - cffi.vengine_cpy.VCPythonEngine._check_int_constant_value
    - cffi.vengine_cpy.VCPythonEngine._enum_funcname
    - cffi.vengine_cpy.VCPythonEngine._prnt
    - totype.c_name_with_marker.replace
    - name.replace
    - cffi.model.UnknownIntegerType.is_integer_type
    - cffi.vengine_cpy.VCPythonEngine._convert_expr_from_c
    - cffi.vengine_cpy.VCPythonEngine._gettypenum
    - extra.lstrip
    - cffi.vengine_cpy.VCPythonEngine._generate_cpy_const
    - cffi.model.PrimitiveType.is_integer_type
    - cffi.model.PointerType.__init__
    - <builtin>.zip
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 596
    functionName: cffi.vengine_cpy.VCPythonEngine._generate_cpy_anonymous_method
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached:
    - cffi.vengine_cpy.VCPythonEngine._prnt
    - cffi.vengine_cpy.VCPythonEngine._generate_struct_or_union_method
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    - module
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 600
    functionName: cffi.vengine_cpy.VCPythonEngine._loading_cpy_anonymous
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.getattr
    - tp.force_flatten
    - <builtin>.tuple
    - cffi.vengine_cpy.VCPythonEngine._loading_cpy_enum
    - cffi.vengine_cpy.VCPythonEngine._loading_struct_or_union
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    - module
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 726
    functionName: cffi.vengine_cpy.VCPythonEngine._loading_cpy_enum
    functionSourceFile: cffi.vengine_cpy
    functionUses: 1
    functionsReached:
    - <builtin>.tuple
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    - module
    - kwds
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 16
    functionLinenumber: 606
    functionName: cffi.vengine_cpy.VCPythonEngine._loaded_cpy_anonymous
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - _cffi_backend.alignof
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - cffi.api.FFI.offsetof
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - <builtin>.setattr
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - tp.enumfields
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.vengine_cpy.VCPythonEngine._loaded_struct_or_union.check
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.RawFunctionType.as_function_pointer
    - cffi.model.EnumType.check_not_partial
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - cffi.api.FFI.alignof
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - cffi.vengine_cpy.VCPythonEngine._loaded_struct_or_union
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - <builtin>.max
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - cffi.api.FFI._typeoffsetof
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - cffi.vengine_cpy.VCPythonEngine._loaded_cpy_enum
    - <builtin>.min
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - _cffi_backend.typeoffsetof
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    - module
    - library
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 733
    functionName: cffi.vengine_cpy.VCPythonEngine._loaded_cpy_enum
    functionSourceFile: cffi.vengine_cpy
    functionUses: 1
    functionsReached:
    - <builtin>.setattr
    - <builtin>.zip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 12
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7ff138405d60>
    argNames:
    - self
    - name
    - value
    - err_prefix
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 679
    functionName: cffi.vengine_cpy.VCPythonEngine._check_int_constant_value
    functionSourceFile: cffi.vengine_cpy
    functionUses: 7
    functionsReached:
    - cffi.vengine_cpy.VCPythonEngine._prnt
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 663
    functionName: cffi.vengine_cpy.VCPythonEngine._generate_cpy_constant_collecttype
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - cffi.vengine_cpy.VCPythonEngine._do_collect_type
    - <builtin>.len
    - tp.is_integer_type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 668
    functionName: cffi.vengine_cpy.VCPythonEngine._generate_cpy_constant_decl
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached:
    - tp.name.replace
    - cffi.model.qualify
    - <builtin>.isinstance
    - cffi.vengine_cpy.VCPythonEngine._check_int_constant_value
    - tp.is_integer_type
    - cffi.vengine_cpy.VCPythonEngine._prnt
    - totype.c_name_with_marker.replace
    - cffi.model.UnknownIntegerType.is_integer_type
    - cffi.vengine_cpy.VCPythonEngine._convert_expr_from_c
    - cffi.vengine_cpy.VCPythonEngine._gettypenum
    - extra.lstrip
    - cffi.vengine_cpy.VCPythonEngine._generate_cpy_const
    - cffi.model.PrimitiveType.is_integer_type
    - cffi.model.PointerType.__init__
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - prefix
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 700
    functionName: cffi.vengine_cpy.VCPythonEngine._enum_funcname
    functionSourceFile: cffi.vengine_cpy
    functionUses: 2
    functionsReached:
    - name.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 740
    functionName: cffi.vengine_cpy.VCPythonEngine._generate_cpy_macro_decl
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached:
    - tp.name.replace
    - cffi.model.qualify
    - <builtin>.isinstance
    - cffi.vengine_cpy.VCPythonEngine._check_int_constant_value
    - cffi.vengine_cpy.VCPythonEngine._prnt
    - totype.c_name_with_marker.replace
    - cffi.model.UnknownIntegerType.is_integer_type
    - cffi.vengine_cpy.VCPythonEngine._convert_expr_from_c
    - cffi.vengine_cpy.VCPythonEngine._gettypenum
    - extra.lstrip
    - cffi.vengine_cpy.VCPythonEngine._generate_cpy_const
    - cffi.model.PrimitiveType.is_integer_type
    - cffi.model.PointerType.__init__
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 755
    functionName: cffi.vengine_cpy.VCPythonEngine._generate_cpy_variable_collecttype
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached:
    - cffi.model.qualify
    - <builtin>.isinstance
    - totype.c_name_with_marker.replace
    - <builtin>.len
    - extra.lstrip
    - cffi.vengine_cpy.VCPythonEngine._do_collect_type
    - cffi.model.PointerType.__init__
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 762
    functionName: cffi.vengine_cpy.VCPythonEngine._generate_cpy_variable_decl
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached:
    - tp.name.replace
    - cffi.model.qualify
    - <builtin>.isinstance
    - cffi.vengine_cpy.VCPythonEngine._check_int_constant_value
    - cffi.vengine_cpy.VCPythonEngine._prnt
    - totype.c_name_with_marker.replace
    - cffi.model.UnknownIntegerType.is_integer_type
    - tp.length_is_unknown
    - extra.lstrip
    - cffi.vengine_cpy.VCPythonEngine._convert_expr_from_c
    - cffi.vengine_cpy.VCPythonEngine._generate_cpy_const
    - cffi.vengine_cpy.VCPythonEngine._gettypenum
    - cffi.model.PrimitiveType.is_integer_type
    - cffi.model.PointerType.__init__
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tp.length_is_unknown
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 4
    IfCount: 4
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    - module
    - library
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 15
    functionLinenumber: 774
    functionName: cffi.vengine_cpy.VCPythonEngine._loaded_cpy_variable
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.api.FFI.cast
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - csourcelines.append
    - tp.length_is_unknown
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - <builtin>.setattr
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - tp.resolve_length
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - <builtin>.type
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - <builtin>.delattr
    - words_used.discard
    - cffi.model.EnumType.check_not_partial
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - _cffi_backend.cast
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - <builtin>.max
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - <builtin>.min
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - <builtin>.property
    - pycparser.CParser
    linkageType: pythonLinkage
    raised:
    - VerificationError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tp.resolve_length
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.delattr
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - library
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 799
    functionName: cffi.vengine_cpy.VCPythonEngine._loaded_cpy_variable.getter
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - library
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 801
    functionName: cffi.vengine_cpy.VCPythonEngine._loaded_cpy_variable.setter
    functionSourceFile: cffi.vengine_cpy
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cffi._imp_emulation
    functionSourceFile: cffi._imp_emulation
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 32
    functionName: cffi._imp_emulation.get_suffixes
    functionSourceFile: cffi._imp_emulation
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _imp.is_builtin
    functionSourceFile: _imp
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: _imp.is_frozen
    functionSourceFile: _imp
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: tokenize.detect_encoding
    functionSourceFile: tokenize
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: importlib.machinery.ExtensionFileLoader
    functionSourceFile: importlib
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: importlib.machinery.ModuleSpec
    functionSourceFile: importlib
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: importlib._bootstrap._load
    functionSourceFile: importlib
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cffi.vengine_gen
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - kwds
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 21
    functionName: cffi.vengine_gen.VGenericEngine.patch_extension_kwds
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached:
    - kwds.setdefault
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - module_name
    - path
    - so_suffixes
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 27
    functionName: cffi.vengine_gen.VGenericEngine.find_module
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached:
    - os.path.isfile
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 37
    functionName: cffi.vengine_gen.VGenericEngine.collect_types
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7ff1376f79a0>
    argNames:
    - self
    - what
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 40
    functionName: cffi.vengine_gen.VGenericEngine._prnt
    functionSourceFile: cffi.vengine_gen
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 43
    functionName: cffi.vengine_gen.VGenericEngine.write_source_to_f
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached:
    - os.path.basename
    - <builtin>.hasattr
    - cffi.vengine_gen.VGenericEngine._prnt
    - basename.split
    - cffi.model.attach_exception_info
    - <builtin>.type
    - <builtin>.getattr
    - cffi.verifier.Verifier.get_module_name
    - cffi.vengine_gen.VGenericEngine._generate
    - cffi.vengine_gen.VGenericEngine._get_declarations
    - lst.sort
    - name.split
    - basename.endswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - step_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 99
    functionName: cffi.vengine_gen.VGenericEngine._generate
    functionSourceFile: cffi.vengine_gen
    functionUses: 1
    functionsReached:
    - lst.sort
    - <builtin>.type
    - <builtin>.getattr
    - cffi.vengine_gen.VGenericEngine._get_declarations
    - cffi.model.attach_exception_info
    - name.split
    linkageType: pythonLinkage
    raised:
    - VerificationError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7ff1380e64f0>
    argNames:
    - self
    - flags
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 65
    functionName: cffi.vengine_gen.VGenericEngine.load_library
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached:
    - lst.sort
    - cffi.model.attach_exception_info
    - <builtin>.type
    - _cffi_backend.load_library
    - <builtin>.getattr
    - types.ModuleType.__init__
    - os.path.join
    - cffi.vengine_gen.VGenericEngine._get_declarations
    - cffi.vengine_gen.VGenericEngine._load
    - name.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - module
    - step_name
    - kwds
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 114
    functionName: cffi.vengine_gen.VGenericEngine._load
    functionSourceFile: cffi.vengine_gen
    functionUses: 1
    functionsReached:
    - lst.sort
    - <builtin>.type
    - <builtin>.getattr
    - cffi.vengine_gen.VGenericEngine._get_declarations
    - cffi.model.attach_exception_info
    - name.split
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 84
    functionName: cffi.vengine_gen.VGenericEngine.load_library.FFILibrary.__dir__
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: types.ModuleType.__init__
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 93
    functionName: cffi.vengine_gen.VGenericEngine._get_declarations
    functionSourceFile: cffi.vengine_gen
    functionUses: 4
    functionsReached:
    - lst.sort
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 124
    functionName: cffi.vengine_gen.VGenericEngine._generate_nothing
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    - module
    - kwds
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 127
    functionName: cffi.vengine_gen.VGenericEngine._loaded_noop
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 9
    IfCount: 6
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 140
    functionName: cffi.vengine_gen.VGenericEngine._generate_gen_function_decl
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached:
    - argnames.append
    - cffi.model.qualify
    - <builtin>.isinstance
    - arglist.insert
    - cffi.vengine_gen.VGenericEngine._prnt
    - replace_with.startswith
    - <builtin>.zip
    - replace_with.strip
    - <builtin>.len
    - cffi.vengine_gen.VGenericEngine._generate_gen_const
    - result.replace
    - cffi.vengine_gen.VGenericEngine._check_int_constant_value
    - result.count
    - type.get_c_name
    - <builtin>.enumerate
    - cffi.model.BaseTypeByIdentity.get_c_name
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 16
    IfCount: 4
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7ff1387475e0>
    - <ast.Constant object at 0x7ff138747b20>
    - <ast.Constant object at 0x7ff138747820>
    argNames:
    - self
    - is_int
    - name
    - tp
    - category
    - check_value
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 394
    functionName: cffi.vengine_gen.VGenericEngine._generate_gen_const
    functionSourceFile: cffi.vengine_gen
    functionUses: 6
    functionsReached:
    - cffi.model.qualify
    - <builtin>.isinstance
    - cffi.vengine_gen.VGenericEngine._prnt
    - replace_with.startswith
    - replace_with.strip
    - cffi.vengine_gen.VGenericEngine._check_int_constant_value
    - result.count
    - result.replace
    - cffi.model.BaseTypeByIdentity.get_c_name
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: argnames.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: arglist.insert
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 6
    IfCount: 5
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    - module
    - library
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 187
    functionName: cffi.vengine_gen.VGenericEngine._loaded_gen_function
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.string
    - cffi.api.FFI.string
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - replace_with.startswith
    - <builtin>.any
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - _cffi_backend.newp
    - <builtin>.zip
    - s.startswith
    - indirect_args.append
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - result.count
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - cffi.model.EnumType.build_baseinttype
    - cffi.api.FFI.new
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - <builtin>.setattr
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - cffi.vengine_gen.VGenericEngine._make_struct_wrapper
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - <builtin>.type
    - match.groups
    - result.replace
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - indirections.insert
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - indirect_args.insert
    - module.load_function
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - replace_with.strip
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.RawFunctionType.as_function_pointer
    - cffi.model.EnumType.check_not_partial
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - cffi.vengine_gen.VGenericEngine._load_known_int_constant
    - _r_words.findall
    - cffi.vengine_gen.VGenericEngine._load_constant
    - cdecl.encode
    - cffi.model.BaseTypeByIdentity.get_c_name
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.ArrayType.length_is_unknown
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - indirections.append
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 6
    argDefaultValues:
    - <ast.Constant object at 0x7ff138348790>
    argNames:
    - self
    - is_int
    - tp
    - name
    - module
    - check_value
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 437
    functionName: cffi.vengine_gen.VGenericEngine._load_constant
    functionSourceFile: cffi.vengine_gen
    functionUses: 6
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.string
    - cffi.api.FFI.string
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - replace_with.startswith
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - _cffi_backend.newp
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - result.count
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - cffi.model.EnumType.build_baseinttype
    - cffi.api.FFI.new
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - result.replace
    - cffi.cparser.Parser._get_type_and_quals
    - name.startswith
    - cffi.cparser.Parser._extract_quals
    - cffi.cparser._get_parser
    - <builtin>.range
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - module.load_function
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - replace_with.strip
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.model.EnumType.check_not_partial
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - cffi.vengine_gen.VGenericEngine._load_known_int_constant
    - _r_words.findall
    - cdecl.encode
    - cffi.model.BaseTypeByIdentity.get_c_name
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: indirections.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: indirect_args.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: indirect_args.insert
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: indirections.insert
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: module.load_function
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - oldfunc
    - i
    - tp
    - base_tp
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 15
    functionLinenumber: 223
    functionName: cffi.vengine_gen.VGenericEngine._make_struct_wrapper
    functionSourceFile: cffi.vengine_gen
    functionUses: 1
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - name.split
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.EnumType.check_not_partial
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - <builtin>.max
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.ArrayType.length_is_unknown
    - cffi.model.EnumType.__init__
    - look_for_words.add
    - <builtin>.min
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - args
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 233
    functionName: cffi.vengine_gen.VGenericEngine._make_struct_wrapper.newfunc
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - _cffi_backend.newp
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - cffi.vengine_gen.VGenericEngine._make_struct_wrapper.newfunc
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - cffi.model.EnumType.build_baseinttype
    - cffi.api.FFI.new
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.FunctionPtrType.build_backend_type
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.model.EnumType.check_not_partial
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 242
    functionName: cffi.vengine_gen.VGenericEngine._generate_gen_struct_decl
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - cffi.vengine_gen.VGenericEngine._prnt
    - <builtin>.str
    - ftype._get_c_name
    - ftype.get_c_name
    - cffi.vengine_gen.VGenericEngine._generate_struct_or_union_decl
    - tp.enumfields
    - ftype.is_integer_type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 25
    IfCount: 4
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - tp
    - prefix
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 262
    functionName: cffi.vengine_gen.VGenericEngine._generate_struct_or_union_decl
    functionSourceFile: cffi.vengine_gen
    functionUses: 3
    functionsReached:
    - <builtin>.isinstance
    - cffi.vengine_gen.VGenericEngine._prnt
    - <builtin>.str
    - ftype.get_c_name
    - ftype._get_c_name
    - tp.enumfields
    - ftype.is_integer_type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    - module
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 246
    functionName: cffi.vengine_gen.VGenericEngine._loading_gen_struct
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - cffi.model.EnumType.build_baseinttype
    - csourcelines.append
    - tp.force_flatten
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - module.load_function
    - _r_float_dotdotdot.sub
    - cffi.model.FunctionPtrType.build_backend_type
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.model.EnumType.check_not_partial
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - layout.append
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - cffi.vengine_gen.VGenericEngine._loading_struct_or_union
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - tp
    - prefix
    - name
    - module
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 311
    functionName: cffi.vengine_gen.VGenericEngine._loading_struct_or_union
    functionSourceFile: cffi.vengine_gen
    functionUses: 3
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - cffi.model.EnumType.build_baseinttype
    - csourcelines.append
    - tp.force_flatten
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - module.load_function
    - _r_float_dotdotdot.sub
    - cffi.model.FunctionPtrType.build_backend_type
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.model.EnumType.check_not_partial
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - layout.append
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    - module
    - kwds
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 16
    functionLinenumber: 249
    functionName: cffi.vengine_gen.VGenericEngine._loaded_gen_struct
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - _cffi_backend.alignof
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - cffi.api.FFI.offsetof
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - cffi.vengine_gen.VGenericEngine._loaded_struct_or_union
    - fldnames.append
    - tp.enumfields
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.vengine_gen.VGenericEngine._loaded_struct_or_union.check
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.EnumType.check_not_partial
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - cffi.api.FFI.alignof
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - <builtin>.max
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - cffi.api.FFI._typeoffsetof
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - <builtin>.min
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - _cffi_backend.typeoffsetof
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 5
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - tp
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 15
    functionLinenumber: 339
    functionName: cffi.vengine_gen.VGenericEngine._loaded_struct_or_union
    functionSourceFile: cffi.vengine_gen
    functionUses: 3
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - _cffi_backend.alignof
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - cffi.api.FFI.offsetof
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - tp.enumfields
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.vengine_gen.VGenericEngine._loaded_struct_or_union.check
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.EnumType.check_not_partial
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - cffi.api.FFI.alignof
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - <builtin>.max
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - cffi.api.FFI._typeoffsetof
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - <builtin>.min
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - _cffi_backend.typeoffsetof
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 252
    functionName: cffi.vengine_gen.VGenericEngine._generate_gen_union_decl
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - cffi.vengine_gen.VGenericEngine._prnt
    - <builtin>.str
    - ftype._get_c_name
    - ftype.get_c_name
    - cffi.vengine_gen.VGenericEngine._generate_struct_or_union_decl
    - tp.enumfields
    - ftype.is_integer_type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    - module
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 256
    functionName: cffi.vengine_gen.VGenericEngine._loading_gen_union
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - cffi.model.EnumType.build_baseinttype
    - csourcelines.append
    - tp.force_flatten
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - module.load_function
    - _r_float_dotdotdot.sub
    - cffi.model.FunctionPtrType.build_backend_type
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.model.EnumType.check_not_partial
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - layout.append
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - cffi.vengine_gen.VGenericEngine._loading_struct_or_union
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    - module
    - kwds
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 16
    functionLinenumber: 259
    functionName: cffi.vengine_gen.VGenericEngine._loaded_gen_union
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - _cffi_backend.alignof
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - cffi.api.FFI.offsetof
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - cffi.vengine_gen.VGenericEngine._loaded_struct_or_union
    - fldnames.append
    - tp.enumfields
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.vengine_gen.VGenericEngine._loaded_struct_or_union.check
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.EnumType.check_not_partial
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - cffi.api.FFI.alignof
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - <builtin>.max
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - cffi.api.FFI._typeoffsetof
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - <builtin>.min
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - _cffi_backend.typeoffsetof
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: layout.append
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - realvalue
    - expectedvalue
    - msg
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 346
    functionName: cffi.vengine_gen.VGenericEngine._loaded_struct_or_union.check
    functionSourceFile: cffi.vengine_gen
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - VerificationError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 373
    functionName: cffi.vengine_gen.VGenericEngine._generate_gen_anonymous_decl
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached:
    - cffi.vengine_gen.VGenericEngine._prnt
    - cffi.vengine_gen.VGenericEngine._generate_gen_const
    - cffi.vengine_gen.VGenericEngine._generate_struct_or_union_decl
    - tp.enumfields
    - replace_with.lstrip
    - replace_with.startswith
    - <builtin>.str
    - replace_with.strip
    - ftype.get_c_name
    - <builtin>.zip
    - result.replace
    - cffi.vengine_gen.VGenericEngine._enum_funcname
    - ftype._get_c_name
    - result.count
    - cffi.model.qualify
    - <builtin>.isinstance
    - cffi.vengine_gen.VGenericEngine._generate_gen_enum_decl
    - cffi.vengine_gen.VGenericEngine._check_int_constant_value
    - name.replace
    - cffi.model.BaseTypeByIdentity.get_c_name
    - ftype.is_integer_type
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 8
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7ff138d66fa0>
    argNames:
    - self
    - tp
    - name
    - prefix
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 509
    functionName: cffi.vengine_gen.VGenericEngine._generate_gen_enum_decl
    functionSourceFile: cffi.vengine_gen
    functionUses: 1
    functionsReached:
    - cffi.model.qualify
    - <builtin>.isinstance
    - cffi.vengine_gen.VGenericEngine._prnt
    - replace_with.startswith
    - replace_with.strip
    - cffi.vengine_gen.VGenericEngine._check_int_constant_value
    - name.replace
    - cffi.vengine_gen.VGenericEngine._generate_gen_const
    - result.replace
    - result.count
    - cffi.vengine_gen.VGenericEngine._enum_funcname
    - cffi.model.BaseTypeByIdentity.get_c_name
    - <builtin>.zip
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    - module
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 12
    functionLinenumber: 379
    functionName: cffi.vengine_gen.VGenericEngine._loading_gen_anonymous
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.string
    - cffi.api.FFI.string
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - replace_with.startswith
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - _cffi_backend.newp
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - cffi.vengine_gen.VGenericEngine._enum_funcname
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - result.count
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - cffi.model.EnumType.build_baseinttype
    - cffi.api.FFI.new
    - csourcelines.append
    - tp.force_flatten
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - result.replace
    - cffi.cparser.Parser._get_type_and_quals
    - name.startswith
    - cffi.cparser.Parser._extract_quals
    - cffi.cparser._get_parser
    - <builtin>.range
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - module.load_function
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - replace_with.strip
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.model.EnumType.check_not_partial
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - cffi.vengine_gen.VGenericEngine._load_known_int_constant
    - _r_words.findall
    - cffi.vengine_gen.VGenericEngine._load_constant
    - cdecl.encode
    - cffi.model.BaseTypeByIdentity.get_c_name
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - layout.append
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - cffi.vengine_gen.VGenericEngine._loading_gen_enum
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - cffi.vengine_gen.VGenericEngine._loading_struct_or_union
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7ff13853ac10>
    argNames:
    - self
    - tp
    - name
    - module
    - prefix
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 526
    functionName: cffi.vengine_gen.VGenericEngine._loading_gen_enum
    functionSourceFile: cffi.vengine_gen
    functionUses: 1
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.string
    - cffi.api.FFI.string
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - replace_with.startswith
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - _cffi_backend.newp
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - cffi.vengine_gen.VGenericEngine._enum_funcname
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - result.count
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - cffi.model.EnumType.build_baseinttype
    - cffi.api.FFI.new
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - result.replace
    - cffi.cparser.Parser._get_type_and_quals
    - name.startswith
    - cffi.cparser.Parser._extract_quals
    - cffi.cparser._get_parser
    - <builtin>.range
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - module.load_function
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - replace_with.strip
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.model.EnumType.check_not_partial
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - cffi.vengine_gen.VGenericEngine._load_known_int_constant
    - _r_words.findall
    - cffi.vengine_gen.VGenericEngine._load_constant
    - cdecl.encode
    - cffi.model.BaseTypeByIdentity.get_c_name
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    - module
    - kwds
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 16
    functionLinenumber: 385
    functionName: cffi.vengine_gen.VGenericEngine._loaded_gen_anonymous
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - cffi.vengine_gen.VGenericEngine._loaded_gen_enum
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - _cffi_backend.alignof
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - cffi.api.FFI.offsetof
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - <builtin>.setattr
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - cffi.vengine_gen.VGenericEngine._loaded_struct_or_union
    - fldnames.append
    - tp.enumfields
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - <builtin>.type
    - match.groups
    - cffi.vengine_gen.VGenericEngine._loaded_struct_or_union.check
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - cffi.model.qualify
    - csource.splitlines
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.EnumType.check_not_partial
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - cffi.api.FFI.alignof
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - <builtin>.max
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - cffi.api.FFI._typeoffsetof
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - <builtin>.min
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - _cffi_backend.typeoffsetof
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    - module
    - library
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 536
    functionName: cffi.vengine_gen.VGenericEngine._loaded_gen_enum
    functionSourceFile: cffi.vengine_gen
    functionUses: 1
    functionsReached:
    - <builtin>.type
    - <builtin>.zip
    - <builtin>.setattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 11
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 474
    functionName: cffi.vengine_gen.VGenericEngine._check_int_constant_value
    functionSourceFile: cffi.vengine_gen
    functionUses: 7
    functionsReached:
    - cffi.vengine_gen.VGenericEngine._prnt
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 431
    functionName: cffi.vengine_gen.VGenericEngine._generate_gen_constant_decl
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached:
    - cffi.model.qualify
    - <builtin>.isinstance
    - tp.is_integer_type
    - cffi.vengine_gen.VGenericEngine._prnt
    - replace_with.startswith
    - replace_with.strip
    - cffi.vengine_gen.VGenericEngine._check_int_constant_value
    - cffi.vengine_gen.VGenericEngine._generate_gen_const
    - result.replace
    - result.count
    - cffi.model.BaseTypeByIdentity.get_c_name
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - module
    - funcname
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 493
    functionName: cffi.vengine_gen.VGenericEngine._load_known_int_constant
    functionSourceFile: cffi.vengine_gen
    functionUses: 7
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.string
    - cffi.api.FFI.string
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - _cffi_backend.newp
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - cffi.model.EnumType.build_baseinttype
    - cffi.api.FFI.new
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - match.groups
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - module.load_function
    - _r_float_dotdotdot.sub
    - cffi.model.FunctionPtrType.build_backend_type
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.model.EnumType.check_not_partial
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - _r_words.findall
    - cdecl.encode
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised:
    - VerificationError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    - module
    - library
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 465
    functionName: cffi.vengine_gen.VGenericEngine._loaded_gen_constant
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.string
    - cffi.api.FFI.string
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - replace_with.startswith
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - _cffi_backend.newp
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - result.count
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - cffi.model.EnumType.build_baseinttype
    - cffi.api.FFI.new
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - <builtin>.setattr
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - <builtin>.type
    - match.groups
    - result.replace
    - cffi.cparser.Parser._get_type_and_quals
    - name.startswith
    - cffi.cparser.Parser._extract_quals
    - cffi.cparser._get_parser
    - <builtin>.range
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - module.load_function
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - tp.is_integer_type
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - replace_with.strip
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.model.EnumType.check_not_partial
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - cffi.vengine_gen.VGenericEngine._load_known_int_constant
    - _r_words.findall
    - cffi.vengine_gen.VGenericEngine._load_constant
    - cdecl.encode
    - cffi.model.BaseTypeByIdentity.get_c_name
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - prefix
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 504
    functionName: cffi.vengine_gen.VGenericEngine._enum_funcname
    functionSourceFile: cffi.vengine_gen
    functionUses: 4
    functionsReached:
    - name.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 544
    functionName: cffi.vengine_gen.VGenericEngine._generate_gen_macro_decl
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached:
    - cffi.model.qualify
    - <builtin>.isinstance
    - cffi.vengine_gen.VGenericEngine._prnt
    - replace_with.startswith
    - replace_with.strip
    - cffi.vengine_gen.VGenericEngine._check_int_constant_value
    - cffi.vengine_gen.VGenericEngine._generate_gen_const
    - result.replace
    - result.count
    - cffi.model.BaseTypeByIdentity.get_c_name
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    - module
    - library
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 11
    functionLinenumber: 553
    functionName: cffi.vengine_gen.VGenericEngine._loaded_gen_macro
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.string
    - cffi.api.FFI.string
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - replace_with.startswith
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - _cffi_backend.newp
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - result.count
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - reprargs.append
    - cffi.model.EnumType.build_baseinttype
    - cffi.api.FFI.new
    - csourcelines.append
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - <builtin>.setattr
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - <builtin>.type
    - match.groups
    - result.replace
    - cffi.cparser.Parser._get_type_and_quals
    - name.startswith
    - cffi.cparser.Parser._extract_quals
    - cffi.cparser._get_parser
    - <builtin>.range
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - module.load_function
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - replace_with.strip
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.RawFunctionType.as_function_pointer
    - match.group
    - cffi.model.EnumType.check_not_partial
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - cffi.vengine_gen.VGenericEngine._load_known_int_constant
    - _r_words.findall
    - cffi.vengine_gen.VGenericEngine._load_constant
    - cdecl.encode
    - cffi.model.BaseTypeByIdentity.get_c_name
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - cffi.cparser.Parser._parse_constant
    - <builtin>.max
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - lock.acquire
    - <builtin>.min
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - pycparser.CParser
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    IfCount: 2
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 566
    functionName: cffi.vengine_gen.VGenericEngine._generate_gen_variable_decl
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached:
    - cffi.model.qualify
    - <builtin>.isinstance
    - cffi.vengine_gen.VGenericEngine._prnt
    - replace_with.startswith
    - replace_with.strip
    - totype.c_name_with_marker.replace
    - cffi.vengine_gen.VGenericEngine._generate_gen_const
    - cffi.vengine_gen.VGenericEngine._check_int_constant_value
    - result.replace
    - result.count
    - tp.length_is_unknown
    - extra.lstrip
    - cffi.model.PointerType.__init__
    - cffi.model.BaseTypeByIdentity.get_c_name
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 4
    IfCount: 4
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - tp
    - name
    - module
    - library
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 584
    functionName: cffi.vengine_gen.VGenericEngine._loaded_gen_variable
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached:
    - prefixes.get
    - cffi.model.EnumType.force_the_name
    - cffi.api.FFI.cast
    - cffi.cparser.Parser._build_enum_type
    - cffi.cparser.Parser._make_partial
    - cffi.model.PointerType.build_backend_type
    - <builtin>.enumerate
    - macrovalue.replace
    - s.rstrip
    - _cffi_backend.string
    - cffi.api.FFI.string
    - _cffi_backend.sizeof
    - cffi.api.FFI._typeof
    - cffi.model.UnknownFloatType.build_backend_type
    - replace_with.startswith
    - newnames.append
    - <builtin>.reversed
    - cffi.model.StructOrUnion.finish_backend_type
    - _cffi_backend.newp
    - <builtin>.zip
    - s.startswith
    - enumerators.append
    - cffi.cparser.Parser._get_struct_union_enum_type
    - cffi.model.ArrayType.__init__
    - _r_comment.sub
    - <builtin>.len
    - warnings.warn
    - look_for_words.discard
    - ftype.item.get_cached_btype
    - kwds.pop
    - cffi.cparser._common_type_names
    - result.count
    - s.lower
    - <builtin>.isinstance
    - csource.replace
    - cffi.model.EnumType.build_baseinttype
    - reprargs.append
    - cffi.api.FFI.new
    - csourcelines.append
    - tp.length_is_unknown
    - _dummy_thread.allocate_lock.acquire
    - enumvalues.append
    - cffi.api.FFI._get_cached_btype
    - type.name.startswith
    - cffi.model.PointerType.__init__
    - <builtin>.ord
    - cffi.cparser.Parser._convert_pycparser_error
    - cffi.api.FFI.sizeof
    - <builtin>.setattr
    - cffi.model.StructOrUnion.__init__
    - cffi.model.ArrayType.build_backend_type
    - _r_line_directive.sub
    - ctn.discard
    - fldnames.append
    - _r_partial_enum.finditer
    - _r_int_dotdotdot.sub
    - replace_with.lstrip
    - ftype.resolve_length
    - _r_stdcall2.sub
    - line.lstrip
    - tp.resolve_length
    - cffi.commontypes.resolve_common_type
    - cffi.model.BaseTypeByIdentity._get_c_name
    - _r_partial_array.sub
    - lock.release
    - _r_enum_dotdotdot.match
    - cffi.cparser.Parser._as_func_arg
    - cffi.cparser.Parser._c_div
    - <builtin>.type
    - match.groups
    - result.replace
    - cffi.cparser.Parser._get_type_and_quals
    - cffi.cparser.Parser._extract_quals
    - <builtin>.range
    - cffi.cparser._get_parser
    - name.startswith
    - cffi.cparser._preprocess
    - name.split
    - line.strip
    - _pycparser.CParser
    - cffi.cparser.Parser.parse_type_and_quals
    - csource.splitlines
    - cffi.model.qualify
    - csource.startswith
    - COMMON_TYPES.get
    - cffi.cparser.Parser._add_constants
    - <builtin>.divmod
    - cffi.model.StructOrUnion._verification_error
    - fldquals.append
    - cffi.model.StructOrUnion.get_cached_btype
    - typenames.append
    - cffi.model.UnknownIntegerType.build_backend_type
    - cffi.cparser.Parser._get_type_pointer
    - cffi.cparser._workaround_for_old_pycparser
    - cffi.model.NamedPointerType.__init__
    - match.start
    - _r_cdecl.sub
    - cffi.model.VoidType.build_backend_type
    - module.load_function
    - cffi.model.FunctionPtrType.build_backend_type
    - _r_float_dotdotdot.sub
    - cffi.model.RawFunctionType.build_backend_type
    - cffi.cparser.Parser._parse_function_type
    - args.append
    - cffi.model.StructOrUnionOrEnum.build_c_name_with_marker
    - <builtin>.str
    - replace_with.strip
    - cffi.cparser._put_back_line_directives
    - _r_extern_python.search
    - arg._get_c_name
    - words_used.discard
    - cffi.model.RawFunctionType.as_function_pointer
    - cffi.model.EnumType.check_not_partial
    - match.group
    - cffi.cparser.Parser._declare
    - re.match
    - _r_define.finditer
    - parts.append
    - <builtin>.int
    - ftype.length_is_unknown
    - fldbitsize.append
    - _cffi_backend.complete_struct_or_union
    - cffi.model.PrimitiveType.build_backend_type
    - tp.get_cached_btype
    - _cffi_backend.cast
    - cffi.cparser._warn_for_string_literal
    - cffi.api.FFI._typeof_locked
    - words_used.add
    - type.as_function_pointer
    - cffi.model.EnumType.build_backend_type
    - __warningregistry__.clear
    - cffi.model.BaseTypeByIdentity.has_c_name
    - name.replace
    - cffi.vengine_gen.VGenericEngine._load_known_int_constant
    - _r_words.findall
    - cffi.vengine_gen.VGenericEngine._load_constant
    - cdecl.encode
    - cffi.model.BaseTypeByIdentity.get_c_name
    - <builtin>.sorted
    - cffi.model.global_cache
    - ffi._cached_btypes.setdefault
    - cffi.cparser._remove_line_directives
    - <builtin>.getattr
    - _r_stdcall1.sub
    - cffi.cparser.Parser.parse_type
    - cffi.cparser.Parser.convert_pycparser_error
    - fldtypes.append
    - cffi.cparser._preprocess_extern_python
    - cffi.cparser.Parser._parse
    - <builtin>.max
    - cffi.cparser.Parser._parse_constant
    - <builtin>.list
    - cache.get
    - _r_star_const_space.search
    - tp.get_c_name
    - cffi.model.BaseFunctionType.__init__
    - ftype.get_cached_btype
    - <builtin>.tuple
    - cffi.model.EnumType.__init__
    - cffi.model.ArrayType.length_is_unknown
    - look_for_words.add
    - <builtin>.min
    - lock.acquire
    - cffi.model.StructOrUnionOrEnum.get_official_name
    - params.pop
    - cffi.model.BaseTypeByIdentity.get_cached_btype
    - _r_define.sub
    - <builtin>.set
    - csource.find
    - <builtin>.hasattr
    - type.finish_backend_type
    - totype.c_name_with_marker.replace
    - cffi.model.PrimitiveType.__init__
    - extra.lstrip
    - match.end
    - <builtin>.property
    - pycparser.CParser
    linkageType: pythonLinkage
    raised:
    - VerificationError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - library
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 615
    functionName: cffi.vengine_gen.VGenericEngine._loaded_gen_variable.getter
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - library
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 617
    functionName: cffi.vengine_gen.VGenericEngine._loaded_gen_variable.setter
    functionSourceFile: cffi.vengine_gen
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cffi.ffiplatform
    functionSourceFile: cffi.ffiplatform
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.normpath
    functionSourceFile: os
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: allsources.append
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: distutils.core.Extension
    functionSourceFile: distutils
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.environ.copy
    functionSourceFile: os
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 4
    IfCount: 1
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7ff138c0c550>
    - <ast.Constant object at 0x7ff138c0cc70>
    argNames:
    - tmpdir
    - ext
    - compiler_verbose
    - debug
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 32
    functionName: cffi.ffiplatform._build
    functionSourceFile: cffi.ffiplatform
    functionUses: 11
    functionsReached:
    - distutils.core.Distribution.run_command
    - distutils.core.Distribution.get_command_obj
    - distutils.log.set_threshold
    - distutils.core.Distribution
    - cmd_obj.get_outputs
    - distutils.core.Distribution.parse_config_files
    - distutils.log.set_verbosity
    - distutils.core.Distribution.get_option_dict
    linkageType: pythonLinkage
    raised:
    - VerificationError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: saved_environ.items
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: distutils.core.Distribution
    functionSourceFile: distutils
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: distutils.core.Distribution.parse_config_files
    functionSourceFile: distutils
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: distutils.core.Distribution.get_option_dict
    functionSourceFile: distutils
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: distutils.log.set_threshold
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: distutils.log.set_verbosity
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: distutils.core.Distribution.run_command
    functionSourceFile: distutils
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: distutils.core.Distribution.get_command_obj
    functionSourceFile: distutils
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cmd_obj.get_outputs
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.isabs
    functionSourceFile: os
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.split
    functionSourceFile: os
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.samefile
    functionSourceFile: os
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: names.reverse
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 7
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - x
    - f
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 95
    functionName: cffi.ffiplatform._flatten
    functionSourceFile: cffi.ffiplatform
    functionUses: 3
    functionsReached:
    - <builtin>.isinstance
    - cffi.ffiplatform._flatten
    - f.write
    - <builtin>.len
    - x.keys
    - <builtin>.sorted
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: f.write
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: x.keys
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: f.getvalue
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cffi.backend_ctypes
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: cffi.backend_ctypes.<lambda1>
    functionSourceFile: cffi.backend_ctypes
    functionUses: 1
    functionsReached:
    - <builtin>.bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.bytes
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - args
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 20
    functionName: cffi.backend_ctypes.CTypesData.__init__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - init
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 24
    functionName: cffi.backend_ctypes.CTypesData._newp
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 29
    functionName: cffi.backend_ctypes.CTypesData._to_ctypes
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 33
    functionName: cffi.backend_ctypes.CTypesData._arg_to_ctypes
    functionSourceFile: cffi.backend_ctypes
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive._to_ctypes
    - <builtin>.int
    - <builtin>.len
    - value._convert_to_address
    - cffi.backend_ctypes.CTypesGenericPtr._to_ctypes
    - ctypes.cast
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - x
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 473
    functionName: cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive._to_ctypes
    functionSourceFile: cffi.backend_ctypes
    functionUses: 4
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.int
    linkageType: pythonLinkage
    raised:
    - TypeError
    - OverflowError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 214
    functionName: cffi.backend_ctypes.CTypesGenericPtr._to_ctypes
    functionSourceFile: cffi.backend_ctypes
    functionUses: 3
    functionsReached:
    - <builtin>.isinstance
    - ctypes.cast
    - value._convert_to_address
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - init
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 47
    functionName: cffi.backend_ctypes.CTypesData._create_ctype_obj
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive._to_ctypes
    - cffi.backend_ctypes.CTypesData._arg_to_ctypes
    - <builtin>.int
    - <builtin>.len
    - value._convert_to_address
    - cffi.backend_ctypes.CTypesGenericPtr._to_ctypes
    - ctypes.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - ctypes_value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 54
    functionName: cffi.backend_ctypes.CTypesData._from_ctypes
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7ff13817da90>
    argNames:
    - cls
    - replace_with
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 58
    functionName: cffi.backend_ctypes.CTypesData._get_c_name
    functionSourceFile: cffi.backend_ctypes
    functionUses: 12
    functionsReached:
    - cls._reftypename.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cls._reftypename.replace
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 62
    functionName: cffi.backend_ctypes.CTypesData._fix_class
    functionSourceFile: cffi.backend_ctypes
    functionUses: 8
    functionsReached:
    - cffi.backend_ctypes.CTypesData._get_c_name
    - cls._reftypename.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 67
    functionName: cffi.backend_ctypes.CTypesData._get_own_repr
    functionSourceFile: cffi.backend_ctypes
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - address
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 70
    functionName: cffi.backend_ctypes.CTypesData._addr_repr
    functionSourceFile: cffi.backend_ctypes
    functionUses: 6
    functionsReached:
    - ctypes.sizeof
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ctypes.sizeof
    functionSourceFile: ctypes
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7ff13871c8e0>
    argNames:
    - self
    - c_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 78
    functionName: cffi.backend_ctypes.CTypesData.__repr__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 2
    functionsReached:
    - cffi.backend_ctypes.CTypesData._addr_repr
    - ctypes.addressof
    - ctypes.sizeof
    - cffi.backend_ctypes.CTypesData._get_own_repr
    - cffi.backend_ctypes.CTypesData._get_c_name
    - cffi.backend_ctypes.CTypesGenericArray._get_own_repr
    - cls._reftypename.replace
    - cffi.backend_ctypes.CTypesGenericPtr._get_own_repr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 200
    functionName: cffi.backend_ctypes.CTypesGenericPtr._get_own_repr
    functionSourceFile: cffi.backend_ctypes
    functionUses: 3
    functionsReached:
    - cffi.backend_ctypes.CTypesData._addr_repr
    - ctypes.sizeof
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 167
    functionName: cffi.backend_ctypes.CTypesGenericArray._get_own_repr
    functionSourceFile: cffi.backend_ctypes
    functionUses: 3
    functionsReached:
    - cffi.backend_ctypes.CTypesData._addr_repr
    - ctypes.addressof
    - ctypes.sizeof
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - BClass
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 82
    functionName: cffi.backend_ctypes.CTypesData._convert_to_address
    functionSourceFile: cffi.backend_ctypes
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 91
    functionName: cffi.backend_ctypes.CTypesData._get_size
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - ctypes.sizeof
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 94
    functionName: cffi.backend_ctypes.CTypesData._get_size_of_instance
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - ctypes.sizeof
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - source
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 98
    functionName: cffi.backend_ctypes.CTypesData._cast_from
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 101
    functionName: cffi.backend_ctypes.CTypesData._cast_to_integer
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - cffi.backend_ctypes.CTypesData._convert_to_address
    - cffi.backend_ctypes.CTypesGenericPtr._convert_to_address
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - BClass
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 230
    functionName: cffi.backend_ctypes.CTypesGenericPtr._convert_to_address
    functionSourceFile: cffi.backend_ctypes
    functionUses: 4
    functionsReached:
    - cffi.backend_ctypes.CTypesData._convert_to_address
    - cffi.backend_ctypes.CTypesGenericPtr._convert_to_address
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - cls
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 105
    functionName: cffi.backend_ctypes.CTypesData._alignment
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - ctypes.alignment
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ctypes.alignment
    functionSourceFile: ctypes
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 108
    functionName: cffi.backend_ctypes.CTypesData.__iter__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 112
    functionName: cffi.backend_ctypes.CTypesData._make_cmp
    functionSourceFile: cffi.backend_ctypes
    functionUses: 1
    functionsReached:
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 114
    functionName: cffi.backend_ctypes.CTypesData._make_cmp.cmp
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - other._convert_to_address
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: other._convert_to_address
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: cffi.backend_ctypes.CTypesData
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    - cffi.backend_ctypes.CTypesData._make_cmp
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 139
    functionName: cffi.backend_ctypes.CTypesData.__hash__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - cffi.backend_ctypes.CTypesData._convert_to_address
    - <builtin>.hash
    - cffi.backend_ctypes.CTypesGenericPtr._convert_to_address
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - maxlen
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 142
    functionName: cffi.backend_ctypes.CTypesData._to_string
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 149
    functionName: cffi.backend_ctypes.CTypesGenericPrimitive.__hash__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.hash
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 152
    functionName: cffi.backend_ctypes.CTypesGenericPrimitive._get_own_repr
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - cffi.backend_ctypes.CTypesGenericPtr._from_ctypes
    - <builtin>.repr
    - <builtin>.getattr
    - cls.__new__
    - cffi.backend_ctypes.CTypesGenericPtr._new_pointer_at
    - cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive._from_ctypes
    - ctypes.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - ctypes_ptr
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 221
    functionName: cffi.backend_ctypes.CTypesGenericPtr._from_ctypes
    functionSourceFile: cffi.backend_ctypes
    functionUses: 1
    functionsReached:
    - cffi.backend_ctypes.CTypesGenericPtr._new_pointer_at
    - ctypes.cast
    - cls.__new__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 480
    functionName: cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive._from_ctypes
    functionSourceFile: cffi.backend_ctypes
    functionUses: 1
    functionsReached:
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.repr
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - init
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 160
    functionName: cffi.backend_ctypes.CTypesGenericArray._newp
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - cffi.backend_ctypes.CTypesData.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 163
    functionName: cffi.backend_ctypes.CTypesGenericArray.__iter__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ctypes.addressof
    functionSourceFile: ctypes
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - init
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 177
    functionName: cffi.backend_ctypes.CTypesGenericPtr._newp
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - cffi.backend_ctypes.CTypesData.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - source
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 181
    functionName: cffi.backend_ctypes.CTypesGenericPtr._cast_from
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - cls.__new__
    - cffi.backend_ctypes.CTypesGenericPtr._new_pointer_at
    - source._cast_to_integer
    - ctypes.cast
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: source._cast_to_integer
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - address
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 194
    functionName: cffi.backend_ctypes.CTypesGenericPtr._new_pointer_at
    functionSourceFile: cffi.backend_ctypes
    functionUses: 5
    functionsReached:
    - ctypes.cast
    - cls.__new__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cls.__new__
    functionSourceFile: <builtin>
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ctypes.cast
    functionSourceFile: ctypes
    functionUses: 21
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 206
    functionName: cffi.backend_ctypes.CTypesGenericPtr._cast_to_integer
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 209
    functionName: cffi.backend_ctypes.CTypesGenericPtr.__nonzero__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.bool
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: value._convert_to_address
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - ctypes_ptr
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 226
    functionName: cffi.backend_ctypes.CTypesGenericPtr._initialize
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - cffi.backend_ctypes.CTypesGenericPtr._to_ctypes
    - <builtin>.isinstance
    - ctypes.cast
    - value._convert_to_address
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - init
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 242
    functionName: cffi.backend_ctypes.CTypesBaseStructOrUnion._create_ctype_obj
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 246
    functionName: cffi.backend_ctypes.CTypesBaseStructOrUnion._get_own_repr
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - cffi.backend_ctypes.CTypesData._addr_repr
    - ctypes.addressof
    - ctypes.sizeof
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - fieldname
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 250
    functionName: cffi.backend_ctypes.CTypesBaseStructOrUnion._offsetof
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - BClass
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 253
    functionName: cffi.backend_ctypes.CTypesBaseStructOrUnion._convert_to_address
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - cffi.backend_ctypes.CTypesData._convert_to_address
    - ctypes.addressof
    - <builtin>.getattr
    - cffi.backend_ctypes.CTypesGenericPtr._convert_to_address
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - ctypes_struct_or_union
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 260
    functionName: cffi.backend_ctypes.CTypesBaseStructOrUnion._from_ctypes
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - cls.__new__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 266
    functionName: cffi.backend_ctypes.CTypesBaseStructOrUnion._to_ctypes
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7ff1386d4340>
    argNames:
    - self
    - c_name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 269
    functionName: cffi.backend_ctypes.CTypesBaseStructOrUnion.__repr__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - cffi.backend_ctypes.CTypesData._addr_repr
    - ctypes.addressof
    - ctypes.sizeof
    - cffi.backend_ctypes.CTypesData._get_c_name
    - cffi.backend_ctypes.CTypesData._get_own_repr
    - cffi.backend_ctypes.CTypesGenericArray._get_own_repr
    - cffi.backend_ctypes.CTypesData.__repr__
    - cls._reftypename.replace
    - cffi.backend_ctypes.CTypesGenericPtr._get_own_repr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: cffi.backend_ctypes.CTypesBackend
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - ctypes.sizeof
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 311
    functionName: cffi.backend_ctypes.CTypesBackend.__init__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - ffi
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 317
    functionName: cffi.backend_ctypes.CTypesBackend.set_ffi
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 320
    functionName: cffi.backend_ctypes.CTypesBackend._get_types
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7ff138345c40>
    argNames:
    - self
    - path
    - flags
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 323
    functionName: cffi.backend_ctypes.CTypesBackend.load_library
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - ctypes.CDLL
    - cffi.backend_ctypes.CTypesLibrary.__init__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ctypes.CDLL
    functionSourceFile: ctypes
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - backend
    - cdll
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1099
    functionName: cffi.backend_ctypes.CTypesLibrary.__init__
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 327
    functionName: cffi.backend_ctypes.CTypesBackend.new_void_type
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - cffi.backend_ctypes.CTypesData._fix_class
    - cffi.backend_ctypes.CTypesData._get_c_name
    - cls._reftypename.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - novalue
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 332
    functionName: cffi.backend_ctypes.CTypesBackend.new_void_type.CTypesVoid._from_ctypes
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - novalue
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 335
    functionName: cffi.backend_ctypes.CTypesBackend.new_void_type.CTypesVoid._to_ctypes
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 343
    functionName: cffi.backend_ctypes.CTypesBackend.new_primitive_type
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - cffi.backend_ctypes.CTypesData._fix_class
    - cffi.backend_ctypes.CTypesData._get_c_name
    - cls._reftypename.replace
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 0
    IfCount: 4
    argCount: 1
    argDefaultValues: []
    argNames:
    - source
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 360
    functionName: cffi.backend_ctypes.CTypesBackend.new_primitive_type._cast_source_to_int
    functionSourceFile: cffi.backend_ctypes
    functionUses: 1
    functionsReached:
    - <builtin>.ord
    - <builtin>.isinstance
    - source._cast_to_integer
    - <builtin>.int
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 381
    functionName: cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive.__init__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - init
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 385
    functionName: cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive._create_ctype_obj
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive._to_ctypes
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - source
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 419
    functionName: cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive._cast_from
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive.__init__
    - <builtin>.ord
    - <builtin>.isinstance
    - <builtin>.hasattr
    - <builtin>.int
    - <builtin>.bool
    - cffi.backend_ctypes.<lambda1>
    - source._cast_to_integer
    - <builtin>.float
    - cffi.backend_ctypes.CTypesBackend.new_primitive_type._cast_source_to_int
    - <builtin>.bytes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 431
    functionName: cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive.__int__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.ord
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.float
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 433
    functionName: cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive.__float__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 467
    functionName: cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive.__nonzero__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.ord
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - blob
    - init
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 484
    functionName: cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive._initialize
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive._to_ctypes
    - <builtin>.isinstance
    - <builtin>.len
    - <builtin>.int
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - maxlen
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 491
    functionName: cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive._to_string
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.chr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.chr
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - BItem
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 497
    functionName: cffi.backend_ctypes.CTypesBackend.new_pointer_type
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - cffi.backend_ctypes.CTypesData._fix_class
    - cffi.model.PrimitiveType.__init__
    - cffi.backend_ctypes.CTypesData._get_c_name
    - cls._reftypename.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 0
    IfCount: 3
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: cffi.backend_ctypes.CTypesBackend.new_pointer_type.CTypesPtr
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.hasattr
    - ctypes.sizeof
    - <builtin>.issubclass
    - BItem._get_c_name
    - ctypes.POINTER
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ctypes.POINTER
    functionSourceFile: ctypes
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.issubclass
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: BItem._get_c_name
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - init
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 524
    functionName: cffi.backend_ctypes.CTypesBackend.new_pointer_type.CTypesPtr.__init__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - ctypes.pointer
    - ctypes.cast
    - ctypes.create_string_buffer
    - BItem._create_ctype_obj
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: BItem._create_ctype_obj
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ctypes.create_string_buffer
    functionSourceFile: ctypes
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ctypes.pointer
    functionSourceFile: ctypes
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 537
    functionName: cffi.backend_ctypes.CTypesBackend.new_pointer_type.CTypesPtr.__add__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - cffi.backend_ctypes.CTypesGenericPtr._new_pointer_at
    - <builtin>.isinstance
    - ctypes.cast
    - cls.__new__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 544
    functionName: cffi.backend_ctypes.CTypesBackend.new_pointer_type.CTypesPtr.__sub__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.type
    - cls.__new__
    - cffi.backend_ctypes.CTypesGenericPtr._new_pointer_at
    - ctypes.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - index
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 553
    functionName: cffi.backend_ctypes.CTypesBackend.new_pointer_type.CTypesPtr.__getitem__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - BItem._from_ctypes
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: BItem._from_ctypes
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - index
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 558
    functionName: cffi.backend_ctypes.CTypesBackend.new_pointer_type.CTypesPtr.__setitem__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - BItem._to_ctypes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: BItem._to_ctypes
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 563
    functionName: cffi.backend_ctypes.CTypesBackend.new_pointer_type.CTypesPtr._arg_to_ctypes
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - ctypes.c_char_p
    - <builtin>.super
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ctypes.c_char_p
    functionSourceFile: ctypes
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - maxlen
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 570
    functionName: cffi.backend_ctypes.CTypesBackend.new_pointer_type.CTypesPtr._to_string
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.range
    - ctypes.cast
    - ctypes.POINTER
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 580
    functionName: cffi.backend_ctypes.CTypesBackend.new_pointer_type.CTypesPtr._get_own_repr
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - <builtin>.getattr
    - ctypes.sizeof
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - CTypesPtr
    - length
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 593
    functionName: cffi.backend_ctypes.CTypesBackend.new_array_type
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - cffi.backend_ctypes.CTypesData._fix_class
    - cffi.model.PrimitiveType.__init__
    - cffi.backend_ctypes.CTypesData._get_c_name
    - cls._reftypename.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: __slots__.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - BItem._get_c_name
    - __slots__.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - init
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 618
    functionName: cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray.__init__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - ctypes.sizeof
    - cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray._initialize
    - <builtin>.len
    - BItem._initialize
    - <builtin>.tuple
    - ctypes.cast
    - <builtin>.range
    - <builtin>.enumerate
    - ctypes.POINTER
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - blob
    - init
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 635
    functionName: cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray._initialize
    functionSourceFile: cffi.backend_ctypes
    functionUses: 1
    functionsReached:
    - <builtin>.isinstance
    - ctypes.sizeof
    - <builtin>.len
    - BItem._initialize
    - <builtin>.tuple
    - ctypes.cast
    - <builtin>.range
    - <builtin>.enumerate
    - ctypes.POINTER
    linkageType: pythonLinkage
    raised:
    - IndexError
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: BItem._initialize
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 653
    functionName: cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray.__len__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - index
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 656
    functionName: cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray.__getitem__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - BItem._from_ctypes
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - index
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 661
    functionName: cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray.__setitem__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.len
    - BItem._to_ctypes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - maxlen
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 667
    functionName: cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray._to_string
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.range
    - ctypes.cast
    - ctypes.POINTER
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 677
    functionName: cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray._get_own_repr
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - <builtin>.getattr
    - ctypes.sizeof
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - BClass
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 682
    functionName: cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray._convert_to_address
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - cffi.backend_ctypes.CTypesData._convert_to_address
    - ctypes.addressof
    - cffi.backend_ctypes.CTypesGenericPtr._convert_to_address
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - ctypes_array
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 689
    functionName: cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray._from_ctypes
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - CTypesArray.__new__
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: CTypesArray.__new__
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 695
    functionName: cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray._arg_to_ctypes
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - CTypesPtr._arg_to_ctypes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: CTypesPtr._arg_to_ctypes
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 698
    functionName: cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray.__add__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - ctypes.addressof
    - CTypesPtr._new_pointer_at
    - ctypes.sizeof
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: CTypesPtr._new_pointer_at
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - source
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 707
    functionName: cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray._cast_from
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - kind
    - name
    - base_ctypes_class
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 714
    functionName: cffi.backend_ctypes.CTypesBackend._new_struct_or_union
    functionSourceFile: cffi.backend_ctypes
    functionUses: 2
    functionsReached:
    - cffi.backend_ctypes.CTypesData._fix_class
    - cffi.backend_ctypes.CTypesData._get_c_name
    - cls._reftypename.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 730
    functionName: cffi.backend_ctypes.CTypesBackend.new_struct_type
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - cffi.backend_ctypes.CTypesData._fix_class
    - cffi.backend_ctypes.CTypesData._get_c_name
    - cls._reftypename.replace
    - cffi.backend_ctypes.CTypesBackend._new_struct_or_union
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - name
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 733
    functionName: cffi.backend_ctypes.CTypesBackend.new_union_type
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - cffi.backend_ctypes.CTypesData._fix_class
    - cffi.backend_ctypes.CTypesData._get_c_name
    - cls._reftypename.replace
    - cffi.backend_ctypes.CTypesBackend._new_struct_or_union
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 4
    IfCount: 10
    argCount: 8
    argDefaultValues:
    - <ast.UnaryOp object at 0x7ff13816ab50>
    - <ast.UnaryOp object at 0x7ff13816a370>
    - <ast.Constant object at 0x7ff13816a100>
    - <ast.Constant object at 0x7ff13816a910>
    argNames:
    - self
    - CTypesStructOrUnion
    - fields
    - tp
    - totalsize
    - totalalignment
    - sflags
    - pack
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 736
    functionName: cffi.backend_ctypes.CTypesBackend.complete_struct_or_union
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - cffi.model.qualify
    - <builtin>.hasattr
    - <builtin>.setattr
    - <builtin>.issubclass
    - cfields.append
    - totype.c_name_with_marker.replace
    - cffi.model.PointerType.__init__
    - extra.lstrip
    - <builtin>.dict
    - <builtin>.property
    - <builtin>.zip
    - replace_with.lstrip
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cfields.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - init
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 765
    functionName: cffi.backend_ctypes.CTypesBackend.complete_struct_or_union._create_ctype_obj
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - BField._initialize
    - <builtin>.isinstance
    - ctypes.addressof
    - cffi.backend_ctypes.CTypesBackend.complete_struct_or_union.initialize
    - <builtin>.len
    - init.items
    - CTypesStructOrUnion._offsetof
    - <builtin>.dict
    - ctypes.POINTER
    - <builtin>.tuple
    - ctypes.cast
    - <builtin>.zip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 2
    argDefaultValues: []
    argNames:
    - blob
    - init
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 772
    functionName: cffi.backend_ctypes.CTypesBackend.complete_struct_or_union.initialize
    functionSourceFile: cffi.backend_ctypes
    functionUses: 1
    functionsReached:
    - BField._initialize
    - ctypes.addressof
    - <builtin>.isinstance
    - <builtin>.len
    - init.items
    - CTypesStructOrUnion._offsetof
    - <builtin>.dict
    - ctypes.POINTER
    - <builtin>.tuple
    - ctypes.cast
    - <builtin>.zip
    linkageType: pythonLinkage
    raised:
    - TypeError
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: init.items
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: CTypesStructOrUnion._offsetof
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: BField._initialize
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues:
    - <ast.Name object at 0x7ff138574ac0>
    argNames:
    - self
    - fname
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 842
    functionName: cffi.backend_ctypes.CTypesBackend.complete_struct_or_union.getter
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - BField._from_ctypes
    - ctypes.addressof
    - BFieldPtr._from_ctypes
    - <builtin>.getattr
    - ctypes.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: BField._from_ctypes
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Name object at 0x7ff138574df0>
    argNames:
    - self
    - value
    - fname
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 844
    functionName: cffi.backend_ctypes.CTypesBackend.complete_struct_or_union.setter
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.setattr
    - <builtin>.getattr
    - BField._to_ctypes
    linkageType: pythonLinkage
    raised:
    - OverflowError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: BField._to_ctypes
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: BFieldPtr._from_ctypes
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - BArgs
    - BResult
    - has_varargs
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 848
    functionName: cffi.backend_ctypes.CTypesBackend.new_function_type
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - cffi.backend_ctypes.CTypesData._fix_class
    - cffi.backend_ctypes.CTypesData._get_c_name
    - cls._reftypename.replace
    - BArg._get_c_name
    - nameargs.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: BArg._get_c_name
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: nameargs.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: cffi.backend_ctypes.CTypesBackend.new_function_type.CTypesFunctionPtr
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - BResult._get_c_name
    - ctypes.CFUNCTYPE
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ctypes.CFUNCTYPE
    functionSourceFile: ctypes
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: BResult._get_c_name
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7ff138331d30>
    argNames:
    - self
    - init
    - error
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 861
    functionName: cffi.backend_ctypes.CTypesBackend.new_function_type.CTypesFunctionPtr.__init__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.issubclass
    - BResult._from_ctypes
    - <builtin>.getattr
    - ctypes.CFUNCTYPE
    - BResult._create_ctype_obj
    - ctypes.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: BResult._create_ctype_obj
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: BResult._from_ctypes
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - args
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 870
    functionName: cffi.backend_ctypes.CTypesBackend.new_function_type.CTypesFunctionPtr.__init__.callback
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - BResult._to_ctypes
    - <builtin>.issubclass
    - BArg._from_ctypes
    - traceback.print_exc
    - ctypes.cast
    - <builtin>.zip
    - args2.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: BArg._from_ctypes
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: args2.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: BResult._to_ctypes
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: traceback.print_exc
    functionSourceFile: traceback
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - ctypes_ptr
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 903
    functionName: cffi.backend_ctypes.CTypesBackend.new_function_type.CTypesFunctionPtr._initialize
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 908
    functionName: cffi.backend_ctypes.CTypesBackend.new_function_type.CTypesFunctionPtr.__repr__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - cffi.backend_ctypes.CTypesData._addr_repr
    - ctypes.addressof
    - ctypes.sizeof
    - cffi.backend_ctypes.CTypesData._get_own_repr
    - cffi.backend_ctypes.CTypesData._get_c_name
    - <builtin>.getattr
    - cffi.backend_ctypes.CTypesData.__repr__
    - cffi.backend_ctypes.CTypesGenericArray._get_own_repr
    - cls._reftypename.replace
    - cffi.backend_ctypes.CTypesGenericPtr._get_own_repr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 917
    functionName: cffi.backend_ctypes.CTypesBackend.new_function_type.CTypesFunctionPtr._get_own_repr
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.super
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 3
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - args
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 922
    functionName: cffi.backend_ctypes.CTypesBackend.new_function_type.CTypesFunctionPtr.__call__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - BArg._arg_to_ctypes
    - BResult._from_ctypes
    - <builtin>.len
    - ctypes_args.append
    - ctypes.c_void_p
    - <builtin>.enumerate
    - arg._arg_to_ctypes
    - <builtin>.zip
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: BArg._arg_to_ctypes
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ctypes_args.append
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ctypes.c_void_p
    functionSourceFile: ctypes
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: arg._arg_to_ctypes
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - name
    - enumerators
    - enumvalues
    - CTypesInt
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 949
    functionName: cffi.backend_ctypes.CTypesBackend.new_enum_type
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - CTypesEnum._fix_class
    - <builtin>.reversed
    - <builtin>.dict
    - <builtin>.zip
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 958
    functionName: cffi.backend_ctypes.CTypesBackend.new_enum_type.CTypesEnum._get_own_repr
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - maxlen
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 965
    functionName: cffi.backend_ctypes.CTypesBackend.new_enum_type.CTypesEnum._to_string
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.str
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: CTypesEnum._fix_class
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 975
    functionName: cffi.backend_ctypes.CTypesBackend.get_errno
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - ctypes.get_errno
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ctypes.get_errno
    functionSourceFile: ctypes
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - value
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 978
    functionName: cffi.backend_ctypes.CTypesBackend.set_errno
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - ctypes.set_errno
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ctypes.set_errno
    functionSourceFile: ctypes
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.UnaryOp object at 0x7ff1385a5250>
    argNames:
    - self
    - b
    - maxlen
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 981
    functionName: cffi.backend_ctypes.CTypesBackend.string
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - b._to_string
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: b._to_string
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.UnaryOp object at 0x7ff1385a5c70>
    argNames:
    - self
    - bptr
    - size
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 984
    functionName: cffi.backend_ctypes.CTypesBackend.buffer
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - cdata_or_BType
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 987
    functionName: cffi.backend_ctypes.CTypesBackend.sizeof
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - cdata_or_BType._get_size
    - cdata_or_BType._get_size_of_instance
    - <builtin>.issubclass
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cdata_or_BType._get_size_of_instance
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cdata_or_BType._get_size
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - BType
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 994
    functionName: cffi.backend_ctypes.CTypesBackend.alignof
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.issubclass
    - BType._alignment
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: BType._alignment
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - BType
    - source
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 998
    functionName: cffi.backend_ctypes.CTypesBackend.newp
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.issubclass
    - BType._newp
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: BType._newp
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - BType
    - source
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1003
    functionName: cffi.backend_ctypes.CTypesBackend.cast
    functionSourceFile: cffi.backend_ctypes
    functionUses: 1
    functionsReached:
    - BType._cast_from
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: BType._cast_from
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - BType
    - source
    - error
    - onerror
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1006
    functionName: cffi.backend_ctypes.CTypesBackend.callback
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 0
    IfCount: 2
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7ff138c0cd90>
    argNames:
    - self
    - cdata
    - destructor
    - size
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 1012
    functionName: cffi.backend_ctypes.CTypesBackend.gcp
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - cffi.backend_ctypes.CTypesBackend.cast
    - BType._cast_from
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1016
    functionName: cffi.backend_ctypes.CTypesBackend.gcp.MyRef.__eq__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 1020
    functionName: cffi.backend_ctypes.CTypesBackend.gcp.MyRef.__ne__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1022
    functionName: cffi.backend_ctypes.CTypesBackend.gcp.MyRef.__hash__
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.hash
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - k
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1039
    functionName: cffi.backend_ctypes.CTypesBackend.gcp.remove
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - weak_cache.pop
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: weak_cache.pop
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - BType
    - replace_with
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1051
    functionName: cffi.backend_ctypes.CTypesBackend.getcname
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - BType._get_c_name
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: BType._get_c_name
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 0
    IfCount: 8
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7ff137580670>
    argNames:
    - self
    - BType
    - fieldname
    - num
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1054
    functionName: cffi.backend_ctypes.CTypesBackend.typeoffsetof
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - BType._offsetof
    - <builtin>.issubclass
    - <builtin>.isinstance
    - BItem._get_size
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: BType._offsetof
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: BItem._get_size
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 0
    IfCount: 5
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7ff13757d0d0>
    argNames:
    - self
    - BTypePtr
    - cdata
    - offset
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1077
    functionName: cffi.backend_ctypes.CTypesBackend.rawaddressof
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - BTypePtr._from_ctypes
    - <builtin>.type
    - <builtin>.issubclass
    - ctypes.c_void_p
    - ctypes.pointer
    - ctypes.cast
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: BTypePtr._from_ctypes
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - BType
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1103
    functionName: cffi.backend_ctypes.CTypesLibrary.load_function
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - BType._from_ctypes
    - <builtin>.getattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: BType._from_ctypes
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - BType
    - name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1109
    functionName: cffi.backend_ctypes.CTypesLibrary.read_variable
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - BType._ctype.in_dll
    - BType._from_ctypes
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: BType._ctype.in_dll
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - BType
    - name
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 1116
    functionName: cffi.backend_ctypes.CTypesLibrary.write_variable
    functionSourceFile: cffi.backend_ctypes
    functionUses: 0
    functionsReached:
    - ctypes.addressof
    - ctypes.memmove
    - ctypes.sizeof
    - BType._ctype.in_dll
    - BType._to_ctypes
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: BType._to_ctypes
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ctypes.memmove
    functionSourceFile: ctypes
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: cffi.setuptools_ext
    functionSourceFile: cffi.setuptools_ext
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - msg
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 10
    functionName: cffi.setuptools_ext.error
    functionSourceFile: cffi.setuptools_ext
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - DistutilsSetupError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - filename
    - glob
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 15
    functionName: cffi.setuptools_ext.execfile
    functionSourceFile: cffi.setuptools_ext
    functionUses: 2
    functionsReached:
    - <builtin>.open
    - <builtin>.compile
    - f.read
    - <builtin>.exec
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: f.read
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.compile
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.exec
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 10
    IfCount: 8
    argCount: 2
    argDefaultValues: []
    argNames:
    - dist
    - mod_spec
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 28
    functionName: cffi.setuptools_ext.add_cffi_module
    functionSourceFile: cffi.setuptools_ext
    functionUses: 1
    functionsReached:
    - <builtin>.open
    - dist.py_modules.append
    - cffi.setuptools_ext.error
    - cffi.setuptools_ext._add_c_module
    - f.read
    - <builtin>.exec
    - os.path.exists
    - dist.cmdclass.get
    - <builtin>.compile
    - <builtin>.str
    - cffi.setuptools_ext.execfile
    - ffi._apply_windows_unicode
    - mod_spec.split
    - cffi.setuptools_ext._set_py_limited_api
    - distutils.core.Extension
    - cffi.setuptools_ext._add_py_module
    - <builtin>.type
    - <builtin>.int
    - dist.ext_modules.append
    - setuptools.__version__.partition
    - allsources.extend
    - kwds.pop
    - kwds.copy
    - <builtin>.isinstance
    - <builtin>.hasattr
    - build_file_name.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: mod_spec.split
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: build_file_name.replace
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: ffi._apply_windows_unicode
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - dist
    - ffi
    - module_name
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 152
    functionName: cffi.setuptools_ext._add_py_module
    functionSourceFile: cffi.setuptools_ext
    functionUses: 2
    functionsReached:
    - dist.cmdclass.get
    - dist.py_modules.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 6
    argDefaultValues: []
    argNames:
    - dist
    - ffi
    - module_name
    - source
    - source_extension
    - kwds
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 106
    functionName: cffi.setuptools_ext._add_c_module
    functionSourceFile: cffi.setuptools_ext
    functionUses: 2
    functionsReached:
    - <builtin>.hasattr
    - <builtin>.int
    - dist.ext_modules.append
    - cffi.setuptools_ext._set_py_limited_api
    - setuptools.__version__.partition
    - distutils.core.Extension
    - allsources.extend
    - kwds.pop
    - dist.cmdclass.get
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - Extension
    - kwds
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 73
    functionName: cffi.setuptools_ext._set_py_limited_api
    functionSourceFile: cffi.setuptools_ext
    functionUses: 3
    functionsReached:
    - setuptools.__version__.partition
    - <builtin>.int
    - <builtin>.hasattr
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: setuptools.__version__.partition
    functionSourceFile: setuptools
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: allsources.extend
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    IfCount: 2
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7ff139327a90>
    argNames:
    - tmpdir
    - pre_run
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 119
    functionName: cffi.setuptools_ext._add_c_module.make_mod
    functionSourceFile: cffi.setuptools_ext
    functionUses: 1
    functionsReached:
    - <builtin>.open
    - flags.append
    - s.encode
    - <builtin>.enumerate
    - io.StringIO.write
    - replace_with.startswith
    - <builtin>.any
    - <builtin>.dict
    - cffi.recompiler.Recompiler._check_not_opaque
    - os.getpid
    - lst.sort
    - tp.name.startswith
    - <builtin>.zip
    - cffi.recompiler.Recompiler._field_type
    - cffi.model.ArrayType.__init__
    - <builtin>.len
    - cffi.recompiler.Recompiler.needs_version
    - os.unlink
    - io.StringIO
    - cffi.recompiler.Recompiler._prnt
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - g.close
    - cffi.model.attach_exception_info
    - cffi.recompiler.Recompiler.collect_step_tables
    - g.readlines
    - tp.enumfields
    - replace_with.lstrip
    - cffi.recompiler.StructUnionExpr.__init__
    - cffi.recompiler.Recompiler._to_py
    - op.as_c_expr
    - x.as_python_expr
    - <builtin>.ascii
    - lines.index
    - cffi.recompiler.Recompiler._generate
    - distutils.log.info
    - <builtin>.type
    - result.replace
    - cffi.recompiler.Recompiler._typedef_ctx
    - io.StringIO.getvalue
    - <builtin>.range
    - name.split
    - cffi.model.qualify
    - cffi.recompiler.Recompiler._struct_ctx
    - cffi.recompiler.Recompiler.write_source_to_f
    - cffi.recompiler.Recompiler.write_c_source_to_f
    - s.decode
    - c_fields.append
    - rep.append
    - os.path.dirname
    - replace_with.strip
    - distutils.dir_util.mkpath
    - f1.write
    - cffi.recompiler.FieldExpr.__init__
    - cffi.recompiler.Recompiler.write_py_source_to_f
    - cffi.recompiler.Recompiler.__init__
    - cffi.recompiler.make_c_source
    - cffi.model.BaseTypeByIdentity.get_c_name
    - <builtin>.sorted
    - op.as_python_bytes
    - s.splitlines
    - cffi.cffi_opcode.CffiOp.__init__
    - <builtin>.getattr
    - <builtin>.print
    - cffi.recompiler.TypenameExpr.__init__
    - os.rename
    - <builtin>.max
    - <builtin>.list
    - cffi.recompiler.Recompiler._print_string_literal_in_array
    - <builtin>.tuple
    - cffi.model.StructOrUnion.anonymous_struct_fields
    - cffi.recompiler._make_c_or_py_source
    - <builtin>.map
    - f1.read
    - cffi.recompiler.Recompiler._rel_readlines
    - <builtin>.set
    - cffi.recompiler.Recompiler.collect_type_table
    - cffi.recompiler.Recompiler._add_missing_struct_unions
    - entry.as_c_expr
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: distutils.log.info
    functionSourceFile: distutils
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dist.ext_modules.append
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dist.cmdclass.get
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 140
    functionName: cffi.setuptools_ext._add_c_module.build_ext_make_mod.run
    functionSourceFile: cffi.setuptools_ext
    functionUses: 0
    functionsReached:
    - <builtin>.open
    - flags.append
    - s.encode
    - <builtin>.enumerate
    - io.StringIO.write
    - replace_with.startswith
    - <builtin>.any
    - <builtin>.dict
    - cffi.recompiler.Recompiler._check_not_opaque
    - os.getpid
    - lst.sort
    - tp.name.startswith
    - <builtin>.zip
    - cffi.recompiler.Recompiler._field_type
    - cffi.model.ArrayType.__init__
    - <builtin>.len
    - cffi.recompiler.Recompiler.needs_version
    - os.unlink
    - io.StringIO
    - cffi.recompiler.Recompiler._prnt
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - g.close
    - cffi.model.attach_exception_info
    - base_class.run
    - cffi.recompiler.Recompiler.collect_step_tables
    - g.readlines
    - tp.enumfields
    - replace_with.lstrip
    - cffi.recompiler.StructUnionExpr.__init__
    - cffi.recompiler.Recompiler._to_py
    - op.as_c_expr
    - x.as_python_expr
    - <builtin>.ascii
    - lines.index
    - cffi.recompiler.Recompiler._generate
    - distutils.log.info
    - <builtin>.type
    - result.replace
    - cffi.recompiler.Recompiler._typedef_ctx
    - io.StringIO.getvalue
    - <builtin>.range
    - name.split
    - cffi.model.qualify
    - cffi.recompiler.Recompiler._struct_ctx
    - cffi.recompiler.Recompiler.write_source_to_f
    - cffi.recompiler.Recompiler.write_c_source_to_f
    - s.decode
    - c_fields.append
    - rep.append
    - os.path.dirname
    - replace_with.strip
    - distutils.dir_util.mkpath
    - f1.write
    - cffi.recompiler.FieldExpr.__init__
    - cffi.recompiler.Recompiler.write_py_source_to_f
    - cffi.recompiler.Recompiler.__init__
    - cffi.recompiler.make_c_source
    - cffi.model.BaseTypeByIdentity.get_c_name
    - cffi.setuptools_ext._add_c_module.make_mod
    - <builtin>.sorted
    - op.as_python_bytes
    - s.splitlines
    - cffi.cffi_opcode.CffiOp.__init__
    - <builtin>.getattr
    - <builtin>.print
    - cffi.recompiler.TypenameExpr.__init__
    - os.rename
    - <builtin>.max
    - <builtin>.list
    - cffi.recompiler.Recompiler._print_string_literal_in_array
    - <builtin>.tuple
    - cffi.model.StructOrUnion.anonymous_struct_fields
    - cffi.recompiler._make_c_or_py_source
    - <builtin>.map
    - f1.read
    - cffi.recompiler.Recompiler._rel_readlines
    - <builtin>.set
    - cffi.recompiler.Recompiler.collect_type_table
    - cffi.recompiler.Recompiler._add_missing_struct_unions
    - entry.as_c_expr
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: base_class.run
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 3
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - py_file
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 9
    functionLinenumber: 159
    functionName: cffi.setuptools_ext._add_py_module.generate_mod
    functionSourceFile: cffi.setuptools_ext
    functionUses: 2
    functionsReached:
    - <builtin>.open
    - flags.append
    - s.encode
    - <builtin>.enumerate
    - io.StringIO.write
    - replace_with.startswith
    - <builtin>.any
    - <builtin>.dict
    - cffi.recompiler.Recompiler._check_not_opaque
    - os.getpid
    - lst.sort
    - tp.name.startswith
    - <builtin>.zip
    - cffi.recompiler.Recompiler._field_type
    - cffi.model.ArrayType.__init__
    - <builtin>.len
    - cffi.recompiler.Recompiler.needs_version
    - os.unlink
    - io.StringIO
    - cffi.recompiler.Recompiler._prnt
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - g.close
    - cffi.model.attach_exception_info
    - cffi.recompiler.Recompiler.collect_step_tables
    - g.readlines
    - tp.enumfields
    - replace_with.lstrip
    - cffi.recompiler.StructUnionExpr.__init__
    - cffi.recompiler.Recompiler._to_py
    - op.as_c_expr
    - x.as_python_expr
    - <builtin>.ascii
    - lines.index
    - cffi.recompiler.Recompiler._generate
    - distutils.log.info
    - <builtin>.type
    - result.replace
    - cffi.recompiler.Recompiler._typedef_ctx
    - io.StringIO.getvalue
    - <builtin>.range
    - name.split
    - cffi.model.qualify
    - cffi.recompiler.Recompiler._struct_ctx
    - cffi.recompiler.Recompiler.write_source_to_f
    - cffi.recompiler.Recompiler.write_c_source_to_f
    - s.decode
    - c_fields.append
    - rep.append
    - os.path.dirname
    - replace_with.strip
    - distutils.dir_util.mkpath
    - f1.write
    - cffi.recompiler.FieldExpr.__init__
    - cffi.recompiler.Recompiler.write_py_source_to_f
    - cffi.recompiler.make_py_source
    - cffi.recompiler.Recompiler.__init__
    - cffi.model.BaseTypeByIdentity.get_c_name
    - <builtin>.sorted
    - op.as_python_bytes
    - s.splitlines
    - cffi.cffi_opcode.CffiOp.__init__
    - <builtin>.getattr
    - <builtin>.print
    - cffi.recompiler.TypenameExpr.__init__
    - os.rename
    - <builtin>.max
    - <builtin>.list
    - cffi.recompiler.Recompiler._print_string_literal_in_array
    - <builtin>.tuple
    - cffi.model.StructOrUnion.anonymous_struct_fields
    - cffi.recompiler._make_c_or_py_source
    - <builtin>.map
    - f1.read
    - cffi.recompiler.Recompiler._rel_readlines
    - <builtin>.set
    - cffi.recompiler.Recompiler.collect_type_table
    - cffi.recompiler.Recompiler._add_missing_struct_unions
    - entry.as_c_expr
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 168
    functionName: cffi.setuptools_ext._add_py_module.build_py_make_mod.run
    functionSourceFile: cffi.setuptools_ext
    functionUses: 0
    functionsReached:
    - <builtin>.open
    - module_name.split
    - flags.append
    - s.encode
    - <builtin>.enumerate
    - io.StringIO.write
    - replace_with.startswith
    - <builtin>.any
    - <builtin>.dict
    - cffi.recompiler.Recompiler._check_not_opaque
    - os.getpid
    - lst.sort
    - tp.name.startswith
    - <builtin>.zip
    - cffi.recompiler.Recompiler._field_type
    - cffi.model.ArrayType.__init__
    - <builtin>.len
    - cffi.recompiler.Recompiler.needs_version
    - os.unlink
    - io.StringIO
    - cffi.recompiler.Recompiler._prnt
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - g.close
    - cffi.model.attach_exception_info
    - base_class.run
    - cffi.recompiler.Recompiler.collect_step_tables
    - g.readlines
    - tp.enumfields
    - replace_with.lstrip
    - cffi.recompiler.StructUnionExpr.__init__
    - cffi.recompiler.Recompiler._to_py
    - op.as_c_expr
    - x.as_python_expr
    - <builtin>.ascii
    - lines.index
    - cffi.recompiler.Recompiler._generate
    - distutils.log.info
    - <builtin>.type
    - result.replace
    - cffi.recompiler.Recompiler._typedef_ctx
    - io.StringIO.getvalue
    - <builtin>.range
    - name.split
    - cffi.model.qualify
    - cffi.recompiler.Recompiler._struct_ctx
    - cffi.recompiler.Recompiler.write_source_to_f
    - cffi.recompiler.Recompiler.write_c_source_to_f
    - s.decode
    - c_fields.append
    - rep.append
    - os.path.dirname
    - replace_with.strip
    - distutils.dir_util.mkpath
    - f1.write
    - cffi.recompiler.FieldExpr.__init__
    - cffi.recompiler.Recompiler.write_py_source_to_f
    - cffi.recompiler.make_py_source
    - cffi.recompiler.Recompiler.__init__
    - cffi.model.BaseTypeByIdentity.get_c_name
    - <builtin>.sorted
    - op.as_python_bytes
    - cffi.setuptools_ext._add_py_module.generate_mod
    - s.splitlines
    - cffi.cffi_opcode.CffiOp.__init__
    - <builtin>.getattr
    - <builtin>.print
    - cffi.recompiler.TypenameExpr.__init__
    - os.rename
    - <builtin>.max
    - <builtin>.list
    - cffi.recompiler.Recompiler._print_string_literal_in_array
    - <builtin>.tuple
    - cffi.model.StructOrUnion.anonymous_struct_fields
    - cffi.recompiler._make_c_or_py_source
    - <builtin>.map
    - f1.read
    - cffi.recompiler.Recompiler._rel_readlines
    - <builtin>.set
    - cffi.recompiler.Recompiler.collect_type_table
    - cffi.recompiler.Recompiler._add_missing_struct_unions
    - entry.as_c_expr
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: module_name.split
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 0
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 173
    functionName: cffi.setuptools_ext._add_py_module.build_py_make_mod.get_source_files
    functionSourceFile: cffi.setuptools_ext
    functionUses: 0
    functionsReached:
    - base_class.get_source_files
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: base_class.get_source_files
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: dist.py_modules.append
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 10
    functionLinenumber: 201
    functionName: cffi.setuptools_ext._add_py_module.build_ext_make_mod.run
    functionSourceFile: cffi.setuptools_ext
    functionUses: 0
    functionsReached:
    - <builtin>.open
    - module_name.split
    - flags.append
    - s.encode
    - <builtin>.enumerate
    - io.StringIO.write
    - replace_with.startswith
    - <builtin>.any
    - <builtin>.dict
    - cffi.recompiler.Recompiler._check_not_opaque
    - os.getpid
    - lst.sort
    - tp.name.startswith
    - <builtin>.zip
    - cffi.recompiler.Recompiler._field_type
    - cffi.model.ArrayType.__init__
    - <builtin>.len
    - cffi.recompiler.Recompiler.needs_version
    - os.unlink
    - io.StringIO
    - cffi.recompiler.Recompiler._prnt
    - result.count
    - cffi.recompiler.Recompiler._enum_fields
    - <builtin>.isinstance
    - g.close
    - cffi.model.attach_exception_info
    - cffi.recompiler.Recompiler.collect_step_tables
    - g.readlines
    - tp.enumfields
    - replace_with.lstrip
    - cffi.recompiler.StructUnionExpr.__init__
    - cffi.recompiler.Recompiler._to_py
    - op.as_c_expr
    - x.as_python_expr
    - <builtin>.ascii
    - lines.index
    - cffi.recompiler.Recompiler._generate
    - base_class_2.run
    - distutils.log.info
    - <builtin>.type
    - result.replace
    - cffi.recompiler.Recompiler._typedef_ctx
    - io.StringIO.getvalue
    - <builtin>.range
    - name.split
    - cffi.model.qualify
    - cffi.recompiler.Recompiler._struct_ctx
    - cffi.recompiler.Recompiler.write_source_to_f
    - cffi.recompiler.Recompiler.write_c_source_to_f
    - s.decode
    - c_fields.append
    - rep.append
    - os.path.dirname
    - replace_with.strip
    - distutils.dir_util.mkpath
    - f1.write
    - cffi.recompiler.FieldExpr.__init__
    - cffi.recompiler.Recompiler.write_py_source_to_f
    - cffi.recompiler.make_py_source
    - cffi.recompiler.Recompiler.__init__
    - cffi.model.BaseTypeByIdentity.get_c_name
    - <builtin>.sorted
    - op.as_python_bytes
    - cffi.setuptools_ext._add_py_module.generate_mod
    - s.splitlines
    - cffi.cffi_opcode.CffiOp.__init__
    - <builtin>.getattr
    - <builtin>.print
    - cffi.recompiler.TypenameExpr.__init__
    - os.rename
    - <builtin>.max
    - <builtin>.list
    - build_py.get_package_dir
    - cffi.recompiler.Recompiler._print_string_literal_in_array
    - <builtin>.tuple
    - cffi.model.StructOrUnion.anonymous_struct_fields
    - cffi.recompiler._make_c_or_py_source
    - <builtin>.map
    - f1.read
    - cffi.recompiler.Recompiler._rel_readlines
    - <builtin>.set
    - cffi.recompiler.Recompiler.collect_type_table
    - cffi.recompiler.Recompiler._add_missing_struct_unions
    - entry.as_c_expr
    - os.path.join
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: base_class_2.run
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: build_py.get_package_dir
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - dist
    - attr
    - value
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 213
    functionName: cffi.setuptools_ext.cffi_modules
    functionSourceFile: cffi.setuptools_ext
    functionUses: 0
    functionsReached:
    - <builtin>.open
    - dist.py_modules.append
    - cffi.setuptools_ext.error
    - cffi.setuptools_ext._add_c_module
    - f.read
    - <builtin>.exec
    - os.path.exists
    - cffi.setuptools_ext.add_cffi_module
    - dist.cmdclass.get
    - <builtin>.compile
    - <builtin>.str
    - cffi.setuptools_ext.execfile
    - ffi._apply_windows_unicode
    - mod_spec.split
    - cffi.setuptools_ext._set_py_limited_api
    - distutils.core.Extension
    - cffi.setuptools_ext._add_py_module
    - <builtin>.type
    - <builtin>.int
    - dist.ext_modules.append
    - setuptools.__version__.partition
    - allsources.extend
    - kwds.pop
    - kwds.copy
    - <builtin>.isinstance
    - <builtin>.hasattr
    - build_file_name.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  Function list name: All functions
Function coverage:
  '...fuzz_recompiler':
  - 44
  - 45
  '...fuzz_recompiler.TestOneInput':
  - 23
  - 24
  - 26
  - 27
  - 30
  - 31
  '...fuzz_recompiler.main':
  - 40
  - 41
  - 39
  cffi._imp_emulation.find_module:
  - 64
  - 65
  - 40
  - 42
  - 74
  - 75
  - 76
  - 77
  - 47
  - 48
  - 50
  - 55
  - 56
  - 57
  - 59
  - 60
  - 62
  cffi._imp_emulation.load_dynamic:
  - 81
  - 82
  - 83
  cffi.api:
  - 19
  - 11
  - 14
  - 7
  cffi.api.<lambda1>:
  - 11
  cffi.api.FFI:
  - 24
  - 479
  cffi.api.FFI.__init__:
  - 42
  - 45
  - 50
  - 52
  - 67
  - 68
  - 70
  - 71
  - 80
  - 81
  - 82
  - 83
  - 84
  - 85
  - 88
  - 89
  - 90
  - 92
  - 93
  - 94
  - 97
  - 98
  cffi.api.FFI._apply_embedding_fix:
  - 610
  - 611
  - 614
  - 615
  - 631
  - 617
  - 619
  - 633
  - 594
  - 627
  - 596
  - 628
  - 599
  - 600
  - 601
  - 634
  - 635
  - 606
  cffi.api.FFI._apply_embedding_fix.ensure:
  - 592
  - 590
  - 591
  cffi.api.FFI._apply_windows_unicode:
  - 580
  - 581
  - 583
  cffi.api.FFI._cdef:
  - 128
  - 129
  - 130
  - 132
  - 134
  - 135
  - 120
  - 121
  - 123
  - 125
  - 126
  - 127
  cffi.api.FFI._get_cached_btype:
  - 440
  - 441
  - 434
  - 442
  cffi.api.FFI._get_errno:
  - 476
  cffi.api.FFI._pointer_to:
  - 487
  cffi.api.FFI._set_errno:
  - 478
  cffi.api.FFI._typeof:
  - 186
  - 189
  cffi.api.FFI._typeof_locked:
  - 165
  - 168
  - 169
  - 171
  - 173
  - 174
  - 175
  cffi.api.FFI._typeoffsetof:
  - 512
  - 513
  - 511
  cffi.api.FFI.addressof:
  - 490
  - 496
  - 498
  - 499
  - 501
  - 502
  - 504
  - 507
  - 508
  cffi.api.FFI.alignof:
  - 224
  - 227
  - 228
  - 229
  cffi.api.FFI.callback:
  - 385
  - 398
  - 399
  - 400
  - 403
  cffi.api.FFI.callback.callback_decorator_wrap:
  - 393
  - 396
  cffi.api.FFI.cast:
  - 298
  - 299
  - 300
  - 294
  cffi.api.FFI.cdef:
  - 112
  - 102
  cffi.api.FFI.compile:
  - 722
  - 725
  - 711
  cffi.api.FFI.distutils_extension:
  - 674
  - 675
  - 679
  - 680
  - 681
  - 683
  - 664
  - 665
  - 666
  - 670
  cffi.api.FFI.dlclose:
  - 160
  - 156
  cffi.api.FFI.dlopen:
  - 138
  - 144
  - 146
  - 150
  - 151
  - 152
  cffi.api.FFI.embedding_api:
  - 115
  - 116
  cffi.api.FFI.embedding_init_code:
  - 768
  - 769
  - 771
  - 773
  - 775
  - 754
  - 761
  - 762
  - 763
  - 764
  - 765
  - 766
  cffi.api.FFI.emit_c_code:
  - 689
  - 692
  - 695
  cffi.api.FFI.emit_python_code:
  - 704
  - 707
  - 701
  cffi.api.FFI.from_buffer:
  - 352
  - 361
  - 363
  - 364
  - 365
  cffi.api.FFI.from_handle:
  - 544
  cffi.api.FFI.gc:
  - 422
  - 431
  cffi.api.FFI.getctype:
  - 417
  - 419
  - 406
  - 411
  - 412
  - 413
  - 414
  - 415
  cffi.api.FFI.getwinerror:
  - 483
  cffi.api.FFI.include:
  - 518
  - 526
  - 530
  - 534
  - 535
  - 536
  - 537
  - 538
  cffi.api.FFI.init_once:
  - 738
  - 746
  - 740
  - 749
  cffi.api.FFI.list_types:
  - 800
  - 784
  - 791
  - 792
  - 793
  - 794
  - 795
  - 796
  - 797
  - 798
  - 799
  cffi.api.FFI.memmove:
  - 369
  - 382
  cffi.api.FFI.new:
  - 267
  - 265
  - 266
  - 243
  cffi.api.FFI.new_allocator:
  - 284
  - 285
  - 271
  cffi.api.FFI.new_allocator.allocate:
  - 288
  - 289
  - 290
  cffi.api.FFI.new_handle:
  - 541
  cffi.api.FFI.offsetof:
  - 232
  - 240
  - 238
  - 239
  cffi.api.FFI.release:
  - 547
  cffi.api.FFI.set_source:
  - 647
  - 642
  - 644
  - 639
  cffi.api.FFI.set_source_pkgconfig:
  - 656
  - 657
  - 658
  - 653
  cffi.api.FFI.set_unicode:
  - 550
  - 556
  - 558
  - 559
  - 560
  - 569
  cffi.api.FFI.sizeof:
  - 214
  - 217
  - 218
  - 219
  - 221
  cffi.api.FFI.string:
  - 318
  - 303
  cffi.api.FFI.typeof:
  - 195
  - 199
  - 200
  - 201
  - 202
  - 203
  - 204
  - 205
  - 207
  - 208
  - 210
  cffi.api.FFI.unpack:
  - 321
  - 335
  cffi.api.FFI.verify:
  - 458
  - 459
  - 464
  - 467
  - 468
  - 472
  - 446
  cffi.api._builtin_function_type:
  - 965
  cffi.api._load_backend_lib:
  - 806
  - 807
  - 808
  - 812
  - 814
  - 818
  - 819
  - 820
  - 825
  - 828
  cffi.api._make_ffi_library:
  - 832
  - 942
  - 944
  - 945
  - 949
  cffi.api._make_ffi_library.FFILibrary.__addressof__:
  - 929
  - 930
  - 931
  - 932
  - 934
  - 935
  - 927
  cffi.api._make_ffi_library.FFILibrary.__cffi_close__:
  - 939
  - 940
  cffi.api._make_ffi_library.FFILibrary.__dir__:
  - 924
  - 925
  cffi.api._make_ffi_library.FFILibrary.__getattr__:
  - 912
  - 913
  cffi.api._make_ffi_library.FFILibrary.__setattr__:
  - 921
  - 916
  - 918
  - 919
  cffi.api._make_ffi_library.accessor_function:
  - 837
  - 838
  cffi.api._make_ffi_library.accessor_variable:
  - 848
  - 849
  - 844
  - 847
  cffi.api._make_ffi_library.accessor_variable.<lambda1>:
  - 848
  cffi.api._make_ffi_library.accessor_variable.<lambda2>:
  - 849
  cffi.api._make_ffi_library.addressof_var:
  - 856
  - 859
  - 860
  - 861
  - 862
  cffi.api._make_ffi_library.make_accessor:
  - 902
  - 904
  - 905
  - 906
  - 908
  cffi.api._make_ffi_library.update_accessors:
  - 896
  - 897
  - 878
  - 881
  - 882
  - 883
  - 884
  - 886
  - 888
  - 891
  cffi.api._make_ffi_library.update_accessors.accessor_enum:
  - 893
  cffi.backend_ctypes:
  - 10
  - 4
  cffi.backend_ctypes.<lambda1>:
  - 10
  cffi.backend_ctypes.CTypesBackend:
  - 292
  - 294
  - 296
  - 298
  - 301
  - 302
  - 304
  - 307
  cffi.backend_ctypes.CTypesBackend._new_struct_or_union:
  - 727
  cffi.backend_ctypes.CTypesBackend.alignof:
  - 995
  - 996
  cffi.backend_ctypes.CTypesBackend.callback:
  - 1008
  cffi.backend_ctypes.CTypesBackend.cast:
  - 1004
  cffi.backend_ctypes.CTypesBackend.complete_struct_or_union:
  - 796
  - 798
  - 799
  - 801
  - 804
  - 814
  - 816
  - 835
  - 837
  - 838
  - 839
  - 846
  - 739
  - 750
  - 751
  - 752
  - 755
  - 757
  - 759
  cffi.backend_ctypes.CTypesBackend.complete_struct_or_union._create_ctype_obj:
  - 768
  - 766
  - 767
  cffi.backend_ctypes.CTypesBackend.complete_struct_or_union.getter:
  - 808
  - 809
  - 810
  - 843
  - 820
  - 821
  - 822
  - 826
  cffi.backend_ctypes.CTypesBackend.complete_struct_or_union.initialize:
  - 773
  - 774
  - 778
  - 779
  - 781
  - 782
  - 785
  - 786
  - 787
  - 791
  - 792
  - 793
  - 794
  cffi.backend_ctypes.CTypesBackend.complete_struct_or_union.setter:
  - 832
  - 833
  - 812
  - 845
  - 829
  - 830
  - 831
  cffi.backend_ctypes.CTypesBackend.gcp:
  - 1031
  - 1033
  - 1044
  - 1013
  - 1046
  cffi.backend_ctypes.CTypesBackend.gcp.MyRef.__eq__:
  - 1017
  - 1019
  cffi.backend_ctypes.CTypesBackend.gcp.MyRef.__hash__:
  - 1026
  cffi.backend_ctypes.CTypesBackend.gcp.remove:
  - 1040
  - 1041
  - 1042
  cffi.backend_ctypes.CTypesBackend.get_errno:
  - 976
  cffi.backend_ctypes.CTypesBackend.getcname:
  - 1052
  cffi.backend_ctypes.CTypesBackend.load_library:
  - 324
  - 325
  cffi.backend_ctypes.CTypesBackend.new_array_type:
  - 711
  - 594
  - 600
  - 602
  - 603
  cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray:
  - 610
  - 613
  - 614
  - 666
  cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray.__add__:
  - 699
  - 700
  - 701
  - 702
  cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray.__getitem__:
  - 657
  - 659
  cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray.__init__:
  - 619
  - 620
  - 623
  - 624
  - 626
  - 627
  - 629
  - 631
  - 632
  cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray.__len__:
  - 654
  cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray.__setitem__:
  - 664
  - 662
  cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray._arg_to_ctypes:
  - 696
  cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray._convert_to_address:
  - 683
  - 684
  - 686
  cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray._from_ctypes:
  - 690
  cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray._get_own_repr:
  - 680
  - 678
  - 679
  cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray._initialize:
  - 640
  - 641
  - 643
  - 644
  - 646
  - 647
  - 648
  - 649
  - 650
  - 651
  - 636
  - 637
  - 639
  cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray._to_string:
  - 675
  - 668
  - 669
  - 670
  - 671
  cffi.backend_ctypes.CTypesBackend.new_enum_type:
  - 952
  - 972
  - 950
  - 951
  cffi.backend_ctypes.CTypesBackend.new_enum_type.CTypesEnum._get_own_repr:
  - 963
  cffi.backend_ctypes.CTypesBackend.new_enum_type.CTypesEnum._to_string:
  - 970
  cffi.backend_ctypes.CTypesBackend.new_function_type:
  - 849
  - 946
  - 850
  - 851
  - 852
  cffi.backend_ctypes.CTypesBackend.new_function_type.CTypesFunctionPtr:
  - 856
  - 859
  cffi.backend_ctypes.CTypesBackend.new_function_type.CTypesFunctionPtr.__call__:
  - 928
  - 930
  - 931
  - 932
  - 933
  - 934
  - 935
  - 937
  - 942
  - 943
  - 944
  - 923
  - 924
  - 925
  - 926
  cffi.backend_ctypes.CTypesBackend.new_function_type.CTypesFunctionPtr.__init__:
  - 865
  - 866
  - 867
  - 897
  - 898
  - 888
  - 891
  cffi.backend_ctypes.CTypesBackend.new_function_type.CTypesFunctionPtr.__init__.callback:
  - 872
  - 873
  - 875
  - 876
  - 878
  - 880
  - 881
  - 882
  cffi.backend_ctypes.CTypesBackend.new_function_type.CTypesFunctionPtr.__repr__:
  - 909
  - 910
  - 911
  - 912
  - 914
  - 915
  cffi.backend_ctypes.CTypesBackend.new_function_type.CTypesFunctionPtr._get_own_repr:
  - 920
  - 918
  cffi.backend_ctypes.CTypesBackend.new_function_type.CTypesFunctionPtr._initialize:
  - 904
  cffi.backend_ctypes.CTypesBackend.new_pointer_type:
  - 586
  - 587
  - 590
  - 499
  - 501
  - 502
  - 504
  cffi.backend_ctypes.CTypesBackend.new_pointer_type.CTypesPtr:
  - 514
  - 515
  - 516
  - 519
  - 520
  - 522
  - 561
  - 569
  - 511
  cffi.backend_ctypes.CTypesBackend.new_pointer_type.CTypesPtr.__add__:
  - 538
  - 539
  cffi.backend_ctypes.CTypesBackend.new_pointer_type.CTypesPtr.__getitem__:
  - 554
  - 556
  cffi.backend_ctypes.CTypesBackend.new_pointer_type.CTypesPtr.__init__:
  - 525
  - 526
  - 527
  - 529
  - 532
  - 533
  cffi.backend_ctypes.CTypesBackend.new_pointer_type.CTypesPtr.__setitem__:
  - 559
  cffi.backend_ctypes.CTypesBackend.new_pointer_type.CTypesPtr.__sub__:
  - 545
  - 546
  - 548
  cffi.backend_ctypes.CTypesBackend.new_pointer_type.CTypesPtr._arg_to_ctypes:
  - 564
  - 565
  - 567
  cffi.backend_ctypes.CTypesBackend.new_pointer_type.CTypesPtr._get_own_repr:
  - 584
  - 581
  - 583
  cffi.backend_ctypes.CTypesBackend.new_pointer_type.CTypesPtr._to_string:
  - 578
  - 571
  - 573
  - 574
  cffi.backend_ctypes.CTypesBackend.new_primitive_type:
  - 352
  - 354
  - 358
  - 494
  - 344
  - 347
  - 349
  cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive:
  - 417
  - 390
  - 455
  - 487
  - 490
  - 399
  - 438
  - 471
  - 408
  cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive.__int__:
  - 432
  - 406
  - 415
  cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive.__nonzero__:
  - 465
  cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive._cast_from:
  - 420
  - 422
  - 423
  - 424
  - 393
  - 394
  - 395
  - 426
  - 428
  - 429
  - 430
  - 402
  - 403
  - 404
  - 411
  - 412
  - 413
  cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive._create_ctype_obj:
  - 386
  - 387
  - 388
  cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive._from_ctypes:
  - 481
  cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive._initialize:
  - 485
  cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive._to_ctypes:
  - 448
  - 458
  - 460
  - 474
  - 441
  - 442
  - 443
  - 477
  - 447
  cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive._to_string:
  - 492
  cffi.backend_ctypes.CTypesBackend.new_primitive_type._cast_source_to_int:
  - 361
  - 362
  - 363
  - 364
  - 365
  - 366
  - 367
  cffi.backend_ctypes.CTypesBackend.new_struct_type:
  - 731
  cffi.backend_ctypes.CTypesBackend.new_union_type:
  - 734
  cffi.backend_ctypes.CTypesBackend.new_void_type:
  - 340
  cffi.backend_ctypes.CTypesBackend.new_void_type.CTypesVoid._to_ctypes:
  - 336
  cffi.backend_ctypes.CTypesBackend.newp:
  - 1001
  - 999
  cffi.backend_ctypes.CTypesBackend.rawaddressof:
  - 1089
  - 1090
  - 1091
  - 1092
  - 1093
  - 1094
  - 1078
  - 1079
  - 1080
  - 1081
  - 1084
  - 1085
  - 1086
  cffi.backend_ctypes.CTypesBackend.set_errno:
  - 979
  cffi.backend_ctypes.CTypesBackend.sizeof:
  - 992
  - 988
  - 989
  - 991
  cffi.backend_ctypes.CTypesBackend.string:
  - 982
  cffi.backend_ctypes.CTypesBackend.typeoffsetof:
  - 1056
  - 1058
  - 1061
  - 1063
  - 1064
  - 1065
  - 1067
  - 1070
  - 1071
  - 1055
  cffi.backend_ctypes.CTypesBaseStructOrUnion.__repr__:
  - 270
  cffi.backend_ctypes.CTypesBaseStructOrUnion._convert_to_address:
  - 257
  - 254
  - 255
  cffi.backend_ctypes.CTypesBaseStructOrUnion._from_ctypes:
  - 261
  cffi.backend_ctypes.CTypesBaseStructOrUnion._get_own_repr:
  - 247
  cffi.backend_ctypes.CTypesBaseStructOrUnion._offsetof:
  - 251
  cffi.backend_ctypes.CTypesData:
  - 132
  - 133
  - 134
  - 135
  - 136
  - 137
  cffi.backend_ctypes.CTypesData.__hash__:
  - 140
  cffi.backend_ctypes.CTypesData.__repr__:
  - 80
  - 79
  cffi.backend_ctypes.CTypesData._addr_repr:
  - 74
  - 75
  - 71
  cffi.backend_ctypes.CTypesData._alignment:
  - 106
  cffi.backend_ctypes.CTypesData._arg_to_ctypes:
  - 38
  - 39
  - 40
  - 41
  - 43
  cffi.backend_ctypes.CTypesData._cast_to_integer:
  - 102
  cffi.backend_ctypes.CTypesData._convert_to_address:
  - 83
  cffi.backend_ctypes.CTypesData._create_ctype_obj:
  - 48
  - 49
  - 51
  cffi.backend_ctypes.CTypesData._fix_class:
  - 64
  - 63
  cffi.backend_ctypes.CTypesData._get_c_name:
  - 59
  cffi.backend_ctypes.CTypesData._get_size:
  - 92
  cffi.backend_ctypes.CTypesData._get_size_of_instance:
  - 95
  cffi.backend_ctypes.CTypesData._make_cmp:
  - 113
  cffi.backend_ctypes.CTypesData._make_cmp.cmp:
  - 128
  - 115
  - 116
  - 117
  - 118
  - 119
  - 120
  - 121
  - 124
  - 126
  cffi.backend_ctypes.CTypesGenericArray.__iter__:
  - 164
  - 165
  cffi.backend_ctypes.CTypesGenericArray._get_own_repr:
  - 168
  cffi.backend_ctypes.CTypesGenericArray._newp:
  - 161
  cffi.backend_ctypes.CTypesGenericPrimitive.__hash__:
  - 150
  cffi.backend_ctypes.CTypesGenericPrimitive._get_own_repr:
  - 153
  cffi.backend_ctypes.CTypesGenericPtr.__nonzero__:
  - 210
  cffi.backend_ctypes.CTypesGenericPtr._cast_from:
  - 182
  - 184
  - 185
  - 186
  - 191
  cffi.backend_ctypes.CTypesGenericPtr._convert_to_address:
  - 235
  - 231
  cffi.backend_ctypes.CTypesGenericPtr._from_ctypes:
  - 222
  - 223
  cffi.backend_ctypes.CTypesGenericPtr._get_own_repr:
  - 202
  cffi.backend_ctypes.CTypesGenericPtr._initialize:
  - 227
  - 228
  cffi.backend_ctypes.CTypesGenericPtr._new_pointer_at:
  - 195
  - 197
  cffi.backend_ctypes.CTypesGenericPtr._newp:
  - 178
  cffi.backend_ctypes.CTypesGenericPtr._to_ctypes:
  - 217
  - 218
  - 215
  cffi.backend_ctypes.CTypesLibrary.load_function:
  - 1104
  - 1105
  cffi.backend_ctypes.CTypesLibrary.read_variable:
  - 1114
  - 1111
  cffi.backend_ctypes.CTypesLibrary.write_variable:
  - 1120
  - 1121
  - 1117
  - 1118
  - 1119
  cffi.cffi_opcode:
  - 185
  - 186
  - 180
  cffi.cffi_opcode.CffiOp.__str__:
  - 27
  cffi.cffi_opcode.CffiOp.as_c_expr:
  - 9
  - 10
  cffi.cffi_opcode.CffiOp.as_python_bytes:
  - 16
  - 17
  - 18
  - 21
  - 22
  - 24
  cffi.commontypes:
  - 11
  - 79
  - 15
  - 80
  - 18
  - 19
  cffi.commontypes.resolve_common_type:
  - 32
  - 33
  - 34
  - 38
  - 44
  - 46
  - 29
  - 30
  cffi.commontypes.win_common_types:
  - 57
  cffi.cparser:
  - 32
  - 33
  - 34
  - 35
  - 36
  - 38
  - 39
  - 40
  - 41
  - 42
  - 11
  - 44
  - 46
  - 15
  - 48
  - 27
  - 29
  cffi.cparser.Parser.__init__:
  - 299
  - 301
  cffi.cparser.Parser._add_constants:
  - 449
  - 450
  cffi.cparser.Parser._add_integer_constant:
  - 457
  - 458
  - 459
  - 462
  - 463
  - 465
  - 466
  - 468
  - 469
  cffi.cparser.Parser._as_func_arg:
  - 738
  - 739
  - 740
  - 741
  cffi.cparser.Parser._build_enum_type:
  - 960
  - 961
  - 962
  - 963
  - 965
  - 966
  - 967
  - 970
  - 950
  - 955
  - 956
  - 959
  cffi.cparser.Parser._c_div:
  - 945
  cffi.cparser.Parser._convert_pycparser_error:
  - 352
  - 353
  - 354
  - 355
  - 350
  - 351
  cffi.cparser.Parser._declare:
  - 563
  - 565
  - 567
  - 571
  - 573
  - 574
  cffi.cparser.Parser._declare_function:
  - 489
  - 490
  - 492
  - 494
  - 498
  cffi.cparser.Parser._extract_quals:
  - 584
  - 578
  - 580
  - 582
  cffi.cparser.Parser._get_struct_union_enum_type:
  - 771
  - 774
  - 783
  - 785
  - 786
  - 787
  - 788
  - 789
  - 790
  - 791
  - 793
  - 796
  - 797
  - 799
  - 803
  - 804
  - 805
  - 806
  - 811
  - 817
  - 820
  - 826
  - 827
  - 828
  - 832
  - 834
  - 837
  - 839
  - 841
  - 842
  - 843
  - 844
  - 845
  - 846
  - 847
  - 848
  - 849
  - 850
  - 851
  - 852
  - 853
  - 854
  - 857
  - 858
  - 860
  cffi.cparser.Parser._get_type_and_quals:
  - 642
  - 643
  - 647
  - 648
  - 654
  - 655
  - 656
  - 657
  - 659
  - 660
  - 663
  - 664
  - 666
  - 669
  - 672
  - 674
  - 677
  - 679
  - 682
  - 684
  - 687
  - 689
  - 692
  - 693
  - 695
  - 696
  - 600
  - 601
  - 602
  - 605
  - 608
  - 610
  - 613
  - 619
  - 620
  - 624
  - 627
  - 629
  - 631
  - 632
  - 633
  - 636
  - 637
  - 639
  cffi.cparser.Parser._get_type_pointer:
  - 589
  - 590
  - 591
  - 592
  - 594
  - 595
  cffi.cparser.Parser._get_unknown_ptr_type:
  - 1003
  - 1004
  cffi.cparser.Parser._get_unknown_type:
  - 993
  - 995
  - 997
  - 985
  - 986
  - 988
  - 989
  - 991
  cffi.cparser.Parser._internal_parse:
  - 394
  - 396
  - 399
  - 400
  - 401
  - 409
  - 411
  - 412
  - 413
  - 414
  - 418
  - 419
  - 420
  - 421
  - 422
  - 423
  - 425
  - 426
  - 428
  - 431
  - 432
  - 439
  - 443
  - 444
  cffi.cparser.Parser._make_partial:
  - 864
  - 866
  cffi.cparser.Parser._parse:
  - 308
  - 313
  - 315
  - 316
  - 318
  - 319
  - 320
  - 323
  - 324
  - 325
  - 326
  - 330
  - 331
  - 332
  - 333
  - 334
  - 336
  - 338
  - 340
  - 341
  cffi.cparser.Parser._parse_constant:
  - 897
  - 899
  - 901
  - 903
  - 907
  - 909
  - 916
  - 917
  - 918
  - 919
  - 921
  - 923
  - 925
  - 926
  - 927
  - 928
  - 929
  - 931
  - 933
  - 935
  - 937
  - 873
  - 875
  - 876
  - 878
  - 879
  - 881
  - 883
  - 884
  - 885
  - 886
  - 887
  - 889
  - 890
  - 891
  - 895
  cffi.cparser.Parser._parse_decl:
  - 512
  - 513
  - 517
  - 518
  - 520
  - 521
  - 522
  - 523
  - 524
  - 525
  - 526
  - 527
  - 528
  - 530
  - 531
  - 532
  - 534
  - 535
  - 541
  - 545
  - 546
  - 548
  - 549
  - 502
  - 503
  - 504
  - 505
  - 507
  - 508
  - 509
  - 510
  - 511
  cffi.cparser.Parser._parse_function_type:
  - 704
  - 705
  - 712
  - 713
  - 714
  - 717
  - 718
  - 719
  - 735
  - 723
  - 725
  - 727
  - 732
  - 733
  - 703
  cffi.cparser.Parser._process_macros:
  - 472
  - 473
  - 474
  - 475
  - 476
  - 477
  cffi.cparser.Parser.convert_pycparser_error:
  - 360
  - 362
  - 363
  - 364
  cffi.cparser.Parser.include:
  - 974
  - 975
  - 977
  - 978
  - 979
  - 980
  - 981
  cffi.cparser.Parser.parse:
  - 389
  - 371
  - 372
  - 375
  - 378
  - 379
  cffi.cparser.Parser.parse_type:
  - 552
  cffi.cparser.Parser.parse_type_and_quals:
  - 560
  - 555
  - 558
  cffi.cparser._common_type_names:
  - 261
  - 262
  - 263
  - 264
  - 265
  - 266
  - 267
  - 271
  - 272
  - 273
  - 274
  - 275
  - 276
  - 278
  - 281
  - 283
  - 285
  - 286
  - 287
  - 288
  - 290
  cffi.cparser._get_parser:
  - 52
  - 53
  cffi.cparser._preprocess:
  - 192
  - 197
  - 200
  - 201
  - 202
  - 204
  - 206
  - 207
  - 214
  - 215
  - 216
  - 219
  - 222
  - 225
  - 232
  - 233
  - 234
  - 235
  - 236
  - 245
  - 247
  - 250
  - 252
  cffi.cparser._preprocess.replace_keeping_newlines:
  - 196
  cffi.cparser._preprocess_extern_python:
  - 128
  - 130
  - 133
  - 137
  - 138
  - 140
  - 142
  - 113
  - 114
  - 145
  - 116
  - 146
  - 120
  - 121
  - 122
  - 124
  - 125
  - 127
  cffi.cparser._put_back_line_directives:
  - 187
  cffi.cparser._put_back_line_directives.replace:
  - 186
  - 182
  - 183
  cffi.cparser._remove_line_directives:
  - 177
  cffi.cparser._remove_line_directives.replace:
  - 174
  - 175
  cffi.cparser._warn_for_non_extern_non_static_global_variable:
  - 161
  - 163
  cffi.cparser._warn_for_string_literal:
  - 152
  - 154
  - 149
  - 151
  cffi.cparser._workaround_for_old_pycparser:
  - 96
  - 69
  - 70
  - 73
  - 74
  - 75
  - 76
  - 77
  - 78
  - 81
  - 83
  - 85
  - 86
  - 89
  - 90
  - 95
  cffi.error.PkgConfigError:
  - 29
  cffi.error.VerificationError:
  - 18
  cffi.error.VerificationMissing:
  - 23
  cffi.ffiplatform._build:
  - 37
  - 38
  - 39
  - 40
  - 48
  - 50
  - 51
  - 52
  - 53
  - 55
  cffi.ffiplatform._flatten:
  - 96
  - 97
  - 98
  - 99
  - 100
  - 101
  - 102
  - 103
  - 104
  - 105
  - 106
  - 107
  - 108
  - 109
  cffi.ffiplatform._hack_at_distutils:
  - 123
  cffi.ffiplatform.compile:
  - 17
  - 19
  - 20
  - 22
  - 23
  - 27
  - 28
  cffi.ffiplatform.flatten:
  - 115
  - 116
  - 117
  cffi.ffiplatform.get_extension:
  - 9
  - 12
  - 13
  - 14
  cffi.ffiplatform.maybe_relative_path:
  - 69
  - 75
  - 76
  - 78
  - 80
  - 81
  - 82
  cffi.ffiplatform.samefile:
  - 66
  cffi.lock:
  - 3
  cffi.model:
  - 576
  - 577
  - 325
  - 277
  - 282
  - 94
  cffi.model.ArrayType.__init__:
  - 304
  - 309
  - 302
  cffi.model.ArrayType.build_backend_type:
  - 321
  - 322
  - 323
  - 318
  cffi.model.ArrayType.length_is_unknown:
  - 312
  cffi.model.ArrayType.resolve_length:
  - 315
  cffi.model.BaseFunctionType.__init__:
  - 213
  - 214
  - 215
  - 217
  - 218
  - 221
  cffi.model.BaseType.__eq__:
  - 76
  cffi.model.BaseType.__hash__:
  - 82
  cffi.model.BaseTypeByIdentity.__repr__:
  - 66
  cffi.model.BaseTypeByIdentity._get_c_name:
  - 48
  cffi.model.BaseTypeByIdentity._get_items:
  - 69
  cffi.model.BaseTypeByIdentity.get_c_name:
  - 33
  - 34
  - 35
  - 37
  - 39
  - 40
  - 41
  - 31
  cffi.model.BaseTypeByIdentity.get_cached_btype:
  - 60
  - 61
  cffi.model.BaseTypeByIdentity.has_c_name:
  - 51
  cffi.model.ConstPointerType:
  - 280
  cffi.model.EnumType.__init__:
  - 500
  cffi.model.EnumType.build_backend_type:
  - 513
  - 514
  - 515
  - 516
  cffi.model.EnumType.build_baseinttype:
  - 521
  - 522
  - 524
  - 525
  - 526
  - 533
  - 536
  - 538
  - 540
  - 542
  - 543
  - 546
  - 547
  - 548
  - 549
  - 550
  - 551
  - 552
  - 555
  cffi.model.EnumType.check_not_partial:
  - 509
  cffi.model.EnumType.force_the_name:
  - 504
  - 505
  - 506
  - 503
  cffi.model.FunctionPtrType.as_raw_function:
  - 258
  cffi.model.FunctionPtrType.build_backend_type:
  - 243
  - 245
  - 246
  - 248
  - 249
  - 254
  - 255
  cffi.model.NamedPointerType.__init__:
  - 289
  cffi.model.PointerType.__init__:
  - 268
  - 269
  - 270
  - 271
  cffi.model.PointerType.build_backend_type:
  - 274
  - 275
  cffi.model.PrimitiveType.build_backend_type:
  - 175
  cffi.model.RawFunctionType.as_function_pointer:
  - 236
  cffi.model.StructOrUnion.__init__:
  - 357
  cffi.model.StructOrUnion.anonymous_struct_fields:
  - 360
  - 361
  - 362
  - 363
  cffi.model.StructOrUnion.build_backend_type:
  - 475
  - 476
  - 478
  - 479
  cffi.model.StructOrUnion.check_not_partial:
  - 471
  cffi.model.StructOrUnion.enumfields:
  - 367
  - 368
  - 369
  - 371
  - 374
  - 375
  - 377
  cffi.model.StructOrUnion.finish_backend_type:
  - 405
  - 406
  - 414
  - 417
  - 418
  - 420
  - 422
  - 423
  - 427
  - 433
  - 437
  - 439
  - 440
  - 441
  - 442
  - 445
  - 449
  - 450
  - 453
  - 454
  - 455
  - 460
  - 462
  - 463
  cffi.model.StructOrUnion.force_flatten:
  - 387
  - 388
  - 389
  - 390
  - 391
  - 392
  - 393
  - 394
  - 395
  cffi.model.StructOrUnion.get_cached_btype:
  - 400
  - 401
  - 398
  cffi.model.StructOrUnionOrEnum.force_the_name:
  - 338
  cffi.model.StructOrUnionOrEnum.get_official_name:
  - 341
  cffi.model.VoidType.build_backend_type:
  - 92
  cffi.model.attach_exception_info:
  - 617
  cffi.model.get_typecache:
  - 586
  - 587
  - 588
  - 583
  cffi.model.global_cache:
  - 606
  - 607
  - 598
  - 591
  cffi.model.pointer_cache:
  - 614
  cffi.model.qualify:
  - 13
  - 14
  - 15
  - 16
  - 17
  - 21
  cffi.model.unknown_ptr_type:
  - 570
  - 572
  - 573
  cffi.model.unknown_type:
  - 562
  - 564
  - 565
  cffi.pkgconfig.call:
  - 33
  - 37
  - 38
  - 40
  - 45
  - 47
  - 53
  - 27
  - 30
  - 31
  cffi.pkgconfig.flags_from_pkgconfig:
  - 120
  - 61
  - 118
  - 119
  cffi.pkgconfig.flags_from_pkgconfig.get_include_dirs:
  - 76
  cffi.pkgconfig.flags_from_pkgconfig.get_libraries:
  - 82
  cffi.pkgconfig.flags_from_pkgconfig.get_library_dirs:
  - 79
  cffi.pkgconfig.flags_from_pkgconfig.get_macros:
  - 92
  cffi.pkgconfig.flags_from_pkgconfig.get_macros._macro:
  - 88
  - 89
  cffi.pkgconfig.flags_from_pkgconfig.get_other_cflags:
  - 96
  - 95
  cffi.pkgconfig.flags_from_pkgconfig.get_other_libs:
  - 99
  - 100
  cffi.pkgconfig.flags_from_pkgconfig.kwargs:
  - 104
  - 105
  - 106
  - 108
  - 109
  - 110
  - 111
  - 112
  - 113
  cffi.pkgconfig.merge_flags:
  - 8
  - 14
  - 15
  - 18
  - 20
  - 22
  cffi.recompiler:
  - 1413
  cffi.recompiler.EnumExpr.as_python_expr:
  - 107
  - 108
  cffi.recompiler.FieldExpr.as_c_expr:
  - 42
  - 39
  cffi.recompiler.FieldExpr.as_field_python_expr:
  - 48
  - 50
  - 51
  - 54
  cffi.recompiler.GlobalExpr.as_c_expr:
  - 24
  cffi.recompiler.GlobalExpr.as_python_expr:
  - 27
  cffi.recompiler.NativeIO.write:
  - 1418
  - 1419
  - 1420
  cffi.recompiler.Recompiler._add_missing_struct_unions:
  - 1000
  - 1001
  - 1002
  - 1003
  - 1004
  - 1008
  - 1010
  - 1012
  - 1016
  cffi.recompiler.Recompiler._check_not_opaque:
  - 989
  - 991
  cffi.recompiler.Recompiler._convert_expr_from_c:
  - 608
  - 609
  - 613
  - 614
  - 616
  - 617
  - 619
  - 620
  - 621
  - 625
  - 626
  - 628
  - 601
  - 602
  - 604
  - 606
  - 607
  cffi.recompiler.Recompiler._convert_funcarg_to_c:
  - 536
  - 537
  - 540
  - 543
  - 545
  - 547
  - 548
  - 549
  - 552
  - 553
  - 557
  - 558
  - 561
  - 562
  - 563
  - 566
  - 567
  - 568
  - 574
  - 575
  - 576
  - 577
  cffi.recompiler.Recompiler._convert_funcarg_to_c_ptr_or_array:
  - 587
  - 588
  - 589
  - 590
  - 591
  - 593
  - 594
  - 595
  - 596
  - 597
  - 598
  cffi.recompiler.Recompiler._do_collect_type:
  - 224
  - 208
  - 209
  - 210
  - 211
  - 213
  - 215
  - 216
  - 217
  - 218
  - 220
  - 221
  - 223
  cffi.recompiler.Recompiler._emit_bytecode_ArrayType:
  - 1391
  - 1392
  - 1393
  - 1400
  - 1401
  cffi.recompiler.Recompiler._emit_bytecode_EnumType:
  - 1410
  cffi.recompiler.Recompiler._emit_bytecode_FunctionPtrType:
  - 1386
  - 1387
  cffi.recompiler.Recompiler._emit_bytecode_PointerType:
  - 1380
  cffi.recompiler.Recompiler._emit_bytecode_PrimitiveType:
  - 1346
  cffi.recompiler.Recompiler._emit_bytecode_RawFunctionType:
  - 1377
  - 1361
  - 1363
  - 1365
  - 1366
  - 1367
  - 1369
  - 1371
  - 1372
  - 1373
  cffi.recompiler.Recompiler._emit_bytecode_StructType:
  - 1405
  cffi.recompiler.Recompiler._emit_bytecode_UnknownFloatType:
  - 1358
  cffi.recompiler.Recompiler._emit_bytecode_UnknownIntegerType:
  - 1352
  cffi.recompiler.Recompiler._emit_bytecode_VoidType:
  - 1342
  cffi.recompiler.Recompiler._enum_ctx:
  - 1126
  - 1127
  - 1128
  - 1129
  - 1130
  - 1131
  - 1134
  - 1138
  - 1139
  - 1140
  - 1141
  - 1142
  - 1143
  cffi.recompiler.Recompiler._enum_fields:
  - 205
  cffi.recompiler.Recompiler._extern_python_decl:
  - 1280
  - 1281
  - 1282
  - 1283
  - 1284
  - 1235
  - 1240
  - 1241
  - 1242
  - 1244
  - 1248
  - 1249
  - 1250
  - 1252
  - 1255
  - 1262
  - 1263
  - 1264
  - 1265
  - 1267
  - 1268
  - 1269
  - 1270
  - 1271
  - 1272
  - 1273
  - 1275
  - 1276
  - 1278
  - 1279
  cffi.recompiler.Recompiler._extern_python_decl.may_need_128_bits:
  - 1259
  cffi.recompiler.Recompiler._extra_local_variables:
  - 580
  - 581
  - 582
  - 583
  cffi.recompiler.Recompiler._field_type:
  - 850
  - 852
  - 853
  - 856
  - 858
  cffi.recompiler.Recompiler._generate:
  - 227
  - 228
  - 229
  - 231
  - 238
  - 240
  cffi.recompiler.Recompiler._generate_cpy_anonymous_collecttype:
  - 1042
  - 1043
  - 1045
  cffi.recompiler.Recompiler._generate_cpy_anonymous_ctx:
  - 1057
  - 1054
  - 1055
  cffi.recompiler.Recompiler._generate_cpy_anonymous_decl:
  - 1048
  - 1049
  - 1051
  cffi.recompiler.Recompiler._generate_cpy_const:
  - 1088
  - 1089
  - 1090
  - 1064
  - 1067
  - 1071
  - 1072
  - 1073
  - 1074
  - 1075
  - 1077
  - 1078
  - 1080
  - 1081
  - 1082
  - 1083
  - 1086
  - 1087
  cffi.recompiler.Recompiler._generate_cpy_constant_collecttype:
  - 1093
  - 1094
  - 1095
  cffi.recompiler.Recompiler._generate_cpy_constant_ctx:
  - 1102
  - 1103
  - 1105
  - 1110
  - 1111
  - 1112
  cffi.recompiler.Recompiler._generate_cpy_constant_decl:
  - 1098
  - 1099
  cffi.recompiler.Recompiler._generate_cpy_dllexport_python_decl:
  - 1291
  cffi.recompiler.Recompiler._generate_cpy_enum_collecttype:
  - 1118
  cffi.recompiler.Recompiler._generate_cpy_enum_ctx:
  - 1146
  cffi.recompiler.Recompiler._generate_cpy_enum_decl:
  - 1121
  - 1122
  cffi.recompiler.Recompiler._generate_cpy_extern_python_collecttype:
  - 1227
  - 1228
  cffi.recompiler.Recompiler._generate_cpy_extern_python_ctx:
  - 1297
  - 1300
  - 1303
  - 1304
  - 1305
  cffi.recompiler.Recompiler._generate_cpy_extern_python_decl:
  - 1288
  cffi.recompiler.Recompiler._generate_cpy_extern_python_plus_c_decl:
  - 1294
  cffi.recompiler.Recompiler._generate_cpy_function_collecttype:
  - 661
  - 662
  - 663
  cffi.recompiler.Recompiler._generate_cpy_function_ctx:
  - 832
  - 833
  - 835
  - 837
  - 841
  - 842
  - 843
  - 828
  - 829
  - 831
  cffi.recompiler.Recompiler._generate_cpy_function_decl:
  - 667
  - 668
  - 672
  - 675
  - 676
  - 678
  - 688
  - 689
  - 690
  - 691
  - 693
  - 698
  - 699
  - 700
  - 702
  - 704
  - 705
  - 707
  - 709
  - 710
  - 711
  - 714
  - 715
  - 716
  - 718
  - 719
  - 720
  - 721
  - 722
  - 723
  - 725
  - 728
  - 729
  - 730
  - 735
  - 736
  - 737
  - 738
  - 739
  - 740
  - 741
  - 742
  - 743
  - 744
  - 746
  - 747
  - 749
  - 751
  - 752
  - 753
  - 754
  - 755
  - 756
  - 757
  - 758
  - 760
  - 761
  - 762
  - 763
  - 764
  - 765
  - 766
  - 767
  - 768
  - 770
  - 771
  - 772
  - 773
  - 774
  - 776
  - 790
  - 792
  - 795
  - 796
  - 797
  - 799
  - 801
  - 802
  - 807
  - 808
  - 812
  - 813
  - 814
  - 815
  - 816
  - 817
  - 818
  - 819
  - 820
  - 822
  - 824
  - 825
  cffi.recompiler.Recompiler._generate_cpy_function_decl.need_indirection:
  - 784
  - 785
  - 783
  cffi.recompiler.Recompiler._generate_cpy_macro_ctx:
  - 1162
  - 1163
  - 1170
  - 1171
  - 1172
  cffi.recompiler.Recompiler._generate_cpy_macro_decl:
  - 1155
  - 1159
  cffi.recompiler.Recompiler._generate_cpy_struct_collecttype:
  - 1019
  cffi.recompiler.Recompiler._generate_cpy_struct_ctx:
  - 1034
  cffi.recompiler.Recompiler._generate_cpy_struct_decl:
  - 1030
  cffi.recompiler.Recompiler._generate_cpy_typedef_collecttype:
  - 639
  cffi.recompiler.Recompiler._generate_cpy_typedef_ctx:
  - 649
  - 650
  - 651
  - 652
  - 653
  - 654
  cffi.recompiler.Recompiler._generate_cpy_variable_collecttype:
  - 1188
  cffi.recompiler.Recompiler._generate_cpy_variable_ctx:
  - 1216
  - 1220
  - 1221
  - 1214
  cffi.recompiler.Recompiler._generate_cpy_variable_decl:
  - 1192
  - 1193
  - 1207
  - 1208
  - 1209
  - 1210
  - 1211
  cffi.recompiler.Recompiler._global_type:
  - 1184
  - 1179
  - 1181
  - 1183
  cffi.recompiler.Recompiler._print_string_literal_in_array:
  - 1313
  - 1314
  - 1315
  - 1317
  - 1319
  - 1322
  - 1324
  - 1325
  - 1328
  - 1329
  - 1331
  - 1332
  - 1333
  - 1336
  cffi.recompiler.Recompiler._prnt:
  - 279
  cffi.recompiler.Recompiler._rel_readlines:
  - 290
  - 291
  - 292
  cffi.recompiler.Recompiler._struct_collecttype:
  - 865
  - 866
  - 862
  - 863
  cffi.recompiler.Recompiler._struct_ctx:
  - 906
  - 907
  - 908
  - 909
  - 911
  - 914
  - 916
  - 919
  - 920
  - 921
  - 927
  - 929
  - 931
  - 933
  - 934
  - 935
  - 936
  - 937
  - 941
  - 944
  - 945
  - 950
  - 953
  - 955
  - 959
  - 960
  - 961
  - 962
  - 963
  - 964
  - 966
  - 971
  - 983
  - 984
  - 986
  cffi.recompiler.Recompiler._struct_decl:
  - 897
  - 898
  - 899
  - 900
  - 869
  - 873
  - 874
  - 875
  - 876
  - 877
  - 878
  - 880
  - 882
  - 883
  - 889
  - 893
  - 894
  cffi.recompiler.Recompiler._struct_names:
  - 1024
  - 1025
  - 1023
  cffi.recompiler.Recompiler._to_py:
  - 469
  - 471
  - 472
  - 473
  - 474
  - 475
  - 476
  cffi.recompiler.Recompiler._typedef_ctx:
  - 646
  cffi.recompiler.Recompiler._typedef_type:
  - 636
  cffi.recompiler.Recompiler.collect_step_tables:
  - 256
  - 258
  - 259
  - 260
  - 265
  - 266
  - 268
  - 271
  - 272
  - 274
  - 250
  - 252
  - 253
  - 254
  cffi.recompiler.Recompiler.collect_type_table:
  - 140
  - 142
  - 146
  - 147
  - 149
  - 150
  - 151
  - 152
  - 157
  - 158
  - 159
  - 160
  - 163
  - 164
  - 165
  - 166
  - 167
  - 168
  - 169
  - 174
  - 175
  - 177
  - 179
  - 180
  - 182
  - 183
  - 187
  - 188
  - 189
  - 192
  - 193
  - 194
  cffi.recompiler.Recompiler.needs_version:
  - 136
  cffi.recompiler.Recompiler.write_c_source_to_f:
  - 298
  - 299
  - 300
  - 301
  - 304
  - 305
  - 306
  - 307
  - 311
  - 312
  - 313
  - 314
  - 315
  - 316
  - 317
  - 318
  - 320
  - 321
  - 323
  - 324
  - 326
  - 327
  - 328
  - 329
  - 330
  - 331
  - 334
  - 335
  - 336
  - 337
  - 338
  - 339
  - 342
  - 343
  - 344
  - 346
  - 347
  - 348
  - 349
  - 350
  - 351
  - 352
  - 356
  - 357
  - 361
  - 363
  - 364
  - 365
  - 367
  - 368
  - 369
  - 370
  - 373
  - 374
  - 375
  - 384
  - 388
  - 389
  - 390
  - 391
  - 394
  - 395
  - 396
  - 397
  - 398
  - 400
  - 401
  - 402
  - 403
  - 404
  - 405
  - 407
  - 408
  - 410
  - 412
  - 413
  - 414
  - 417
  - 418
  - 419
  - 420
  - 421
  - 422
  - 423
  - 424
  - 425
  - 426
  - 427
  - 429
  - 430
  - 431
  - 432
  - 433
  - 434
  - 435
  - 439
  - 440
  - 441
  - 442
  - 443
  - 444
  - 445
  - 446
  - 447
  - 448
  - 449
  - 450
  - 451
  - 453
  - 454
  - 455
  - 456
  - 457
  - 458
  - 460
  - 461
  - 462
  - 463
  - 464
  - 465
  cffi.recompiler.Recompiler.write_py_source_to_f:
  - 512
  - 515
  - 517
  - 518
  - 521
  - 522
  - 523
  - 526
  - 483
  - 484
  - 487
  - 488
  - 498
  - 502
  - 503
  - 504
  - 505
  - 509
  - 510
  - 511
  cffi.recompiler.Recompiler.write_source_to_f:
  - 282
  - 284
  - 287
  cffi.recompiler.StructUnionExpr.as_c_expr:
  - 73
  cffi.recompiler.StructUnionExpr.as_python_expr:
  - 78
  - 79
  - 82
  - 83
  - 85
  cffi.recompiler.TypenameExpr.as_python_expr:
  - 120
  cffi.recompiler._make_c_or_py_source:
  - 1440
  - 1441
  - 1442
  - 1444
  - 1446
  - 1447
  - 1423
  - 1424
  - 1425
  - 1427
  - 1428
  - 1429
  - 1430
  - 1431
  - 1433
  - 1434
  - 1436
  - 1437
  cffi.recompiler._modname_to_file:
  - 1466
  - 1460
  - 1462
  cffi.recompiler._patch_for_embedding:
  - 1484
  - 1487
  - 1488
  - 1490
  - 1499
  cffi.recompiler._patch_for_embedding.my_link_shared_object:
  - 1496
  - 1498
  - 1494
  - 1495
  cffi.recompiler._patch_for_target:
  - 1508
  - 1510
  - 1512
  - 1516
  - 1517
  cffi.recompiler._patch_meth:
  - 1474
  - 1475
  - 1476
  cffi.recompiler._unpatch_meths:
  - 1480
  - 1481
  cffi.recompiler.make_c_source:
  - 1452
  cffi.recompiler.make_py_source:
  - 1456
  cffi.recompiler.recompile:
  - 1536
  - 1540
  - 1541
  - 1546
  - 1547
  - 1549
  - 1551
  - 1553
  - 1554
  - 1555
  - 1556
  - 1557
  - 1558
  - 1562
  - 1563
  - 1564
  - 1567
  - 1568
  - 1573
  - 1574
  - 1575
  - 1577
  - 1523
  - 1524
  - 1525
  - 1526
  - 1527
  - 1529
  - 1530
  - 1531
  - 1532
  - 1534
  cffi.setuptools_ext:
  - 5
  cffi.setuptools_ext._add_c_module:
  - 134
  - 136
  - 138
  - 115
  - 116
  - 117
  cffi.setuptools_ext._add_c_module.build_ext_make_mod.run:
  - 144
  - 141
  - 142
  - 143
  cffi.setuptools_ext._add_c_module.make_mod:
  - 128
  - 129
  - 130
  - 131
  - 120
  - 121
  - 122
  - 127
  cffi.setuptools_ext._add_py_module:
  - 194
  - 196
  - 166
  - 199
  cffi.setuptools_ext._add_py_module.build_ext_make_mod.run:
  - 202
  - 203
  - 205
  - 206
  - 207
  - 208
  - 210
  cffi.setuptools_ext._add_py_module.build_py_make_mod.get_source_files:
  - 178
  - 181
  cffi.setuptools_ext._add_py_module.build_py_make_mod.run:
  - 169
  - 170
  - 172
  cffi.setuptools_ext._add_py_module.generate_mod:
  - 160
  - 161
  - 162
  - 163
  - 164
  cffi.setuptools_ext._set_py_limited_api:
  - 96
  - 97
  - 74
  - 92
  cffi.setuptools_ext.add_cffi_module:
  - 31
  - 32
  - 33
  - 34
  - 36
  - 38
  - 40
  - 42
  - 43
  - 46
  - 49
  - 54
  - 56
  - 57
  - 58
  - 59
  - 60
  - 61
  - 62
  - 64
  - 65
  - 66
  - 68
  - 69
  - 71
  cffi.setuptools_ext.cffi_modules:
  - 218
  - 219
  - 215
  cffi.setuptools_ext.execfile:
  - 24
  - 25
  - 21
  - 22
  cffi.vengine_cpy.VCPythonEngine._check_int_constant_value:
  - 681
  - 682
  - 685
  - 687
  - 688
  - 689
  - 690
  - 691
  - 693
  - 694
  - 695
  - 697
  - 698
  cffi.vengine_cpy.VCPythonEngine._convert_expr_from_c:
  - 320
  - 322
  - 300
  - 301
  - 303
  - 304
  - 307
  - 308
  - 310
  - 311
  - 313
  - 314
  - 315
  - 319
  cffi.vengine_cpy.VCPythonEngine._convert_funcarg_to_c:
  - 259
  - 261
  - 262
  - 263
  - 266
  - 267
  - 268
  - 274
  - 275
  - 276
  - 245
  - 246
  - 277
  - 250
  - 251
  - 254
  - 255
  cffi.vengine_cpy.VCPythonEngine._convert_funcarg_to_c_ptr_or_array:
  - 288
  - 289
  - 290
  - 291
  - 293
  - 294
  - 295
  - 296
  - 297
  - 287
  cffi.vengine_cpy.VCPythonEngine._do_collect_type:
  - 49
  - 52
  cffi.vengine_cpy.VCPythonEngine._enum_funcname:
  - 702
  cffi.vengine_cpy.VCPythonEngine._extra_local_variables:
  - 280
  - 281
  - 282
  - 283
  cffi.vengine_cpy.VCPythonEngine._generate:
  - 211
  - 212
  - 214
  - 220
  - 222
  cffi.vengine_cpy.VCPythonEngine._generate_cpy_anonymous_decl:
  - 592
  - 594
  - 591
  cffi.vengine_cpy.VCPythonEngine._generate_cpy_anonymous_method:
  - 597
  - 598
  cffi.vengine_cpy.VCPythonEngine._generate_cpy_const:
  - 642
  - 643
  - 644
  - 645
  - 646
  - 647
  - 648
  - 650
  - 651
  - 652
  - 653
  - 654
  - 655
  - 656
  - 657
  - 658
  - 660
  - 661
  - 620
  - 621
  - 622
  - 623
  - 624
  - 625
  - 629
  - 630
  - 632
  - 633
  - 637
  - 638
  cffi.vengine_cpy.VCPythonEngine._generate_cpy_constant_collecttype:
  - 664
  - 665
  - 666
  cffi.vengine_cpy.VCPythonEngine._generate_cpy_constant_decl:
  - 669
  - 670
  cffi.vengine_cpy.VCPythonEngine._generate_cpy_enum_decl:
  - 706
  - 707
  - 708
  - 711
  - 713
  - 714
  - 715
  - 716
  - 718
  - 720
  - 721
  cffi.vengine_cpy.VCPythonEngine._generate_cpy_function_collecttype:
  - 339
  - 340
  - 341
  - 345
  - 346
  - 347
  cffi.vengine_cpy.VCPythonEngine._generate_cpy_function_decl:
  - 384
  - 388
  - 389
  - 390
  - 391
  - 392
  - 393
  - 394
  - 395
  - 396
  - 398
  - 399
  - 401
  - 403
  - 404
  - 405
  - 407
  - 408
  - 409
  - 410
  - 412
  - 413
  - 414
  - 415
  - 416
  - 417
  - 418
  - 419
  - 420
  - 422
  - 423
  - 424
  - 425
  - 426
  - 427
  - 350
  - 351
  - 355
  - 358
  - 359
  - 361
  - 365
  - 366
  - 367
  - 370
  - 371
  - 373
  - 374
  - 375
  - 376
  - 377
  - 378
  - 380
  - 383
  cffi.vengine_cpy.VCPythonEngine._generate_cpy_function_method:
  - 430
  - 432
  - 433
  - 435
  - 439
  cffi.vengine_cpy.VCPythonEngine._generate_cpy_macro_decl:
  - 745
  - 741
  cffi.vengine_cpy.VCPythonEngine._generate_cpy_struct_decl:
  - 456
  cffi.vengine_cpy.VCPythonEngine._generate_cpy_struct_method:
  - 458
  cffi.vengine_cpy.VCPythonEngine._generate_cpy_union_decl:
  - 467
  cffi.vengine_cpy.VCPythonEngine._generate_cpy_union_method:
  - 469
  cffi.vengine_cpy.VCPythonEngine._generate_cpy_variable_collecttype:
  - 760
  - 756
  - 757
  - 759
  cffi.vengine_cpy.VCPythonEngine._generate_cpy_variable_decl:
  - 768
  - 769
  - 763
  - 764
  - 765
  - 766
  cffi.vengine_cpy.VCPythonEngine._generate_setup_custom:
  - 810
  - 811
  - 812
  - 813
  cffi.vengine_cpy.VCPythonEngine._generate_struct_or_union_decl:
  - 512
  - 513
  - 515
  - 516
  - 517
  - 518
  - 519
  - 520
  - 521
  - 522
  - 523
  - 524
  - 476
  - 480
  - 483
  - 484
  - 485
  - 486
  - 487
  - 488
  - 489
  - 491
  - 495
  - 496
  - 499
  - 500
  - 501
  - 502
  - 503
  - 504
  - 505
  - 506
  - 507
  - 508
  - 509
  - 511
  cffi.vengine_cpy.VCPythonEngine._generate_struct_or_union_method:
  - 530
  - 527
  cffi.vengine_cpy.VCPythonEngine._get_declarations:
  - 206
  - 207
  cffi.vengine_cpy.VCPythonEngine._load:
  - 226
  - 227
  - 228
  - 230
  - 232
  cffi.vengine_cpy.VCPythonEngine._loaded_cpy_anonymous:
  - 608
  - 610
  - 607
  cffi.vengine_cpy.VCPythonEngine._loaded_cpy_enum:
  - 734
  - 735
  cffi.vengine_cpy.VCPythonEngine._loaded_cpy_function:
  - 444
  - 446
  - 447
  cffi.vengine_cpy.VCPythonEngine._loaded_cpy_struct:
  - 462
  cffi.vengine_cpy.VCPythonEngine._loaded_cpy_union:
  - 473
  cffi.vengine_cpy.VCPythonEngine._loaded_cpy_variable:
  - 803
  - 804
  - 775
  - 776
  - 778
  - 779
  - 781
  - 782
  - 783
  - 787
  - 790
  - 791
  - 792
  - 793
  - 798
  cffi.vengine_cpy.VCPythonEngine._loaded_struct_or_union:
  - 577
  - 578
  - 579
  - 582
  - 555
  - 557
  - 559
  - 567
  - 568
  - 569
  - 570
  - 572
  - 573
  - 575
  cffi.vengine_cpy.VCPythonEngine._loaded_struct_or_union.check:
  - 562
  cffi.vengine_cpy.VCPythonEngine._loading_cpy_anonymous:
  - 601
  - 602
  - 604
  cffi.vengine_cpy.VCPythonEngine._loading_cpy_enum:
  - 728
  - 730
  - 727
  cffi.vengine_cpy.VCPythonEngine._loading_cpy_struct:
  - 460
  cffi.vengine_cpy.VCPythonEngine._loading_cpy_union:
  - 471
  cffi.vengine_cpy.VCPythonEngine._loading_struct_or_union:
  - 547
  - 548
  - 551
  - 534
  - 538
  - 539
  - 540
  cffi.vengine_cpy.VCPythonEngine._prnt:
  - 42
  cffi.vengine_cpy.VCPythonEngine.collect_types:
  - 39
  cffi.vengine_cpy.VCPythonEngine.find_module:
  - 25
  - 28
  - 29
  - 33
  cffi.vengine_cpy.VCPythonEngine.load_library:
  - 149
  - 151
  - 152
  - 154
  - 155
  - 156
  - 162
  - 163
  - 165
  - 169
  - 173
  - 174
  - 175
  - 176
  - 189
  - 190
  - 192
  - 193
  - 199
  cffi.vengine_cpy.VCPythonEngine.load_library.FFILibrary.__dir__:
  - 188
  cffi.vengine_cpy.VCPythonEngine.write_source_to_f:
  - 128
  - 129
  - 130
  - 131
  - 132
  - 133
  - 134
  - 135
  - 136
  - 137
  - 138
  - 139
  - 140
  - 141
  - 142
  - 143
  - 144
  - 56
  - 77
  - 78
  - 80
  - 81
  - 85
  - 89
  - 90
  - 95
  - 96
  - 97
  - 98
  - 99
  - 100
  - 103
  - 105
  - 106
  - 107
  - 108
  - 109
  - 110
  - 111
  - 112
  - 113
  - 114
  - 115
  - 116
  - 117
  - 118
  - 119
  - 120
  - 121
  - 122
  - 123
  - 124
  - 125
  - 126
  - 127
  cffi.vengine_gen.VGenericEngine._check_int_constant_value:
  - 480
  - 482
  - 483
  - 484
  - 485
  - 486
  - 488
  - 489
  - 490
  - 491
  - 476
  - 477
  cffi.vengine_gen.VGenericEngine._enum_funcname:
  - 506
  cffi.vengine_gen.VGenericEngine._generate:
  - 100
  - 101
  - 103
  - 109
  - 111
  cffi.vengine_gen.VGenericEngine._generate_gen_anonymous_decl:
  - 377
  - 374
  - 375
  cffi.vengine_gen.VGenericEngine._generate_gen_const:
  - 398
  - 399
  - 402
  - 403
  - 404
  - 405
  - 406
  - 407
  - 409
  - 410
  - 411
  - 412
  - 413
  - 417
  - 422
  - 425
  - 426
  - 427
  - 428
  - 429
  cffi.vengine_gen.VGenericEngine._generate_gen_constant_decl:
  - 432
  - 433
  cffi.vengine_gen.VGenericEngine._generate_gen_enum_decl:
  - 512
  - 515
  - 516
  - 518
  - 519
  - 520
  - 521
  - 522
  - 523
  - 524
  - 510
  - 511
  cffi.vengine_gen.VGenericEngine._generate_gen_function_decl:
  - 141
  - 142
  - 146
  - 149
  - 151
  - 153
  - 155
  - 157
  - 158
  - 160
  - 161
  - 163
  - 165
  - 166
  - 172
  - 173
  - 175
  - 177
  - 181
  - 182
  - 183
  cffi.vengine_gen.VGenericEngine._generate_gen_macro_decl:
  - 545
  - 549
  cffi.vengine_gen.VGenericEngine._generate_gen_struct_decl:
  - 244
  cffi.vengine_gen.VGenericEngine._generate_gen_union_decl:
  - 254
  cffi.vengine_gen.VGenericEngine._generate_gen_variable_decl:
  - 576
  - 577
  - 579
  - 580
  - 567
  - 568
  - 571
  - 572
  - 573
  - 574
  - 575
  cffi.vengine_gen.VGenericEngine._generate_struct_or_union_decl:
  - 263
  - 267
  - 270
  - 271
  - 272
  - 273
  - 274
  - 275
  - 276
  - 278
  - 282
  - 283
  - 286
  - 287
  - 288
  - 289
  - 290
  - 291
  - 292
  - 293
  - 294
  - 295
  - 296
  - 298
  - 299
  - 300
  - 302
  - 303
  - 304
  - 305
  - 306
  - 307
  - 308
  - 309
  cffi.vengine_gen.VGenericEngine._get_declarations:
  - 96
  - 95
  cffi.vengine_gen.VGenericEngine._load:
  - 115
  - 116
  - 117
  - 119
  - 121
  cffi.vengine_gen.VGenericEngine._load_constant:
  - 448
  - 449
  - 450
  - 451
  - 452
  - 456
  - 458
  - 459
  - 460
  - 461
  - 439
  - 441
  - 443
  - 444
  - 445
  - 446
  - 447
  cffi.vengine_gen.VGenericEngine._load_known_int_constant:
  - 494
  - 495
  - 496
  - 497
  - 498
  - 499
  - 500
  - 501
  cffi.vengine_gen.VGenericEngine._loaded_gen_anonymous:
  - 386
  - 387
  - 389
  cffi.vengine_gen.VGenericEngine._loaded_gen_constant:
  - 466
  - 467
  - 468
  - 469
  cffi.vengine_gen.VGenericEngine._loaded_gen_enum:
  - 537
  - 538
  - 539
  cffi.vengine_gen.VGenericEngine._loaded_gen_function:
  - 188
  - 189
  - 190
  - 194
  - 195
  - 197
  - 198
  - 199
  - 200
  - 201
  - 203
  - 204
  - 208
  - 209
  - 210
  - 212
  - 214
  - 216
  - 217
  - 218
  - 220
  - 221
  cffi.vengine_gen.VGenericEngine._loaded_gen_macro:
  - 560
  - 561
  - 554
  - 558
  cffi.vengine_gen.VGenericEngine._loaded_gen_struct:
  - 250
  cffi.vengine_gen.VGenericEngine._loaded_gen_union:
  - 260
  cffi.vengine_gen.VGenericEngine._loaded_gen_variable:
  - 585
  - 587
  - 589
  - 590
  - 591
  - 592
  - 593
  - 594
  - 598
  - 599
  - 600
  - 603
  - 604
  - 605
  - 606
  - 607
  - 612
  - 613
  - 614
  - 619
  - 620
  cffi.vengine_gen.VGenericEngine._loaded_struct_or_union:
  - 352
  - 353
  - 354
  - 355
  - 357
  - 358
  - 360
  - 362
  - 363
  - 364
  - 367
  - 340
  - 342
  - 344
  cffi.vengine_gen.VGenericEngine._loaded_struct_or_union.check:
  - 347
  cffi.vengine_gen.VGenericEngine._loading_gen_anonymous:
  - 380
  - 381
  - 383
  cffi.vengine_gen.VGenericEngine._loading_gen_enum:
  - 527
  - 528
  - 530
  - 533
  - 534
  cffi.vengine_gen.VGenericEngine._loading_gen_struct:
  - 247
  cffi.vengine_gen.VGenericEngine._loading_gen_union:
  - 257
  cffi.vengine_gen.VGenericEngine._loading_struct_or_union:
  - 321
  - 322
  - 323
  - 325
  - 332
  - 333
  - 336
  - 312
  - 316
  - 317
  cffi.vengine_gen.VGenericEngine._make_struct_wrapper:
  - 225
  - 226
  cffi.vengine_gen.VGenericEngine._make_struct_wrapper.newfunc:
  - 234
  - 235
  - 229
  - 230
  cffi.vengine_gen.VGenericEngine._prnt:
  - 41
  cffi.vengine_gen.VGenericEngine.find_module:
  - 32
  - 33
  - 34
  - 28
  - 30
  cffi.vengine_gen.VGenericEngine.load_library:
  - 69
  - 70
  - 74
  - 86
  - 90
  cffi.vengine_gen.VGenericEngine.patch_extension_kwds:
  - 25
  cffi.vengine_gen.VGenericEngine.write_source_to_f:
  - 46
  - 48
  - 52
  - 57
  - 58
  - 62
  - 63
  cffi.verifier:
  - 9
  - 20
  cffi.verifier.NativeIO.write:
  - 25
  - 26
  - 27
  cffi.verifier.Verifier.__init__:
  - 35
  - 41
  - 42
  - 43
  - 44
  - 45
  - 47
  - 49
  - 50
  - 53
  - 57
  - 58
  - 59
  - 60
  - 61
  - 62
  - 65
  - 66
  - 67
  - 68
  cffi.verifier.Verifier._compile_module:
  - 201
  - 202
  - 204
  - 207
  - 208
  - 209
  cffi.verifier.Verifier._load_library:
  - 217
  - 214
  - 215
  cffi.verifier.Verifier._locate_module:
  - 160
  - 161
  - 164
  - 149
  - 150
  - 152
  - 159
  cffi.verifier.Verifier._write_source:
  - 192
  - 193
  - 194
  - 175
  - 176
  - 179
  - 180
  - 181
  - 184
  - 185
  - 186
  - 191
  cffi.verifier.Verifier._write_source_to:
  - 170
  cffi.verifier.Verifier.compile_module:
  - 83
  - 86
  - 88
  - 89
  - 90
  cffi.verifier.Verifier.get_extension:
  - 120
  - 121
  - 123
  - 124
  - 125
  - 126
  - 127
  cffi.verifier.Verifier.get_module_name:
  - 112
  - 115
  - 109
  cffi.verifier.Verifier.load_library:
  - 100
  - 101
  - 102
  - 103
  - 104
  - 105
  - 106
  - 93
  cffi.verifier.Verifier.make_relative_to:
  - 133
  - 134
  - 135
  - 136
  - 137
  - 139
  - 142
  cffi.verifier.Verifier.write_source:
  - 80
  - 74
  - 77
  cffi.verifier._caller_dir_pycache:
  - 248
  - 250
  - 251
  - 253
  - 254
  cffi.verifier._ensure_dir:
  - 305
  - 306
  - 307
  cffi.verifier._extension_suffixes:
  - 16
  cffi.verifier._get_so_suffixes:
  - 297
  - 294
  - 295
  cffi.verifier._locate_engine_class:
  - 224
  - 226
  - 227
  - 234
  - 236
  cffi.verifier.cleanup_tmpdir:
  - 289
  - 263
  - 265
  - 267
  - 270
  - 273
  - 274
  - 275
  - 276
  - 278
  - 281
  - 282
  - 284
  - 285
  - 286
  - 287
  cffi.verifier.set_tmpdir:
  - 258
Fuzzer filename: /src/fuzz_recompiler.py
Inheritance:
  cffi.api.FFI:
  - object
  cffi.api._make_ffi_library.FFILibrary:
  - object
  cffi.backend_ctypes.CTypesBackend:
  - object
  cffi.backend_ctypes.CTypesBackend._new_struct_or_union.CTypesStructOrUnion:
  - CTypesBaseStructOrUnion
  cffi.backend_ctypes.CTypesBackend._new_struct_or_union.struct_or_union:
  - base_ctypes_class
  cffi.backend_ctypes.CTypesBackend.gcp.MyRef: []
  cffi.backend_ctypes.CTypesBackend.new_array_type.CTypesArray:
  - CTypesGenericArray
  cffi.backend_ctypes.CTypesBackend.new_enum_type.CTypesEnum:
  - CTypesInt
  cffi.backend_ctypes.CTypesBackend.new_function_type.CTypesFunctionPtr:
  - CTypesGenericPtr
  cffi.backend_ctypes.CTypesBackend.new_pointer_type.CTypesPtr:
  - CTypesGenericPtr
  cffi.backend_ctypes.CTypesBackend.new_primitive_type.CTypesPrimitive:
  - CTypesGenericPrimitive
  cffi.backend_ctypes.CTypesBackend.new_void_type.CTypesVoid:
  - CTypesData
  cffi.backend_ctypes.CTypesBaseStructOrUnion:
  - CTypesData
  cffi.backend_ctypes.CTypesData:
  - object
  cffi.backend_ctypes.CTypesGenericArray:
  - CTypesData
  cffi.backend_ctypes.CTypesGenericPrimitive:
  - CTypesData
  cffi.backend_ctypes.CTypesGenericPtr:
  - CTypesData
  cffi.backend_ctypes.CTypesLibrary:
  - object
  cffi.backend_ctypes.CTypesType:
  - type
  cffi.cffi_opcode.CffiOp:
  - object
  cffi.cparser.Parser:
  - object
  cffi.error.CDefError:
  - Exception
  cffi.error.FFIError:
  - Exception
  cffi.error.PkgConfigError:
  - Exception
  cffi.error.VerificationError:
  - Exception
  cffi.error.VerificationMissing:
  - Exception
  cffi.model.ArrayType:
  - BaseType
  cffi.model.BaseFunctionType:
  - BaseType
  cffi.model.BasePrimitiveType:
  - BaseType
  cffi.model.BaseType:
  - BaseTypeByIdentity
  cffi.model.BaseTypeByIdentity:
  - object
  cffi.model.EnumType:
  - StructOrUnionOrEnum
  cffi.model.FunctionPtrType:
  - BaseFunctionType
  cffi.model.NamedPointerType:
  - PointerType
  cffi.model.PointerType:
  - BaseType
  cffi.model.PrimitiveType:
  - BasePrimitiveType
  cffi.model.RawFunctionType:
  - BaseFunctionType
  cffi.model.StructOrUnion:
  - StructOrUnionOrEnum
  cffi.model.StructOrUnionOrEnum:
  - BaseTypeByIdentity
  cffi.model.StructType:
  - StructOrUnion
  cffi.model.UnionType:
  - StructOrUnion
  cffi.model.UnknownFloatType:
  - BasePrimitiveType
  cffi.model.UnknownIntegerType:
  - BasePrimitiveType
  cffi.model.VoidType:
  - BaseType
  cffi.recompiler.EnumExpr: []
  cffi.recompiler.FieldExpr: []
  cffi.recompiler.GlobalExpr: []
  cffi.recompiler.NativeIO: []
  cffi.recompiler.Recompiler: []
  cffi.recompiler.StructUnionExpr: []
  cffi.recompiler.TypenameExpr: []
  cffi.setuptools_ext._add_c_module.build_ext_make_mod:
  - base_class
  cffi.setuptools_ext._add_py_module.build_ext_make_mod:
  - base_class_2
  cffi.setuptools_ext._add_py_module.build_py_make_mod:
  - base_class
  cffi.vengine_cpy.VCPythonEngine:
  - object
  cffi.vengine_cpy.VCPythonEngine.load_library.FFILibrary:
  - object
  cffi.vengine_gen.VGenericEngine:
  - object
  cffi.vengine_gen.VGenericEngine.load_library.FFILibrary: []
  cffi.verifier.NativeIO: []
  cffi.verifier.Verifier:
  - object
ep:
  func_name: TestOneInput
  module: '...fuzz_recompiler'
