IDAPython 8.4
Loading...
Searching...
No Matches
ida_typeinf.py File Reference

Classes

class  funcargvec_t
 Proxy of C++ qvector< funcarg_t > class. More...
 
class  reginfovec_t
 Proxy of C++ qvector< reg_info_t > class. More...
 
class  edmvec_t
 Proxy of C++ qvector< edm_t > class. More...
 
class  argpartvec_t
 Proxy of C++ qvector< argpart_t > class. More...
 
class  valstrvec_t
 Proxy of C++ qvector< valstr_t > class. More...
 
class  regobjvec_t
 Proxy of C++ qvector< regobj_t > class. More...
 
class  type_attrs_t
 Proxy of C++ qvector< type_attr_t > class. More...
 
class  udtmembervec_template_t
 Proxy of C++ qvector< udm_t > class. More...
 
class  type_attr_t
 Proxy of C++ type_attr_t class. More...
 
class  til_t
 Proxy of C++ til_t class. More...
 
class  rrel_t
 Proxy of C++ rrel_t class. More...
 
class  argloc_t
 Proxy of C++ argloc_t class. More...
 
class  argpart_t
 Proxy of C++ argpart_t class. More...
 
class  scattered_aloc_t
 Proxy of C++ scattered_aloc_t class. More...
 
class  aloc_visitor_t
 Proxy of C++ aloc_visitor_t class. More...
 
class  const_aloc_visitor_t
 Proxy of C++ const_aloc_visitor_t class. More...
 
class  callregs_t
 Proxy of C++ callregs_t class. More...
 
class  tinfo_t
 Proxy of C++ tinfo_t class. More...
 
class  simd_info_t
 Proxy of C++ simd_info_t class. More...
 
class  ptr_type_data_t
 Proxy of C++ ptr_type_data_t class. More...
 
class  array_type_data_t
 Proxy of C++ array_type_data_t class. More...
 
class  funcarg_t
 Proxy of C++ funcarg_t class. More...
 
class  func_type_data_t
 Proxy of C++ func_type_data_t class. More...
 
class  stkarg_area_info_t
 Proxy of C++ stkarg_area_info_t class. More...
 
class  edm_t
 Proxy of C++ edm_t class. More...
 
class  enum_type_data_t
 Proxy of C++ enum_type_data_t class. More...
 
class  typedef_type_data_t
 Proxy of C++ typedef_type_data_t class. More...
 
class  custom_data_type_info_t
 Proxy of C++ custom_data_type_info_t class. More...
 
class  value_repr_t
 Proxy of C++ value_repr_t class. More...
 
class  udm_t
 Proxy of C++ udm_t class. More...
 
class  udtmembervec_t
 Proxy of C++ udtmembervec_t class. More...
 
class  udt_type_data_t
 Proxy of C++ udt_type_data_t class. More...
 
class  bitfield_type_data_t
 Proxy of C++ bitfield_type_data_t class. More...
 
class  type_mods_t
 Proxy of C++ type_mods_t class. More...
 
class  tinfo_visitor_t
 Proxy of C++ tinfo_visitor_t class. More...
 
class  regobj_t
 Proxy of C++ regobj_t class. More...
 
class  regobjs_t
 Proxy of C++ regobjs_t class. More...
 
class  argtinfo_helper_t
 Proxy of C++ argtinfo_helper_t class. More...
 
class  lowertype_helper_t
 Proxy of C++ lowertype_helper_t class. More...
 
class  ida_lowertype_helper_t
 Proxy of C++ ida_lowertype_helper_t class. More...
 
class  valstr_t
 Proxy of C++ valstr_t class. More...
 
class  valstrs_t
 Proxy of C++ valstrs_t class. More...
 
class  text_sink_t
 Proxy of C++ text_sink_t class. More...
 
class  til_symbol_t
 Proxy of C++ til_symbol_t class. More...
 
class  predicate_t
 Proxy of C++ predicate_t class. More...
 

Namespaces

namespace  ida_typeinf
 

Functions

"bool" deserialize_tinfo (*args)
 deserialize_tinfo(tif, til, ptype, pfields, pfldcmts, cmt=None) -> bool
 
"bool" is_type_const (*args)
 is_type_const(t) -> bool See BTM_CONST.
 
"bool" is_type_volatile (*args)
 is_type_volatile(t) -> bool See BTM_VOLATILE.
 
"type_t" get_base_type (*args)
 get_base_type(t) -> type_t Get get basic type bits (TYPE_BASE_MASK)
 
"type_t" get_type_flags (*args)
 get_type_flags(t) -> type_t Get type flags (TYPE_FLAGS_MASK)
 
"type_t" get_full_type (*args)
 get_full_type(t) -> type_t Get basic type bits + type flags (TYPE_FULL_MASK)
 
"bool" is_typeid_last (*args)
 is_typeid_last(t) -> bool Is the type_t the last byte of type declaration? (there are no additional bytes after a basic type, see _BT_LAST_BASIC)
 
"bool" is_type_partial (*args)
 is_type_partial(t) -> bool Identifies an unknown or void type with a known size (see Basic type: unknown & void)
 
"bool" is_type_void (*args)
 is_type_void(t) -> bool See BTF_VOID.
 
"bool" is_type_unknown (*args)
 is_type_unknown(t) -> bool See BT_UNKNOWN.
 
"bool" is_type_ptr (*args)
 is_type_ptr(t) -> bool See BT_PTR.
 
"bool" is_type_complex (*args)
 is_type_complex(t) -> bool See BT_COMPLEX.
 
"bool" is_type_func (*args)
 is_type_func(t) -> bool See BT_FUNC.
 
"bool" is_type_array (*args)
 is_type_array(t) -> bool See BT_ARRAY.
 
"bool" is_type_typedef (*args)
 is_type_typedef(t) -> bool See BTF_TYPEDEF.
 
"bool" is_type_sue (*args)
 is_type_sue(t) -> bool Is the type a struct/union/enum?
 
"bool" is_type_struct (*args)
 is_type_struct(t) -> bool See BTF_STRUCT.
 
"bool" is_type_union (*args)
 is_type_union(t) -> bool See BTF_UNION.
 
"bool" is_type_struni (*args)
 is_type_struni(t) -> bool Is the type a struct or union?
 
"bool" is_type_enum (*args)
 is_type_enum(t) -> bool See BTF_ENUM.
 
"bool" is_type_bitfld (*args)
 is_type_bitfld(t) -> bool See BT_BITFIELD.
 
"bool" is_type_int (*args)
 is_type_int(bt) -> bool Does the type_t specify one of the basic types in Basic type: integer?
 
"bool" is_type_int128 (*args)
 is_type_int128(t) -> bool Does the type specify a 128-bit value? (signed or unsigned, see Basic type: integer)
 
"bool" is_type_int64 (*args)
 is_type_int64(t) -> bool Does the type specify a 64-bit value? (signed or unsigned, see Basic type: integer)
 
"bool" is_type_int32 (*args)
 is_type_int32(t) -> bool Does the type specify a 32-bit value? (signed or unsigned, see Basic type: integer)
 
"bool" is_type_int16 (*args)
 is_type_int16(t) -> bool Does the type specify a 16-bit value? (signed or unsigned, see Basic type: integer)
 
"bool" is_type_char (*args)
 is_type_char(t) -> bool Does the type specify a char value? (signed or unsigned, see Basic type: integer)
 
"bool" is_type_paf (*args)
 is_type_paf(t) -> bool Is the type a pointer, array, or function type?
 
"bool" is_type_ptr_or_array (*args)
 is_type_ptr_or_array(t) -> bool Is the type a pointer or array type?
 
"bool" is_type_floating (*args)
 is_type_floating(t) -> bool Is the type a floating point type?
 
"bool" is_type_integral (*args)
 is_type_integral(t) -> bool Is the type an integral type (char/short/int/long/bool)?
 
"bool" is_type_ext_integral (*args)
 is_type_ext_integral(t) -> bool Is the type an extended integral type? (integral or enum)
 
"bool" is_type_arithmetic (*args)
 is_type_arithmetic(t) -> bool Is the type an arithmetic type? (floating or integral)
 
"bool" is_type_ext_arithmetic (*args)
 is_type_ext_arithmetic(t) -> bool Is the type an extended arithmetic type? (arithmetic or enum)
 
"bool" is_type_uint (*args)
 is_type_uint(t) -> bool See BTF_UINT.
 
"bool" is_type_uchar (*args)
 is_type_uchar(t) -> bool See BTF_UCHAR.
 
"bool" is_type_uint16 (*args)
 is_type_uint16(t) -> bool See BTF_UINT16.
 
"bool" is_type_uint32 (*args)
 is_type_uint32(t) -> bool See BTF_UINT32.
 
"bool" is_type_uint64 (*args)
 is_type_uint64(t) -> bool See BTF_UINT64.
 
"bool" is_type_uint128 (*args)
 is_type_uint128(t) -> bool See BTF_UINT128.
 
"bool" is_type_ldouble (*args)
 is_type_ldouble(t) -> bool See BTF_LDOUBLE.
 
"bool" is_type_double (*args)
 is_type_double(t) -> bool See BTF_DOUBLE.
 
"bool" is_type_float (*args)
 is_type_float(t) -> bool See BTF_FLOAT.
 
"bool" is_type_tbyte (*args)
 is_type_tbyte(t) -> bool See BTF_FLOAT.
 
