Public Member Functions
typestring Struct Reference

Type string. More...

List of all members.

Public Member Functions

const type_t * u_str (void) const
 typestring (const type_t *str)
 typestring (const type_t *str, int n)
 typestring (const qtype &str)
 typestring (const qstring &str)
const char * dstr (void) const
const char * dstr (const p_list *fields, const char *name=NULL) const
const char * dstr (const qtype &fields, const char *name=NULL) const
size_t print (char *buf, size_t bufsize) const
qstring multiprint (const p_list *fields, const char *name=NULL, int prflags=0) const
int size (void) const
int noarray_size (void) const
type_sign_t get_sign (void) const
bool change_sign (type_sign_t sign)
cm_t get_cc (void) const
bool is_user_cc (void) const
bool is_vararg (void) const
typestring get_nth_arg (int n) const
int compare (const typestring &r) const
bool common_type (const typestring &x)
bool is_ptr_or_array (void) const
bool remove_ptr_or_array (void)
bool is_paf (void) const
bool is_funcptr (void) const
bool is_ptr (void) const
bool is_enum (void) const
bool is_func (void) const
bool is_void (void) const
bool is_array (void) const
bool is_float (void) const
bool is_union (void) const
bool is_struct (void) const
bool is_struni (void) const
bool is_double (void) const
bool is_ldouble (void) const
bool is_floating (void) const
bool is_const (void) const
bool is_correct (void) const
const type_t * resolve (void) const
const type_t * resolve_func_type (const p_list **fields=NULL) const
bool is_scalar (void) const
bool is_small_struni (void) const
bool is_like_scalar (void) const
bool is_pvoid (void) const
bool is_partial_ptr (void) const
bool is_well_defined (void) const
bool requires_cot_ref (void) const
int partial_type_num (void) const

Detailed Description

Type string.

All types in the decompiler are kept in instances of this class. The contents of the type string are described in typeinf.hpp
In fact, type information consists of two strings: the type string itself and another string with the field names. The first string (pure type string) keeps information about the type without user-defined names. The second string keeps user-defined names. The second string is required for structures and unions (to keep the field names), enumerations (to keep the constant names), and functions (to keep the argument names). In all other cases the field string can be empty or missing.

Definition at line 281 of file hexrays.hpp.