IDA C++ SDK 9.2
|
An object to represent struct or union members. More...
#include <typeinf.hpp>
Public Member Functions | |
udm_t ()=default | |
udm_t (const char *_name, const tinfo_t &_type, uint64 _offset=0) | |
Create a structure/union member, with the specified name and arbitrary type. | |
udm_t (const char *_name, const type_t _type, uint64 _offset=0) | |
Create a structure/union member, with the specified name and simple type. | |
udm_t (const char *_name, const char *_type, uint64 _offset=0) | |
Create a structure/union member, with the specified name and type. | |
bool | empty () const |
bool | is_bitfield () const |
bool | is_zero_bitfield () const |
bool | is_unaligned () const |
bool | is_baseclass () const |
bool | is_virtbase () const |
bool | is_vftable () const |
bool | is_method () const |
bool | is_gap () const |
bool | is_regcmt () const |
bool | is_retaddr () const |
bool | is_savregs () const |
bool | is_special_member () const |
bool | is_by_til () const |
void | set_unaligned (bool on=true) |
void | set_baseclass (bool on=true) |
void | set_virtbase (bool on=true) |
void | set_vftable (bool on=true) |
void | set_method (bool on=true) |
void | set_regcmt (bool on=true) |
void | set_retaddr (bool on=true) |
void | set_savregs (bool on=true) |
void | set_by_til (bool on=true) |
void | clr_unaligned () |
void | clr_baseclass () |
void | clr_virtbase () |
void | clr_vftable () |
void | clr_method () |
uint64 | begin () const |
uint64 | end () const |
bool | operator< (const udm_t &r) const |
bool | operator== (const udm_t &r) const |
bool | compare_with (const udm_t &r, int tcflags) const |
bool | operator!= (const udm_t &r) const |
DEFINE_MEMORY_ALLOCATION_FUNCS () void swap(udm_t &r) | |
bool | is_anonymous_udm () const |
void | set_value_repr (const value_repr_t &r) |
bool | can_be_dtor () const |
bool | can_rename () const |
Public Attributes | |
uint64 | offset = 0 |
member offset in bits | |
uint64 | size = 0 |
size in bits | |
qstring | name |
member name | |
qstring | cmt |
member comment | |
tinfo_t | type |
member type | |
value_repr_t | repr |
radix, refinfo, strpath, custom_id, strtype | |
int | effalign = 0 |
effective field alignment (in bytes) | |
uint32 | tafld_bits = 0 |
TAH bits. | |
uchar | fda = 0 |
field alignment (shift amount) |
An object to represent struct or union members.
|
default |
Create a structure/union member, with the specified name and arbitrary type.
The 'size' will be set automatically.
_name | Member name. Must not be empty. | |
_type | Member type. Must not be empty. Can be any valid udt member type, like a pointer, array, etc. | |
[in] | _offset | Member offset in bits. It is the caller's responsibility to specify correct offsets. |
Create a structure/union member, with the specified name and simple type.
The 'type' will be created from type_t, and the 'size' will be set automatically.
_name | Member name. Must not be empty. | |
_type | Member type. Must not be empty. Can be only a simple type (integral/floating/bool). | |
[in] | _offset | Member offset in bits. It is the caller's responsibility to specify correct offsets. |
|
inline |
Create a structure/union member, with the specified name and type.
The 'type' object will be created by parsing the '_type' type declaration, and the 'size' will be set automatically.
_name | Member name. Must not be empty. | |
_type | Member type. Must not a valid C type declaration. | |
[in] | _offset | Member offset in bits. It is the caller's responsibility to specify correct offsets. |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
uint64 udm_t::offset = 0 |
member offset in bits
uint64 udm_t::size = 0 |
size in bits
qstring udm_t::name |
member name
qstring udm_t::cmt |
member comment
tinfo_t udm_t::type |
member type
value_repr_t udm_t::repr |
radix, refinfo, strpath, custom_id, strtype
int udm_t::effalign = 0 |
effective field alignment (in bytes)
uint32 udm_t::tafld_bits = 0 |
TAH bits.
uchar udm_t::fda = 0 |
field alignment (shift amount)