"bool" is_type_bool (*args)
 is_type_bool(t) -> bool See BTF_BOOL.
 
"bool" is_tah_byte (*args)
 is_tah_byte(t) -> bool The TAH byte (type attribute header byte) denotes the start of type attributes.
 
"bool" is_sdacl_byte (*args)
 is_sdacl_byte(t) -> bool Identify an sdacl byte.
 
"bool" append_argloc (*args)
 append_argloc(out, vloc) -> bool Serialize argument location
 
"bool" extract_argloc (*args)
 extract_argloc(vloc, ptype, forbid_stkoff) -> bool Deserialize an argument location.
 
"type_t const *" resolve_typedef (*args)
 resolve_typedef(til, type) -> type_t const *
 
"bool" is_restype_void (*args)
 is_restype_void(til, type) -> bool
 
"bool" is_restype_enum (*args)
 is_restype_enum(til, type) -> bool
 
"bool" is_restype_struni (*args)
 is_restype_struni(til, type) -> bool
 
"bool" is_restype_struct (*args)
 is_restype_struct(til, type) -> bool
 
"type_t" get_scalar_bt (*args)
 get_scalar_bt(size) -> type_t
 
"til_t *" new_til (*args)
 new_til(name, desc) -> til_t Initialize a til.
 
"qstring *" load_til (*args)
 load_til(name, tildir=None) -> til_t Load til from a file without adding it to the database list (see also add_til).
 
"bool" compact_til (*args)
 compact_til(ti) -> bool Collect garbage in til.
 
"bool" store_til (*args)
 store_til(ti, tildir, name) -> bool Store til to a file.
 
"void" free_til (*args)
 free_til(ti) Free memory allocated by til.
 
"qstring *" load_til_header (*args)
 load_til_header(tildir, name) -> til_t Get human-readable til description.
 
"bool" is_code_far (*args)
 is_code_far(cm) -> bool Does the given model specify far code?.
 
"bool" is_data_far (*args)
 is_data_far(cm) -> bool Does the given model specify far data?.
 
"int" verify_argloc (*args)
 verify_argloc(vloc, size, gaps) -> int Verify argloc_t.
 
"bool" optimize_argloc (*args)
 optimize_argloc(vloc, size, gaps) -> bool Verify and optimize scattered argloc into simple form.
 
"size_t" print_argloc (*args)
 print_argloc(vloc, size=0, vflags=0) -> str Convert an argloc to human readable form.
 
"int" for_all_arglocs (*args)
 for_all_arglocs(vv, vloc, size, off=0) -> int Compress larger argloc types and initiate the aloc visitor.
 
"int" for_all_const_arglocs (*args)
 for_all_const_arglocs(vv, vloc, size, off=0) -> int See for_all_arglocs()
 
"bool" is_user_cc (*args)
 is_user_cc(cm) -> bool Does the calling convention specify argument locations explicitly?
 
"bool" is_vararg_cc (*args)
 is_vararg_cc(cm) -> bool Does the calling convention use ellipsis?
 
"bool" is_purging_cc (*args)
 is_purging_cc(cm) -> bool Does the calling convention clean the stack arguments upon return?.
 
"bool" is_golang_cc (*args)
 is_golang_cc(cc) -> bool GO language calling convention (return value in stack)?
 
"bool" is_swift_cc (*args)
 is_swift_cc(cc) -> bool Swift calling convention (arguments and return values in registers)?
 
"int" callregs_t_regcount (*args)
 callregs_t_regcount(cc) -> int
 
"comp_t" get_comp (*args)
 get_comp(comp) -> comp_t Get compiler bits.
 
"char const *" get_compiler_name (*args)
 get_compiler_name(id) -> char const * Get full compiler name.
 
"char const *" get_compiler_abbr (*args)
 get_compiler_abbr(id) -> char const * Get abbreviated compiler name.
 
"void" get_compilers (*args)
 get_compilers(ids, names, abbrs) Get names of all built-in compilers.
 
"comp_t" is_comp_unsure (*args)
 is_comp_unsure(comp) -> comp_t See COMP_UNSURE.
 
"comp_t" default_compiler (*args)
 default_compiler() -> comp_t Get compiler specified by inf.cc.
 
"bool" is_gcc (*args)
 is_gcc() -> bool Is the target compiler COMP_GNU?
 
"bool" is_gcc32 (*args)
 is_gcc32() -> bool Is the target compiler 32 bit gcc?
 
"bool" is_gcc64 (*args)
 is_gcc64() -> bool Is the target compiler 64 bit gcc?
 
"bool" gcc_layout (*args)
 gcc_layout() -> bool Should use the struct/union layout as done by gcc?
 
"bool" set_compiler (*args)
 set_compiler(cc, flags, abiname=None) -> bool Change current compiler.
 
"bool" set_compiler_id (*args)
 set_compiler_id(id, abiname=None) -> bool Set the compiler id (see Compiler IDs)
 
"bool" set_abi_name (*args)
 set_abi_name(abiname, user_level=False) -> bool Set abi name (see Compiler IDs)
 
"qstring *" get_abi_name (*args)
 get_abi_name() -> str Get ABI name.
 
"bool" append_abi_opts (*args)
 append_abi_opts(abi_opts, user_level=False) -> bool Add/remove/check ABI option General form of full abi name: abiname-opt1-opt2-... or -opt1-opt2-...
 
"bool" remove_abi_opts (*args)
 remove_abi_opts(abi_opts, user_level=False) -> bool
 
"bool" set_compiler_string (*args)
 set_compiler_string(compstr, user_level) -> bool
 
"bool" use_golang_cc (*args)
 use_golang_cc() -> bool is GOLANG calling convention used by default?
 
"void" switch_to_golang (*args)
 switch_to_golang() switch to GOLANG calling convention (to be used as default CC)
 
"int" convert_pt_flags_to_hti (*args)
 convert_pt_flags_to_hti(pt_flags) -> int Convert Type parsing flags to Type formatting flags.
 
"qstring *" parse_decl (*args)
 parse_decl(out_tif, til, decl, pt_flags) -> str Parse ONE declaration.
 
"int" parse_decls (*args)
 parse_decls(til, input, printer, hti_flags) -> int Parse many declarations and store them in a til.
 
"qstring *" print_type (*args)
 print_type(ea, prtype_flags) -> str Get type declaration for the specified address.
 
"char const *" tinfo_errstr (*args)
 tinfo_errstr(code) -> char const * Helper function to convert an error code into a printable string.
 
"bool" del_named_type (*args)
 del_named_type(ti, name, ntf_flags) -> bool Delete information about a symbol.
 
"char const *" first_named_type (*args)
 first_named_type(ti, ntf_flags) -> char const * Enumerate types.
 
"char const *" next_named_type (*args)
 next_named_type(ti, name, ntf_flags) -> char const * Enumerate types.
 
"uint32" copy_named_type (*args)
 copy_named_type(dsttil, srctil, name) -> uint32 Copy a named type from one til to another.
 
"qstring *" gen_decorate_name (*args)
 gen_decorate_name(name, mangle, cc, type) -> str Generic function for decorate_name() (may be used in IDP modules)
 
"qstring *" calc_c_cpp_name (*args)
 calc_c_cpp_name(name, type, ccn_flags) -> str Get C or C++ form of the name.
 
"bool" enable_numbered_types (*args)
 enable_numbered_types(ti, enable) -> bool Enable the use of numbered types in til.
 
"uint32" alloc_type_ordinals (*args)
 alloc_type_ordinals(ti, qty) -> uint32 Allocate a range of ordinal numbers for new types.
 
"uint32" alloc_type_ordinal (*args)
 alloc_type_ordinal(ti) -> uint32 alloc_type_ordinals(ti, 1)
 
"uint32" get_ordinal_limit (*args)
 get_ordinal_limit(ti=None) -> uint32 Get number of allocated ordinals + 1.
 
"uint32" get_ordinal_count (*args)
 get_ordinal_count(ti=None) -> uint32 Get number of allocated ordinals.
 
"tinfo_code_t" set_numbered_type (*args)
 set_numbered_type(ti, ordinal, ntf_flags, name, type, fields=None, cmt=None, fldcmts=None, sclass=None) -> tinfo_code_t Store a type in the til.
 
"bool" del_numbered_type (*args)
 del_numbered_type(ti, ordinal) -> bool Delete a numbered type.
 
"bool" set_type_alias (*args)
 set_type_alias(ti, src_ordinal, dst_ordinal) -> bool Create a type alias.
 
"uint32" get_alias_target (*args)
 get_alias_target(ti, ordinal) -> uint32 Find the final alias destination.
 
"int32" get_type_ordinal (*args)
 get_type_ordinal(ti, name) -> int32 Get type ordinal by its name.
 
"char const *" get_numbered_type_name (*args)
 get_numbered_type_name(ti, ordinal) -> char const * Get type name (if exists) by its ordinal.
 
"qstring *" create_numbered_type_name (*args)
 create_numbered_type_name(ord) -> str Create anonymous name for numbered type.
 
"bool" is_ordinal_name (*args)
 is_ordinal_name(name, ord=None) -> bool Check if the name is an ordinal name.
 
"int" get_ordinal_from_idb_type (*args)
 get_ordinal_from_idb_type(name, type) -> int Get ordinal number of an idb type (struct/enum).
 
"bool" is_autosync (*args)
 is_autosync(name, type) -> bool Is the specified idb type automatically synchronized?
 
