udt_type_data_t Struct Reference
Inherits udtmembervec_t.
Public Member Functions | |
void | swap (udt_type_data_t &r) |
bool | is_unaligned () const |
bool | is_msstruct () const |
bool | is_cppobj () const |
bool | is_vftable () const |
void | set_vftable (bool on=true) |
bool | is_last_baseclass (size_t idx) |
ssize_t | find_member (udm_t *pattern_udm, int strmem_flags) const |
tinfo_t::find_udm More... | |
ssize_t | find_member (const char *name) const |
ssize_t | find_member (uint64 bit_offset) const |
ssize_t | get_best_fit_member (asize_t disp) const |
Get member that is most likely referenced by the specified offset. More... | |
Public Member Functions inherited from qvector< udm_t > | |
qvector (void) | |
Constructor. | |
qvector (const qvector< udm_t > &x) | |
Constructor - creates a new qvector identical to 'x'. | |
qvector (qvector< udm_t > &&x) noexcept | |
Move constructor. | |
~qvector (void) | |
Destructor. | |
void | push_back (const udm_t &x) |
Append a new element to the end the qvector. | |
void | push_back (udm_t &&x) |
Append a new element to the end the qvector with a move semantics. | |
udm_t & | push_back (void) |
Append a new empty element to the end of the qvector. More... | |
void | pop_back (void) |
Remove the last element in the qvector. | |
size_t | size (void) const |
Get the number of elements in the qvector. | |
bool | empty (void) const |
Does the qvector have 0 elements? | |
const udm_t & | operator[] (size_t _idx) const |
Allows use of typical c-style array indexing for qvectors. | |
udm_t & | operator[] (size_t _idx) |
Allows use of typical c-style array indexing for qvectors. | |
const udm_t & | at (size_t _idx) const |
Get element at index '_idx'. | |
udm_t & | at (size_t _idx) |
Get element at index '_idx'. | |
const udm_t & | front (void) const |
Get the first element in the qvector. | |
udm_t & | front (void) |
Get the first element in the qvector. | |
const udm_t & | back (void) const |
Get the last element in the qvector. | |
udm_t & | back (void) |
Get the last element in the qvector. | |
void | qclear (void) |
Destroy all elements but do not free memory. | |
void | clear (void) |
Destroy all elements and free memory. | |
qvector< udm_t > & | operator= (const qvector< udm_t > &x) |
Allow assignment of one qvector to another using '='. | |
qvector< udm_t > & | operator= (qvector< udm_t > &&x) noexcept |
Move assignment operator. | |
void | resize (size_t _newsize, const udm_t &x) |
Resize to the given size. More... | |
void | resize (size_t _newsize) |
Same as resize(size_t, const T &), but extra space is filled with empty elements. | |
void | resize_noinit (size_t _newsize) |
void | grow (const udm_t &x=udm_t()) |
Add an element to the end of the qvector, which will be a new T() if x is not given. | |
size_t | capacity (void) const |
Get the number of elements that this qvector can contain - not the same as the number of elements currently in the qvector (size()) | |
void | reserve (size_t cnt) |
Increase the capacity of the qvector. More... | |
void | truncate (void) |
Shrink the capacity down to the current number of elements. | |
void | swap (qvector< udm_t > &r) noexcept |
Replace all attributes of this qvector with that of 'r', and vice versa. More... | |
udm_t * | extract (void) |
Empty the qvector and return a pointer to it's contents. More... | |
void | inject (udm_t *s, size_t len) |
Populate the qvector with dynamic memory. More... | |
bool | operator== (const qvector< udm_t > &r) const |
Allow ability to test the equality of two qvectors using '=='. | |
bool | operator!= (const qvector< udm_t > &r) const |
Allow ability to test equality of two qvectors using '!='. | |
iterator | begin (void) |
Get an iterator that points to the first element in the qvector. | |
const_iterator | begin (void) const |
Get a const iterator that points to the first element in the qvector. | |
iterator | end (void) |
Get an iterator that points to the end of the qvector (NOT the last element) | |
const_iterator | end (void) const |
Get a const iterator that points to the end of the qvector (NOT the last element) | |
iterator | insert (iterator it, const udm_t &x) |
Insert an element into the qvector at a specified position. More... | |
iterator | insert (iterator it, udm_t &&x) |
Insert an element into the qvector with a move semantics. | |
iterator | insert (iterator it, it2 first, it2 last) |
Insert a several elements to the qvector at a specified position. More... | |
iterator | erase (iterator it) |
Remove an element from the qvector. More... | |
iterator | erase (iterator first, iterator last) |
Remove a subset of the qvector. More... | |
iterator | find (const udm_t &x) |
Find an element in the qvector. More... | |
const_iterator | find (const udm_t &x) const |
Find an element in the qvector. More... | |
ssize_t | index (const udm_t &x) const |
Find index of the specified value or return -1. | |
void | add (const udm_t &x) |
Add an element to the end of the qvector. | |
void | add (udm_t &&x) |
bool | has (const udm_t &x) const |
Does the qvector contain x? | |
bool | add_unique (const udm_t &x) |
Add an element to the end of the qvector - only if it isn't already present. More... | |
bool | del (const udm_t &x) |
Find an element and remove it. More... | |
const char * | dstr (void) const |
Public Attributes | |
size_t | total_size = 0 |
total structure size in bytes | |
size_t | unpadded_size = 0 |
unpadded structure size in bytes | |
uint32 | effalign = 0 |
effective structure alignment (in bytes) | |
uint32 | taudt_bits = 0 |
TA... and TAUDT... bits. | |
uchar | version = VERSION |
version of udt_type_data_t | |
uchar | sda = 0 |
declared structure alignment (shift amount+1). 0 - unspecified | |
uchar | pack = 0 |
#pragma pack() alignment (shift amount) | |
bool | is_union = false |
is union or struct? | |
Static Public Attributes | |
static constexpr int | VERSION = 1 |
Additional Inherited Members | |
Public Types inherited from qvector< udm_t > | |
typedef udm_t | value_type |
the type of objects contained in this qvector | |
typedef udm_t * | iterator |
typedef const udm_t * | const_iterator |
Member Function Documentation
◆ find_member()
◆ get_best_fit_member()
|
inline |
Get member that is most likely referenced by the specified offset.
Useful for offsets > sizeof(struct).
The documentation for this struct was generated from the following file:
Generated by 1.9.3