"bool" is_type_choosable (*args)
 is_type_choosable(ti, ordinal) -> bool Check if a struct/union type is choosable
 
"void" set_type_choosable (*args)
 set_type_choosable(ti, ordinal, value) Enable/disable 'choosability' flag for a struct/union type
 
"ea_t" get_vftable_ea (*args)
 get_vftable_ea(ordinal) -> ea_t Get address of a virtual function table.
 
"uint32" get_vftable_ordinal (*args)
 get_vftable_ordinal(vftable_ea) -> uint32 Get ordinal number of the virtual function table.
 
"bool" set_vftable_ea (*args)
 set_vftable_ea(ordinal, vftable_ea) -> bool Set the address of a vftable instance for a vftable type.
 
"bool" del_vftable_ea (*args)
 del_vftable_ea(ordinal) -> bool Delete the address of a vftable instance for a vftable type.
 
"bool" deref_ptr (*args)
 deref_ptr(ptr_ea, tif, closure_obj=None) -> bool Dereference a pointer.
 
"tid_t" import_type (*args)
 import_type(til, idx, name, flags=0) -> tid_t Copy a named type from til to idb.
 
"int" add_til (*args)
 add_til(name, flags) -> int Load a til file and add it the database type libraries list.
 
"bool" del_til (*args)
 del_til(name) -> bool Unload a til file.
 
"bool" apply_named_type (*args)
 apply_named_type(ea, name) -> bool Apply the specified named type to the address.
 
"bool" apply_tinfo (*args)
 apply_tinfo(ea, tif, flags) -> bool Apply the specified type to the specified address.
 
"bool" apply_cdecl (*args)
 apply_cdecl(til, ea, decl, flags=0) -> bool Apply the specified type to the address.
 
"bool" apply_callee_tinfo (*args)
 apply_callee_tinfo(caller, tif) -> bool Apply the type of the called function to the calling instruction.
 
"bool" apply_once_tinfo_and_name (*args)
 apply_once_tinfo_and_name(dea, tif, name) -> bool Apply the specified type and name to the address.
 
"int" guess_tinfo (*args)
 guess_tinfo(out, id) -> int Generate a type information about the id from the disassembly.
 
"void" set_c_header_path (*args)
 set_c_header_path(incdir) Set include directory path the target compiler.
 
"qstring *" get_c_header_path (*args)
 get_c_header_path() -> str Get the include directory path of the target compiler.
 
"void" set_c_macros (*args)
 set_c_macros(macros) Set predefined macros for the target compiler.
 
"qstring *" get_c_macros (*args)
 get_c_macros() -> str Get predefined macros for the target compiler.
 
"til_t *" get_idati (*args)
 get_idati() -> til_t Pointer to the local type library - this til is private for each IDB file Functions that accept til_t* default to idati when is nullptr provided.
 
"size_t *, flags_t *, opinfo_t *, size_t *" get_idainfo_by_type (*args)
 get_idainfo_by_type(tif) -> bool Extract information from a tinfo_t.
 
"size_t *, opinfo_t *, size_t *" get_idainfo64_by_type (*args)
 get_idainfo64_by_type(out_flags, tif) -> bool Extract information from a tinfo_t.
 
"bool" get_tinfo_by_flags (*args)
 get_tinfo_by_flags(out, flags) -> bool Get tinfo object that corresponds to data flags
 
"void" copy_tinfo_t (*args)
 copy_tinfo_t(_this, r)
 
"void" clear_tinfo_t (*args)
 clear_tinfo_t(_this)
 
"bool" create_tinfo2 (*args)
 create_tinfo2(_this, bt, bt2, ptr) -> bool
 
"int" verify_tinfo (*args)
 verify_tinfo(typid) -> int
 
"bool" get_tinfo_details2 (*args)
 get_tinfo_details2(typid, bt2, buf) -> bool
 
"size_t" get_tinfo_size (*args)
 get_tinfo_size(p_effalign, typid, gts_code) -> size_t
 
"size_t" get_tinfo_pdata (*args)
 get_tinfo_pdata(outptr, typid, what) -> size_t
 
"size_t" get_tinfo_property (*args)
 get_tinfo_property(typid, gta_prop) -> size_t
 
"size_t" get_tinfo_property4 (*args)
 get_tinfo_property4(typid, gta_prop, p1, p2, p3, p4) -> size_t
 
"size_t" set_tinfo_property (*args)
 set_tinfo_property(tif, sta_prop, x) -> size_t
 
"size_t" set_tinfo_property4 (*args)
 set_tinfo_property4(tif, sta_prop, p1, p2, p3, p4) -> size_t
 
"bool" serialize_tinfo (*args)
 serialize_tinfo(type, fields, fldcmts, tif, sudt_flags) -> bool
 
"int" find_tinfo_udt_member (*args)
 find_tinfo_udt_member(udm, typid, strmem_flags) -> int
 
"qstring *" print_tinfo (*args)
 print_tinfo(prefix, indent, cmtindent, flags, tif, name, cmt) -> str
 
"char const *" dstr_tinfo (*args)
 dstr_tinfo(tif) -> char const *
 
"int" visit_subtypes (*args)
 visit_subtypes(visitor, out, tif, name, cmt) -> int
 
"bool" compare_tinfo (*args)
 compare_tinfo(t1, t2, tcflags) -> bool
 
"int" lexcompare_tinfo (*args)
 lexcompare_tinfo(t1, t2, arg3) -> int
 
"bool" get_stock_tinfo (*args)
 get_stock_tinfo(tif, id) -> bool
 
"uint64" read_tinfo_bitfield_value (*args)
 read_tinfo_bitfield_value(typid, v, bitoff) -> uint64
 
"uint64" write_tinfo_bitfield_value (*args)
 write_tinfo_bitfield_value(typid, dst, v, bitoff) -> uint64
 
"bool" get_tinfo_attr (*args)
 get_tinfo_attr(typid, key, bv, all_attrs) -> bool
 
"bool" set_tinfo_attr (*args)
 set_tinfo_attr(tif, ta, may_overwrite) -> bool
 
"bool" del_tinfo_attr (*args)
 del_tinfo_attr(tif, key, make_copy) -> bool
 
"bool" get_tinfo_attrs (*args)
 get_tinfo_attrs(typid, tav, include_ref_attrs) -> bool
 
"bool" set_tinfo_attrs (*args)
 set_tinfo_attrs(tif, ta) -> bool
 
"uint32" score_tinfo (*args)
 score_tinfo(tif) -> uint32
 
"tinfo_code_t" save_tinfo (*args)
 save_tinfo(tif, til, ord, name, ntf_flags) -> tinfo_code_t
 
"bool" append_tinfo_covered (*args)
 append_tinfo_covered(out, typid, offset) -> bool
 
"bool" calc_tinfo_gaps (*args)
 calc_tinfo_gaps(out, typid) -> bool
 
"bool" value_repr_t__from_opinfo (*args)
 value_repr_t__from_opinfo(_this, flags, afl, opinfo, ap) -> bool
 
"qstring *" value_repr_t__print_ (*args)
 value_repr_t__print_(_this, colored) -> str
 
"ssize_t" udt_type_data_t__find_member (*args)
 udt_type_data_t__find_member(_this, udm, strmem_flags) -> ssize_t
 
"bool" udm_t__make_gap (*args)
 udm_t__make_gap(_this, byteoff, nbytes) -> bool
 
"ssize_t" udt_type_data_t__get_best_fit_member (*args)
 udt_type_data_t__get_best_fit_member(_this, disp) -> ssize_t
 
"tid_t" get_udm_tid (*args)
 get_udm_tid(udm, udt_name) -> tid_t
 
"uchar" enum_type_data_t__get_max_serial (*args)
 enum_type_data_t__get_max_serial(ei, value) -> uchar
 
"tid_t" get_tinfo_tid (*args)
 get_tinfo_tid(tif, force_tid) -> tid_t
 
"tinfo_t" remove_pointer (*args)
 remove_pointer(tif) -> tinfo_t
 
"tinfo_t" tinfo_t_get_stock (*args)
 tinfo_t_get_stock(id) -> tinfo_t
 
"cm_t" guess_func_cc (*args)
 guess_func_cc(fti, npurged, cc_flags) -> cm_t Use func_type_data_t.guess_cc()
 
"qstring *" dump_func_type_data (*args)
 dump_func_type_data(fti, praloc_bits) -> str Use func_type_data_t.dump()
 
"bool" inf_pack_stkargs (*args)
 inf_pack_stkargs() -> bool inf_pack_stkargs(cc) -> bool
 
"bool" inf_big_arg_align (*args)
 inf_big_arg_align() -> bool inf_big_arg_align(cc) -> bool
 
"bool" inf_huge_arg_align (*args)
 inf_huge_arg_align() -> bool inf_huge_arg_align(cc) -> bool
 
"error_t" unpack_idcobj_from_idb (*args)
 unpack_idcobj_from_idb(obj, tif, ea, off0, pio_flags=0) -> error_t Collection of register objects.
 
"error_t" unpack_idcobj_from_bv (*args)
 unpack_idcobj_from_bv(obj, tif, bytes, pio_flags=0) -> error_t Read a typed idc object from the byte vector.
 
"error_t" pack_idcobj_to_idb (*args)
 pack_idcobj_to_idb(obj, tif, ea, pio_flags=0) -> error_t Write a typed idc object to the database.
 
"error_t" pack_idcobj_to_bv (*args)
 pack_idcobj_to_bv(obj, tif, bytes, objoff, pio_flags=0) -> error_t Write a typed idc object to the byte vector.
 
"bool" apply_tinfo_to_stkarg (*args)
 apply_tinfo_to_stkarg(insn, x, v, tif, name) -> bool Helper function for the processor modules.
 
"void" gen_use_arg_tinfos2 (*args)
 gen_use_arg_tinfos2(_this, caller, fti, rargs) Do not call this function directly, use argtinfo_helper_t.
 
"bool" func_has_stkframe_hole (*args)
 func_has_stkframe_hole(ea, fti) -> bool Looks for a hole at the beginning of the stack arguments.
 
"int" lower_type (*args)
 lower_type(til, tif, name=None, _helper=None) -> int Lower type.
 
"int" replace_ordinal_typerefs (*args)
 replace_ordinal_typerefs(til, tif) -> int Replace references to ordinal types by name references.
 
"void" begin_type_updating (*args)
 begin_type_updating(utp) Mark the beginning of a large update operation on the types.
 
"void" end_type_updating (*args)
 end_type_updating(utp) Mark the end of a large update operation on the types (see begin_type_updating())
 
"tid_t" get_named_type_tid (*args)
 get_named_type_tid(name) -> tid_t Get named local type TID
 
"qstring *" get_tid_name (*args)
 get_tid_name(tid) -> str Get a type name for the specified TID
 
"uint32" get_tid_ordinal (*args)
 get_tid_ordinal(tid) -> uint32 Get type ordinal number for TID
 
"ssize_t" get_udm_by_fullname (*args)
 get_udm_by_fullname(udm, fullname) -> ssize_t Get udt member by full name
 
"tid_t" create_enum_type (*args)
 create_enum_type(enum_name, ei, enum_width, sign, convert_to_bitmask, enum_cmt=None) -> tid_t Create type enum
 
"int" calc_number_of_children (*args)
 calc_number_of_children(loc, tif, dont_deref_ptr=False) -> int Calculate max number of lines of a formatted c data, when expanded (PTV_EXPAND).
 
"qstring *" get_enum_member_expr (*args)
 get_enum_member_expr(tif, serial, value) -> str Return a C expression that can be used to represent an enum member.
 
"bool" choose_named_type (*args)
 choose_named_type(out_sym, root_til, title, ntf_flags, predicate=None) -> bool Choose a type from a type library.
 
"uint32" choose_local_tinfo (*args)
 choose_local_tinfo(ti, title, func=None, def_ord=0, ud=None) -> uint32 Choose a type from the local type library.
 
"uint32" choose_local_tinfo_and_delta (*args)
 choose_local_tinfo_and_delta(delta, ti, title, func=None, def_ord=0, ud=None) -> uint32 Choose a type from the local type library and specify the pointer shift value.
 
"void" gen_use_arg_tinfos (*args)
 gen_use_arg_tinfos(caller, fti, rargs, set_optype, is_stkarg_load, has_delay_slot)
 
"bool" create_tinfo (*args)
 create_tinfo(_this, bt, bt2, ptr) -> bool
 
"bool" get_tinfo_details (*args)
 get_tinfo_details(typid, bt2, buf) -> bool
 
"uint32" get_ordinal_qty (*args)
 get_ordinal_qty(ti) -> uint32
 
"PyObject *" idc_parse_decl (*args)
 idc_parse_decl(ti, decl, flags) -> (str, bytes, bytes) or None
 
"PyObject *" calc_type_size (*args)
 
"bool" apply_type (*args)
 apply_type(ti, type, fields, ea, flags) -> bool Apply the specified type to the address
 
"PyObject *" get_arg_addrs (*args)
 get_arg_addrs(caller) -> PyObject * Retrieve addresses of argument initialization instructions
 
"PyObject *" unpack_object_from_idb (*args)
 unpack_object_from_idb(ti, type, fields, ea, pio_flags=0) -> PyObject *
 
"PyObject *" unpack_object_from_bv (*args)
 
"PyObject *" pack_object_to_idb (*args)
 pack_object_to_idb(py_obj, ti, type, fields, ea, pio_flags=0) -> PyObject * Write a typed object to the database.
 
"PyObject *" pack_object_to_bv (*args)
 
"int" idc_parse_types (*args)
 idc_parse_types(input, flags) -> int
 
"PyObject *" idc_get_type_raw (*args)
 idc_get_type_raw(ea) -> PyObject *
 
"PyObject *" idc_get_local_type_raw (*args)
 idc_get_local_type_raw(ordinal) -> (bytes, bytes)
 
"size_t" idc_guess_type (*args)
 idc_guess_type(ea) -> str
 
"size_t" idc_get_type (*args)
 idc_get_type(ea) -> str
 
"int" idc_set_local_type (*args)
 idc_set_local_type(ordinal, dcl, flags) -> int
 
"size_t" idc_get_local_type (*args)
 idc_get_local_type(ordinal, flags) -> str
 
"PyObject *" idc_print_type (*args)
 idc_print_type(type, fields, name, flags) -> str
 
"size_t" idc_get_local_type_name (*args)
 idc_get_local_type_name(ordinal) -> str
 
"PyObject *" get_named_type (*args)
 
"PyObject *" get_named_type64 (*args)
 get_named_type64(til, name, ntf_flags) -> (int, bytes, NoneType, NoneType, NoneType, int, int) See get_named_type() above.
 
"PyObject *" print_decls (*args)
 print_decls(printer, til, py_ordinals, flags) -> int Print types (and possibly their dependencies) in a format suitable for using in a header file.
 
"PyObject *" remove_tinfo_pointer (*args)
 remove_tinfo_pointer(tif, name, til) -> (bool, NoneType), (bool, str) Remove pointer of a type.
 
"PyObject *" get_numbered_type (*args)
 get_numbered_type(til, ordinal) -> (bytes, NoneType, NoneType, NoneType, int), (bytes, bytes, NoneType, NoneType, int) Retrieve a type by its ordinal number.
 

Variables

 DEFMASK64 = _ida_typeinf.DEFMASK64
 
 RESERVED_BYTE = _ida_typeinf.RESERVED_BYTE
 
 TAH_BYTE = _ida_typeinf.TAH_BYTE
 
 FAH_BYTE = _ida_typeinf.FAH_BYTE
 
 MAX_DECL_ALIGN = _ida_typeinf.MAX_DECL_ALIGN
 
 TAH_HASATTRS = _ida_typeinf.TAH_HASATTRS
 
 TAUDT_UNALIGNED = _ida_typeinf.TAUDT_UNALIGNED
 
 TAUDT_MSSTRUCT = _ida_typeinf.TAUDT_MSSTRUCT
 
 TAUDT_CPPOBJ = _ida_typeinf.TAUDT_CPPOBJ
 
 TAUDT_VFTABLE = _ida_typeinf.TAUDT_VFTABLE
 
 TAFLD_BASECLASS = _ida_typeinf.TAFLD_BASECLASS
 
 TAFLD_UNALIGNED = _ida_typeinf.TAFLD_UNALIGNED
 
 TAFLD_VIRTBASE = _ida_typeinf.TAFLD_VIRTBASE
 
 TAFLD_VFTABLE = _ida_typeinf.TAFLD_VFTABLE
 
 TAFLD_METHOD = _ida_typeinf.TAFLD_METHOD
 
 TAFLD_GAP = _ida_typeinf.TAFLD_GAP
 
 TAFLD_REGCMT = _ida_typeinf.TAFLD_REGCMT
 
 TAPTR_PTR32 = _ida_typeinf.TAPTR_PTR32
 
 TAPTR_PTR64 = _ida_typeinf.TAPTR_PTR64
 
 TAPTR_RESTRICT = _ida_typeinf.TAPTR_RESTRICT
 
 TAPTR_SHIFTED = _ida_typeinf.TAPTR_SHIFTED
 
 TAENUM_64BIT = _ida_typeinf.TAENUM_64BIT
 
 TAENUM_UNSIGNED = _ida_typeinf.TAENUM_UNSIGNED
 
 TAENUM_SIGNED = _ida_typeinf.TAENUM_SIGNED
 
 TAENUM_OCT = _ida_typeinf.TAENUM_OCT
 
 TAENUM_BIN = _ida_typeinf.TAENUM_BIN
 
 TAENUM_NUMSIGN = _ida_typeinf.TAENUM_NUMSIGN
 
 TAENUM_LZERO = _ida_typeinf.TAENUM_LZERO
 
 TAH_ALL = _ida_typeinf.TAH_ALL
 
 cvar = _ida_typeinf.cvar
 
 TYPE_BASE_MASK = cvar.TYPE_BASE_MASK
 
 TYPE_FLAGS_MASK = cvar.TYPE_FLAGS_MASK
 
 TYPE_MODIF_MASK = cvar.TYPE_MODIF_MASK
 
 TYPE_FULL_MASK = cvar.TYPE_FULL_MASK
 
 BT_UNK = cvar.BT_UNK
 
 BT_VOID = cvar.BT_VOID
 
 BTMT_SIZE0 = cvar.BTMT_SIZE0
 
 BTMT_SIZE12 = cvar.BTMT_SIZE12
 
 BTMT_SIZE48 = cvar.BTMT_SIZE48
 
 BTMT_SIZE128 = cvar.BTMT_SIZE128
 
 BT_INT8 = cvar.BT_INT8
 
 BT_INT16 = cvar.BT_INT16
 
 BT_INT32 = cvar.BT_INT32
 
 BT_INT64 = cvar.BT_INT64
 
 BT_INT128 = cvar.BT_INT128
 
 BT_INT = cvar.BT_INT
 
 BTMT_UNKSIGN = cvar.BTMT_UNKSIGN
 
 BTMT_SIGNED = cvar.BTMT_SIGNED
 
 BTMT_USIGNED = cvar.BTMT_USIGNED
 
 BTMT_UNSIGNED = cvar.BTMT_UNSIGNED
 
 BTMT_CHAR = cvar.BTMT_CHAR
 
 BT_BOOL = cvar.BT_BOOL
 
 BTMT_DEFBOOL = cvar.BTMT_DEFBOOL
 
 BTMT_BOOL1 = cvar.BTMT_BOOL1
 
 BTMT_BOOL2 = cvar.BTMT_BOOL2
 
 BTMT_BOOL8 = cvar.BTMT_BOOL8
 
 BTMT_BOOL4 = cvar.BTMT_BOOL4
 
 BT_FLOAT = cvar.BT_FLOAT
 
 BTMT_FLOAT = cvar.BTMT_FLOAT
 
 BTMT_DOUBLE = cvar.BTMT_DOUBLE
 
 BTMT_LNGDBL = cvar.BTMT_LNGDBL
 
 BTMT_SPECFLT = cvar.BTMT_SPECFLT
 
 _BT_LAST_BASIC = cvar._BT_LAST_BASIC
 
 BT_PTR = cvar.BT_PTR
 
 BTMT_DEFPTR = cvar.BTMT_DEFPTR
 
 BTMT_NEAR = cvar.BTMT_NEAR
 
 BTMT_FAR = cvar.BTMT_FAR
 
 BTMT_CLOSURE = cvar.BTMT_CLOSURE
 
 BT_ARRAY = cvar.BT_ARRAY
 
 BTMT_NONBASED = cvar.BTMT_NONBASED
 
 BTMT_ARRESERV = cvar.BTMT_ARRESERV
 
 BT_FUNC = cvar.BT_FUNC
 
 BTMT_DEFCALL = cvar.BTMT_DEFCALL
 
 BTMT_NEARCALL = cvar.BTMT_NEARCALL
 
 BTMT_FARCALL = cvar.BTMT_FARCALL
 
 BTMT_INTCALL = cvar.BTMT_INTCALL
 
 BT_COMPLEX = cvar.BT_COMPLEX
 
 BTMT_STRUCT = cvar.BTMT_STRUCT
 
 BTMT_UNION = cvar.BTMT_UNION
 
 BTMT_ENUM = cvar.BTMT_ENUM
 
 BTMT_TYPEDEF = cvar.BTMT_TYPEDEF
 
 BT_BITFIELD = cvar.BT_BITFIELD
 
 BTMT_BFLDI8 = cvar.BTMT_BFLDI8
 
 BTMT_BFLDI16 = cvar.BTMT_BFLDI16
 
 BTMT_BFLDI32 = cvar.BTMT_BFLDI32
 
 BTMT_BFLDI64 = cvar.BTMT_BFLDI64
 
 BT_RESERVED = cvar.BT_RESERVED
 
 BTM_CONST = cvar.BTM_CONST
 
 BTM_VOLATILE = cvar.BTM_VOLATILE
 
 BTE_SIZE_MASK = cvar.BTE_SIZE_MASK
 
 BTE_RESERVED = cvar.BTE_RESERVED
 
 BTE_BITMASK = cvar.BTE_BITMASK
 
 BTE_OUT_MASK = cvar.BTE_OUT_MASK
 
 BTE_HEX = cvar.BTE_HEX
 
 BTE_CHAR = cvar.BTE_CHAR
 
 BTE_SDEC = cvar.BTE_SDEC
 
 BTE_UDEC = cvar.BTE_UDEC
 
 BTE_ALWAYS = cvar.BTE_ALWAYS
 
 BT_SEGREG = cvar.BT_SEGREG
 
 BT_UNK_BYTE = cvar.BT_UNK_BYTE
 
 BT_UNK_WORD = cvar.BT_UNK_WORD
 
 BT_UNK_DWORD = cvar.BT_UNK_DWORD
 
 BT_UNK_QWORD = cvar.BT_UNK_QWORD
 
 BT_UNK_OWORD = cvar.BT_UNK_OWORD
 
 BT_UNKNOWN = cvar.BT_UNKNOWN
 
 BTF_BYTE = cvar.BTF_BYTE
 
 BTF_UNK = cvar.BTF_UNK
 
 BTF_VOID = cvar.BTF_VOID
 
 BTF_INT8 = cvar.BTF_INT8
 
 BTF_CHAR = cvar.BTF_CHAR
 
 BTF_UCHAR = cvar.BTF_UCHAR
 
 BTF_UINT8 = cvar.BTF_UINT8
 
 BTF_INT16 = cvar.BTF_INT16
 
 BTF_UINT16 = cvar.BTF_UINT16
 
 BTF_INT32 = cvar.BTF_INT32
 
 BTF_UINT32 = cvar.BTF_UINT32
 
 BTF_INT64 = cvar.BTF_INT64
 
 BTF_UINT64 = cvar.BTF_UINT64
 
 BTF_INT128 = cvar.BTF_INT128
 
 BTF_UINT128 = cvar.BTF_UINT128
 
 BTF_INT = cvar.BTF_INT
 
 BTF_UINT = cvar.BTF_UINT
 
 BTF_SINT = cvar.BTF_SINT
 
 BTF_BOOL = cvar.BTF_BOOL
 
 BTF_FLOAT = cvar.BTF_FLOAT
 
 BTF_DOUBLE = cvar.BTF_DOUBLE
 
 BTF_LDOUBLE = cvar.BTF_LDOUBLE
 
 BTF_TBYTE = cvar.BTF_TBYTE
 
 BTF_STRUCT = cvar.BTF_STRUCT
 
 BTF_UNION = cvar.BTF_UNION
 
 BTF_ENUM = cvar.BTF_ENUM
 
 BTF_TYPEDEF = cvar.BTF_TYPEDEF
 
 TA_ORG_TYPEDEF = _ida_typeinf.TA_ORG_TYPEDEF
 
 TA_ORG_ARRDIM = _ida_typeinf.TA_ORG_ARRDIM
 
 TA_FORMAT = _ida_typeinf.TA_FORMAT
 
 TA_VALUE_REPR = _ida_typeinf.TA_VALUE_REPR
 
 no_sign = cvar.no_sign
 
 type_signed = cvar.type_signed
 
 type_unsigned = cvar.type_unsigned
 
 TIL_ZIP = _ida_typeinf.TIL_ZIP
 
 TIL_MAC = _ida_typeinf.TIL_MAC
 
 TIL_ESI = _ida_typeinf.TIL_ESI
 
 TIL_UNI = _ida_typeinf.TIL_UNI
 
 TIL_ORD = _ida_typeinf.TIL_ORD
 
 TIL_ALI = _ida_typeinf.TIL_ALI
 
 TIL_MOD = _ida_typeinf.TIL_MOD
 
 TIL_STM = _ida_typeinf.TIL_STM
 
 TIL_SLD = _ida_typeinf.TIL_SLD
 
 TIL_ADD_FAILED = _ida_typeinf.TIL_ADD_FAILED
 
 TIL_ADD_OK = _ida_typeinf.TIL_ADD_OK
 
 TIL_ADD_ALREADY = _ida_typeinf.TIL_ADD_ALREADY
 
 CM_MASK = cvar.CM_MASK
 
 CM_UNKNOWN = cvar.CM_UNKNOWN
 
 CM_N8_F16 = cvar.CM_N8_F16
 
 CM_N64 = cvar.CM_N64
 
 CM_N16_F32 = cvar.CM_N16_F32
 
 CM_N32_F48 = cvar.CM_N32_F48
 
 CM_M_MASK = cvar.CM_M_MASK
 
 CM_M_NN = cvar.CM_M_NN
 
 CM_M_FF = cvar.CM_M_FF
 
 CM_M_NF = cvar.CM_M_NF
 
 CM_M_FN = cvar.CM_M_FN
 
 CM_CC_MASK = cvar.CM_CC_MASK
 
 CM_CC_INVALID = cvar.CM_CC_INVALID
 
 CM_CC_UNKNOWN = cvar.CM_CC_UNKNOWN
 
 CM_CC_VOIDARG = cvar.CM_CC_VOIDARG
 
 CM_CC_CDECL = cvar.CM_CC_CDECL
 
 CM_CC_ELLIPSIS = cvar.CM_CC_ELLIPSIS
 
 CM_CC_STDCALL = cvar.CM_CC_STDCALL
 
 CM_CC_PASCAL = cvar.CM_CC_PASCAL
 
 CM_CC_FASTCALL = cvar.CM_CC_FASTCALL
 
 CM_CC_THISCALL = cvar.CM_CC_THISCALL
 
 CM_CC_SWIFT = cvar.CM_CC_SWIFT
 
 CM_CC_SPOILED = cvar.CM_CC_SPOILED
 
 CM_CC_GOLANG = cvar.CM_CC_GOLANG
 
 CM_CC_RESERVE3 = cvar.CM_CC_RESERVE3
 
 CM_CC_SPECIALE = cvar.CM_CC_SPECIALE
 
 CM_CC_SPECIALP = cvar.CM_CC_SPECIALP
 
 CM_CC_SPECIAL = cvar.CM_CC_SPECIAL
 
 BFA_NORET = cvar.BFA_NORET
 
 BFA_PURE = cvar.BFA_PURE
 
 BFA_HIGH = cvar.BFA_HIGH
 
 BFA_STATIC = cvar.BFA_STATIC
 
 BFA_VIRTUAL = cvar.BFA_VIRTUAL
 
 BFA_FUNC_MARKER = cvar.BFA_FUNC_MARKER
 
 BFA_FUNC_EXT_FORMAT = cvar.BFA_FUNC_EXT_FORMAT
 
 ALOC_NONE = cvar.ALOC_NONE
 
 ALOC_STACK = cvar.ALOC_STACK
 
 ALOC_DIST = cvar.ALOC_DIST
 
 ALOC_REG1 = cvar.ALOC_REG1
 
 ALOC_REG2 = cvar.ALOC_REG2
 
 ALOC_RREL = cvar.ALOC_RREL
 
 ALOC_STATIC = cvar.ALOC_STATIC
 
 ALOC_CUSTOM = cvar.ALOC_CUSTOM
 
 PRALOC_VERIFY = _ida_typeinf.PRALOC_VERIFY
 
 PRALOC_STKOFF = _ida_typeinf.PRALOC_STKOFF
 
 ARGREGS_POLICY_UNDEFINED = _ida_typeinf.ARGREGS_POLICY_UNDEFINED
 
 ARGREGS_GP_ONLY = _ida_typeinf.ARGREGS_GP_ONLY
 
 ARGREGS_INDEPENDENT = _ida_typeinf.ARGREGS_INDEPENDENT
 
 ARGREGS_BY_SLOTS = _ida_typeinf.ARGREGS_BY_SLOTS
 
 ARGREGS_FP_CONSUME_GP = _ida_typeinf.ARGREGS_FP_CONSUME_GP
 
 ARGREGS_MIPS_O32 = _ida_typeinf.ARGREGS_MIPS_O32
 
 C_PC_TINY = cvar.C_PC_TINY
 
 C_PC_SMALL = cvar.C_PC_SMALL
 
 C_PC_COMPACT = cvar.C_PC_COMPACT
 
 C_PC_MEDIUM = cvar.C_PC_MEDIUM
 
 C_PC_LARGE = cvar.C_PC_LARGE
 
 C_PC_HUGE = cvar.C_PC_HUGE
 
 C_PC_FLAT = cvar.C_PC_FLAT
 
 SETCOMP_OVERRIDE = _ida_typeinf.SETCOMP_OVERRIDE
 
 SETCOMP_ONLY_ID = _ida_typeinf.SETCOMP_ONLY_ID
 
 SETCOMP_ONLY_ABI = _ida_typeinf.SETCOMP_ONLY_ABI
 
 SETCOMP_BY_USER = _ida_typeinf.SETCOMP_BY_USER
 
 MAX_FUNC_ARGS = _ida_typeinf.MAX_FUNC_ARGS
 
 ABS_UNK = _ida_typeinf.ABS_UNK
 
 ABS_NO = _ida_typeinf.ABS_NO
 
 ABS_YES = _ida_typeinf.ABS_YES
 
 SC_UNK = _ida_typeinf.SC_UNK
 
 SC_TYPE = _ida_typeinf.SC_TYPE
 
 SC_EXT = _ida_typeinf.SC_EXT
 
 SC_STAT = _ida_typeinf.SC_STAT
 
 SC_REG = _ida_typeinf.SC_REG
 
 SC_AUTO = _ida_typeinf.SC_AUTO
 
 SC_FRIEND = _ida_typeinf.SC_FRIEND
 
 SC_VIRT = _ida_typeinf.SC_VIRT
 
 HTI_CPP = _ida_typeinf.HTI_CPP
 
 HTI_INT = _ida_typeinf.HTI_INT
 
 HTI_EXT = _ida_typeinf.HTI_EXT
 
 HTI_LEX = _ida_typeinf.HTI_LEX
 
 HTI_UNP = _ida_typeinf.HTI_UNP
 
 HTI_TST = _ida_typeinf.HTI_TST
 
 HTI_FIL = _ida_typeinf.HTI_FIL
 
 HTI_MAC = _ida_typeinf.HTI_MAC
 
 HTI_NWR = _ida_typeinf.HTI_NWR
 
 HTI_NER = _ida_typeinf.HTI_NER
 
 HTI_DCL = _ida_typeinf.HTI_DCL
 
 HTI_NDC = _ida_typeinf.HTI_NDC
 
 HTI_PAK = _ida_typeinf.HTI_PAK
 
 HTI_PAK_SHIFT = _ida_typeinf.HTI_PAK_SHIFT
 
 HTI_PAKDEF = _ida_typeinf.HTI_PAKDEF
 
 HTI_PAK1 = _ida_typeinf.HTI_PAK1
 
 HTI_PAK2 = _ida_typeinf.HTI_PAK2
 
 HTI_PAK4 = _ida_typeinf.HTI_PAK4
 
 HTI_PAK8 = _ida_typeinf.HTI_PAK8
 
 HTI_PAK16 = _ida_typeinf.HTI_PAK16
 
 HTI_HIGH = _ida_typeinf.HTI_HIGH
 
 HTI_LOWER = _ida_typeinf.HTI_LOWER
 
 HTI_RAWARGS = _ida_typeinf.HTI_RAWARGS
 
 HTI_RELAXED = _ida_typeinf.HTI_RELAXED
 
 HTI_NOBASE = _ida_typeinf.HTI_NOBASE
 
 PT_SIL = _ida_typeinf.PT_SIL
 
 PT_NDC = _ida_typeinf.PT_NDC
 
 PT_TYP = _ida_typeinf.PT_TYP
 
 PT_VAR = _ida_typeinf.PT_VAR
 
 PT_PACKMASK = _ida_typeinf.PT_PACKMASK
 
 PT_HIGH = _ida_typeinf.PT_HIGH
 
 PT_LOWER = _ida_typeinf.PT_LOWER
 
 PT_REPLACE = _ida_typeinf.PT_REPLACE
 
 PT_RAWARGS = _ida_typeinf.PT_RAWARGS
 
 PT_RELAXED = _ida_typeinf.PT_RELAXED
 
 PRTYPE_1LINE = _ida_typeinf.PRTYPE_1LINE
 
 PRTYPE_MULTI = _ida_typeinf.PRTYPE_MULTI
 
 PRTYPE_TYPE = _ida_typeinf.PRTYPE_TYPE
 
 PRTYPE_PRAGMA = _ida_typeinf.PRTYPE_PRAGMA
 
 PRTYPE_SEMI = _ida_typeinf.PRTYPE_SEMI
 
 PRTYPE_CPP = _ida_typeinf.PRTYPE_CPP
 
 PRTYPE_DEF = _ida_typeinf.PRTYPE_DEF
 
 PRTYPE_NOARGS = _ida_typeinf.PRTYPE_NOARGS
 
 PRTYPE_NOARRS = _ida_typeinf.PRTYPE_NOARRS
 
 PRTYPE_NORES = _ida_typeinf.PRTYPE_NORES
 
 PRTYPE_RESTORE = _ida_typeinf.PRTYPE_RESTORE
 
 PRTYPE_NOREGEX = _ida_typeinf.PRTYPE_NOREGEX
 
 PRTYPE_COLORED = _ida_typeinf.PRTYPE_COLORED
 
 PRTYPE_METHODS = _ida_typeinf.PRTYPE_METHODS
 
 PRTYPE_1LINCMT = _ida_typeinf.PRTYPE_1LINCMT
 
 PRTYPE_HEADER = _ida_typeinf.PRTYPE_HEADER
 
 PRTYPE_MAXSTR = _ida_typeinf.PRTYPE_MAXSTR
 
 NTF_TYPE = _ida_typeinf.NTF_TYPE
 
 NTF_SYMU = _ida_typeinf.NTF_SYMU
 
 NTF_SYMM = _ida_typeinf.NTF_SYMM
 
 NTF_NOBASE = _ida_typeinf.NTF_NOBASE
 
 NTF_REPLACE = _ida_typeinf.NTF_REPLACE
 
 NTF_UMANGLED = _ida_typeinf.NTF_UMANGLED
 
 NTF_NOCUR = _ida_typeinf.NTF_NOCUR
 
 NTF_64BIT = _ida_typeinf.NTF_64BIT
 
 NTF_FIXNAME = _ida_typeinf.NTF_FIXNAME
 
 NTF_IDBENC = _ida_typeinf.NTF_IDBENC
 
 NTF_CHKSYNC = _ida_typeinf.NTF_CHKSYNC
 
 NTF_NO_NAMECHK = _ida_typeinf.NTF_NO_NAMECHK
 
 NTF_COPY = _ida_typeinf.NTF_COPY
 
 TERR_OK = _ida_typeinf.TERR_OK
 
 TERR_SAVE_ERROR = _ida_typeinf.TERR_SAVE_ERROR
 
 TERR_SERIALIZE = _ida_typeinf.TERR_SERIALIZE
 
 TERR_BAD_NAME = _ida_typeinf.TERR_BAD_NAME
 
 TERR_BAD_SYNC = _ida_typeinf.TERR_BAD_SYNC
 
 TERR_BAD_ARG = _ida_typeinf.TERR_BAD_ARG
 
 TERR_BAD_TYPE = _ida_typeinf.TERR_BAD_TYPE
 
 TERR_BAD_SIZE = _ida_typeinf.TERR_BAD_SIZE
 
 TERR_BAD_INDEX = _ida_typeinf.TERR_BAD_INDEX
 
 TERR_BAD_ARRAY = _ida_typeinf.TERR_BAD_ARRAY
 
 TERR_BAD_BF = _ida_typeinf.TERR_BAD_BF
 
 TERR_BAD_OFFSET = _ida_typeinf.TERR_BAD_OFFSET
 
 TERR_BAD_UNIVAR = _ida_typeinf.TERR_BAD_UNIVAR
 
 TERR_BAD_VARLAST = _ida_typeinf.TERR_BAD_VARLAST
 
 TERR_OVERLAP = _ida_typeinf.TERR_OVERLAP
 
 TERR_BAD_SUBTYPE = _ida_typeinf.TERR_BAD_SUBTYPE
 
 TERR_BAD_VALUE = _ida_typeinf.TERR_BAD_VALUE
 
 TERR_NO_BMASK = _ida_typeinf.TERR_NO_BMASK
 
 TERR_BAD_BMASK = _ida_typeinf.TERR_BAD_BMASK
 
 TERR_BAD_MSKVAL = _ida_typeinf.TERR_BAD_MSKVAL
 
 TERR_BAD_REPR = _ida_typeinf.TERR_BAD_REPR
 
 TERR_GRP_NOEMPTY = _ida_typeinf.TERR_GRP_NOEMPTY
 
 TERR_DUPNAME = _ida_typeinf.TERR_DUPNAME
 
 TERR_UNION_BF = _ida_typeinf.TERR_UNION_BF
 
 TERR_BAD_TAH = _ida_typeinf.TERR_BAD_TAH
 
 TERR_BAD_BASE = _ida_typeinf.TERR_BAD_BASE
 
 TERR_BAD_GAP = _ida_typeinf.TERR_BAD_GAP
 
 TERR_NESTED = _ida_typeinf.TERR_NESTED
 
 TERR_NOT_COMPAT = _ida_typeinf.TERR_NOT_COMPAT
 
 TERR_BAD_LAYOUT = _ida_typeinf.TERR_BAD_LAYOUT
 
 TERR_BAD_GROUPS = _ida_typeinf.TERR_BAD_GROUPS
 
 TERR_BAD_SERIAL = _ida_typeinf.TERR_BAD_SERIAL
 
 TERR_ALIEN_NAME = _ida_typeinf.TERR_ALIEN_NAME
 
 TERR_STOCK = _ida_typeinf.TERR_STOCK
 
 TERR_ENUM_SIZE = _ida_typeinf.TERR_ENUM_SIZE
 
 TERR_NOT_IMPL = _ida_typeinf.TERR_NOT_IMPL
 
 TERR_COUNT = _ida_typeinf.TERR_COUNT
 
 CCN_C = _ida_typeinf.CCN_C
 
 CCN_CPP = _ida_typeinf.CCN_CPP
 
 IMPTYPE_LOCAL = _ida_typeinf.IMPTYPE_LOCAL
 
 ADDTIL_DEFAULT = _ida_typeinf.ADDTIL_DEFAULT
 
 ADDTIL_INCOMP = _ida_typeinf.ADDTIL_INCOMP
 
 ADDTIL_SILENT = _ida_typeinf.ADDTIL_SILENT
 
 ADDTIL_FAILED = _ida_typeinf.ADDTIL_FAILED
 
 ADDTIL_OK = _ida_typeinf.ADDTIL_OK
 
 ADDTIL_COMP = _ida_typeinf.ADDTIL_COMP
 
 ADDTIL_ABORTED = _ida_typeinf.ADDTIL_ABORTED
 
 TINFO_GUESSED = _ida_typeinf.TINFO_GUESSED
 
 TINFO_DEFINITE = _ida_typeinf.TINFO_DEFINITE
 
 TINFO_DELAYFUNC = _ida_typeinf.TINFO_DELAYFUNC
 
 TINFO_STRICT = _ida_typeinf.TINFO_STRICT
 
 GUESS_FUNC_FAILED = _ida_typeinf.GUESS_FUNC_FAILED
 
 GUESS_FUNC_TRIVIAL = _ida_typeinf.GUESS_FUNC_TRIVIAL
 
 GUESS_FUNC_OK = _ida_typeinf.GUESS_FUNC_OK
 
 STI_PCHAR = _ida_typeinf.STI_PCHAR
 
 STI_PUCHAR = _ida_typeinf.STI_PUCHAR
 
 STI_PCCHAR = _ida_typeinf.STI_PCCHAR
 
 STI_PCUCHAR = _ida_typeinf.STI_PCUCHAR
 
 STI_PBYTE = _ida_typeinf.STI_PBYTE
 
 STI_PINT = _ida_typeinf.STI_PINT
 
 STI_PUINT = _ida_typeinf.STI_PUINT
 
 STI_PVOID = _ida_typeinf.STI_PVOID
 
 STI_PPVOID = _ida_typeinf.STI_PPVOID
 
 STI_PCVOID = _ida_typeinf.STI_PCVOID
 
 STI_ACHAR = _ida_typeinf.STI_ACHAR
 
 STI_AUCHAR = _ida_typeinf.STI_AUCHAR
 
 STI_ACCHAR = _ida_typeinf.STI_ACCHAR
 
 STI_ACUCHAR = _ida_typeinf.STI_ACUCHAR
 
 STI_FPURGING = _ida_typeinf.STI_FPURGING
 
 STI_FDELOP = _ida_typeinf.STI_FDELOP
 
 STI_MSGSEND = _ida_typeinf.STI_MSGSEND
 
 STI_AEABI_LCMP = _ida_typeinf.STI_AEABI_LCMP
 
 STI_AEABI_ULCMP = _ida_typeinf.STI_AEABI_ULCMP
 
 STI_DONT_USE = _ida_typeinf.STI_DONT_USE
 
 STI_SIZE_T = _ida_typeinf.STI_SIZE_T
 
 STI_SSIZE_T = _ida_typeinf.STI_SSIZE_T
 
 STI_AEABI_MEMCPY = _ida_typeinf.STI_AEABI_MEMCPY
 
 STI_AEABI_MEMSET = _ida_typeinf.STI_AEABI_MEMSET
 
 STI_AEABI_MEMCLR = _ida_typeinf.STI_AEABI_MEMCLR
 
 STI_RTC_CHECK_2 = _ida_typeinf.STI_RTC_CHECK_2
 
 STI_RTC_CHECK_4 = _ida_typeinf.STI_RTC_CHECK_4
 
 STI_RTC_CHECK_8 = _ida_typeinf.STI_RTC_CHECK_8
 
 STI_COMPLEX64 = _ida_typeinf.STI_COMPLEX64
 
 STI_COMPLEX128 = _ida_typeinf.STI_COMPLEX128
 
 STI_LAST = _ida_typeinf.STI_LAST
 
 ETF_NO_SAVE = _ida_typeinf.ETF_NO_SAVE
 
 ETF_NO_LAYOUT = _ida_typeinf.ETF_NO_LAYOUT
 
 ETF_MAY_DESTROY = _ida_typeinf.ETF_MAY_DESTROY
 
 ETF_COMPATIBLE = _ida_typeinf.ETF_COMPATIBLE
 
 ETF_FUNCARG = _ida_typeinf.ETF_FUNCARG
 
 ETF_FORCENAME = _ida_typeinf.ETF_FORCENAME
 
 ETF_AUTONAME = _ida_typeinf.ETF_AUTONAME
 
 ETF_ASMENUM = _ida_typeinf.ETF_ASMENUM
 
 ETF_NO_IDBSYNC = _ida_typeinf.ETF_NO_IDBSYNC
 
 GTD_CALC_LAYOUT = _ida_typeinf.GTD_CALC_LAYOUT
 
 GTD_NO_LAYOUT = _ida_typeinf.GTD_NO_LAYOUT
 
 GTD_DEL_BITFLDS = _ida_typeinf.GTD_DEL_BITFLDS
 
 GTD_CALC_ARGLOCS = _ida_typeinf.GTD_CALC_ARGLOCS
 
 GTD_NO_ARGLOCS = _ida_typeinf.GTD_NO_ARGLOCS
 
 GTS_NESTED = _ida_typeinf.GTS_NESTED
 
 GTS_BASECLASS = _ida_typeinf.GTS_BASECLASS
 
 SUDT_SORT = _ida_typeinf.SUDT_SORT
 
 SUDT_ALIGN = _ida_typeinf.SUDT_ALIGN
 
 SUDT_GAPS = _ida_typeinf.SUDT_GAPS
 
 SUDT_UNEX = _ida_typeinf.SUDT_UNEX
 
 SUDT_FAST = _ida_typeinf.SUDT_FAST
 
 SUDT_CONST = _ida_typeinf.SUDT_CONST
 
 SUDT_VOLATILE = _ida_typeinf.SUDT_VOLATILE
 
 SUDT_TRUNC = _ida_typeinf.SUDT_TRUNC
 
 SUDT_SERDEF = _ida_typeinf.SUDT_SERDEF
 
 COMP_MASK = cvar.COMP_MASK
 
 COMP_UNK = cvar.COMP_UNK
 
 COMP_MS = cvar.COMP_MS
 
 COMP_BC = cvar.COMP_BC
 
 COMP_WATCOM = cvar.COMP_WATCOM
 
 COMP_GNU = cvar.COMP_GNU
 
 COMP_VISAGE = cvar.COMP_VISAGE
 
 COMP_BP = cvar.COMP_BP
 
 COMP_UNSURE = cvar.COMP_UNSURE
 
 BADSIZE = cvar.BADSIZE
 
 FIRST_NONTRIVIAL_TYPID = cvar.FIRST_NONTRIVIAL_TYPID
 
 TYPID_ISREF = cvar.TYPID_ISREF
 
 TYPID_SHIFT = cvar.TYPID_SHIFT
 
 STRMEM_MASK = _ida_typeinf.STRMEM_MASK
 
 STRMEM_OFFSET = _ida_typeinf.STRMEM_OFFSET
 
 STRMEM_INDEX = _ida_typeinf.STRMEM_INDEX
 
 STRMEM_AUTO = _ida_typeinf.STRMEM_AUTO
 
 STRMEM_NAME = _ida_typeinf.STRMEM_NAME
 
 STRMEM_TYPE = _ida_typeinf.STRMEM_TYPE
 
 STRMEM_SIZE = _ida_typeinf.STRMEM_SIZE
 
 STRMEM_MINS = _ida_typeinf.STRMEM_MINS
 
 STRMEM_MAXS = _ida_typeinf.STRMEM_MAXS
 
 STRMEM_VFTABLE = _ida_typeinf.STRMEM_VFTABLE
 
 STRMEM_SKIP_EMPTY = _ida_typeinf.STRMEM_SKIP_EMPTY
 
 STRMEM_CASTABLE_TO = _ida_typeinf.STRMEM_CASTABLE_TO
 
 STRMEM_ANON = _ida_typeinf.STRMEM_ANON
 
 TCMP_EQUAL = _ida_typeinf.TCMP_EQUAL
 
 TCMP_IGNMODS = _ida_typeinf.TCMP_IGNMODS
 
 TCMP_AUTOCAST = _ida_typeinf.TCMP_AUTOCAST
 
 TCMP_MANCAST = _ida_typeinf.TCMP_MANCAST
 
 TCMP_CALL = _ida_typeinf.TCMP_CALL
 
 TCMP_DELPTR = _ida_typeinf.TCMP_DELPTR
 
 TCMP_DECL = _ida_typeinf.TCMP_DECL
 
 TCMP_ANYBASE = _ida_typeinf.TCMP_ANYBASE
 
 TCMP_SKIPTHIS = _ida_typeinf.TCMP_SKIPTHIS
 
 FAI_HIDDEN = _ida_typeinf.FAI_HIDDEN
 
 FAI_RETPTR = _ida_typeinf.FAI_RETPTR
 
 FAI_STRUCT = _ida_typeinf.FAI_STRUCT
 
 FAI_ARRAY = _ida_typeinf.FAI_ARRAY
 
 FAI_UNUSED = _ida_typeinf.FAI_UNUSED
 
 FTI_SPOILED = _ida_typeinf.FTI_SPOILED
 
 FTI_NORET = _ida_typeinf.FTI_NORET
 
 FTI_PURE = _ida_typeinf.FTI_PURE
 
 FTI_HIGH = _ida_typeinf.FTI_HIGH
 
 FTI_STATIC = _ida_typeinf.FTI_STATIC
 
 FTI_VIRTUAL = _ida_typeinf.FTI_VIRTUAL
 
 FTI_CALLTYPE = _ida_typeinf.FTI_CALLTYPE
 
 FTI_DEFCALL = _ida_typeinf.FTI_DEFCALL
 
 FTI_NEARCALL = _ida_typeinf.FTI_NEARCALL
 
 FTI_FARCALL = _ida_typeinf.FTI_FARCALL
 
 FTI_INTCALL = _ida_typeinf.FTI_INTCALL
 
 FTI_ARGLOCS = _ida_typeinf.FTI_ARGLOCS
 
 FTI_EXPLOCS = _ida_typeinf.FTI_EXPLOCS
 
 FTI_CONST = _ida_typeinf.FTI_CONST
 
 FTI_CTOR = _ida_typeinf.FTI_CTOR
 
 FTI_DTOR = _ida_typeinf.FTI_DTOR
 
 FTI_ALL = _ida_typeinf.FTI_ALL
 
 CC_CDECL_OK = _ida_typeinf.CC_CDECL_OK
 
 CC_ALLOW_ARGPERM = _ida_typeinf.CC_ALLOW_ARGPERM
 
 CC_ALLOW_REGHOLES = _ida_typeinf.CC_ALLOW_REGHOLES
 
 CC_HAS_ELLIPSIS = _ida_typeinf.CC_HAS_ELLIPSIS
 
 CC_GOLANG_OK = _ida_typeinf.CC_GOLANG_OK
 
 FMTFUNC_PRINTF = _ida_typeinf.FMTFUNC_PRINTF
 
 FMTFUNC_SCANF = _ida_typeinf.FMTFUNC_SCANF
 
 FMTFUNC_STRFTIME = _ida_typeinf.FMTFUNC_STRFTIME
 
 FMTFUNC_STRFMON = _ida_typeinf.FMTFUNC_STRFMON
 
 FRB_MASK = _ida_typeinf.FRB_MASK
 
 FRB_UNK = _ida_typeinf.FRB_UNK
 
 FRB_NUMB = _ida_typeinf.FRB_NUMB
 
 FRB_NUMO = _ida_typeinf.FRB_NUMO
 
 FRB_NUMH = _ida_typeinf.FRB_NUMH
 
 FRB_NUMD = _ida_typeinf.FRB_NUMD
 
 FRB_FLOAT = _ida_typeinf.FRB_FLOAT
 
 FRB_CHAR = _ida_typeinf.FRB_CHAR
 
 FRB_SEG = _ida_typeinf.FRB_SEG
 
 FRB_ENUM = _ida_typeinf.FRB_ENUM
 
 FRB_OFFSET = _ida_typeinf.FRB_OFFSET
 
 FRB_STRLIT = _ida_typeinf.FRB_STRLIT
 
 FRB_STROFF = _ida_typeinf.FRB_STROFF
 
 FRB_CUSTOM = _ida_typeinf.FRB_CUSTOM
 
 FRB_INVSIGN = _ida_typeinf.FRB_INVSIGN
 
 FRB_INVBITS = _ida_typeinf.FRB_INVBITS
 
 FRB_SIGNED = _ida_typeinf.FRB_SIGNED
 
 FRB_LZERO = _ida_typeinf.FRB_LZERO
 
 FRB_TABFORM = _ida_typeinf.FRB_TABFORM
 
 VTBL_SUFFIX = _ida_typeinf.VTBL_SUFFIX
 
 VTBL_MEMNAME = _ida_typeinf.VTBL_MEMNAME
 
 TPOS_LNNUM = _ida_typeinf.TPOS_LNNUM
 
 TPOS_REGCMT = _ida_typeinf.TPOS_REGCMT
 
 TVIS_TYPE = _ida_typeinf.TVIS_TYPE
 
 TVIS_NAME = _ida_typeinf.TVIS_NAME
 
 TVIS_CMT = _ida_typeinf.TVIS_CMT
 
 TVIS_RPTCMT = _ida_typeinf.TVIS_RPTCMT
 
 TVST_PRUNE = _ida_typeinf.TVST_PRUNE
 
 TVST_DEF = _ida_typeinf.TVST_DEF
 
 TVST_LEVEL = _ida_typeinf.TVST_LEVEL
 
 PIO_NOATTR_FAIL = _ida_typeinf.PIO_NOATTR_FAIL
 
 PIO_IGNORE_PTRS = _ida_typeinf.PIO_IGNORE_PTRS
 
 UTP_ENUM = _ida_typeinf.UTP_ENUM
 
 UTP_STRUCT = _ida_typeinf.UTP_STRUCT
 
 VALSTR_OPEN = _ida_typeinf.VALSTR_OPEN
 
 PDF_INCL_DEPS = _ida_typeinf.PDF_INCL_DEPS
 
 PDF_DEF_FWD = _ida_typeinf.PDF_DEF_FWD
 
 PDF_DEF_BASE = _ida_typeinf.PDF_DEF_BASE
 
 PDF_HEADER_CMT = _ida_typeinf.PDF_HEADER_CMT
 
 PT_FILE = _ida_typeinf.PT_FILE
 
 _real_cvar = cvar
 
 _notify_idati = ida_idaapi._make_one_time_warning_message("idati", "get_idati()")
 
 sc_auto = SC_AUTO
 
 sc_ext = SC_EXT
 
 sc_friend = SC_FRIEND
 
 sc_reg = SC_REG
 
 sc_stat = SC_STAT
 
 sc_type = SC_TYPE
 
 sc_unk = SC_UNK
 
 sc_virt = SC_VIRT
 
 TERR_SAVE = TERR_SAVE_ERROR
 
 TERR_WRONGNAME = TERR_BAD_NAME
 
 TERR_BADSYNC = TERR_BAD_SYNC
 
int BADORD = 0xFFFFFFFF
 
 enum_member_vec_t = edmvec_t
 
 enum_member_t = edm_t
 
 udt_member_t = udm_t
 
 find_udt_member
 
int IMPTYPE_VERBOSE = 0x0001
 
int IMPTYPE_OVERRIDE = 0x0002