|
IDA C++ SDK 9.2
|
Class to hold idc values. More...
#include <expr.hpp>
Public Member Functions | |
| idc_value_t (sval_t n=0) | |
| Create a #VT_LONG value. | |
| idc_value_t (const idc_value_t &r) | |
| Create a $VT_LONG with an existing idc value. | |
| idc_value_t (const char *_str) | |
| Create a #VT_STR value. | |
| idc_value_t (const qstring &_str) | |
| Create a #VT_STR value. | |
| ~idc_value_t (void) | |
| Destructor. | |
| void | clear (void) |
| See free_idcv() | |
| idc_value_t & | operator= (const idc_value_t &r) |
| Assign this value to an existing value. | |
| qstring & | qstr (void) |
| #VT_STR | |
| const qstring & | qstr (void) const |
| #VT_STR | |
| const char * | c_str (void) const |
| #VT_STR | |
| const uchar * | u_str (void) const |
| #VT_STR | |
| void | swap (idc_value_t &v) |
| Set this = r and v = this. | |
| bool | is_zero (void) const |
| Does value represent the integer 0? | |
| bool | is_integral (void) |
| Does value represent a whole number? | |
| bool | is_convertible (void) const |
| Convertible types are #VT_LONG, #VT_FLOAT, #VT_INT64, and #VT_STR. | |
Warning | |
The following functions do not free the existing data! When the contents are unknown, use the functions without a leading underscore. | |
| void | _create_empty_string (void) |
| void | _set_string (const qstring &_str) |
| void | _set_string (const char *_str, size_t len) |
| void | _set_string (const char *_str) |
| void | _set_long (sval_t v) |
| void | _set_pvoid (void *p) |
| void | _set_int64 (int64 v) |
| void | _set_float (const fpvalue_t &f) |
Setters | |
These functions ensure the previous value is cleared | |
| void | create_empty_string (void) |
| void | set_string (const char *_str, size_t len) |
| void | set_string (const char *_str) |
| void | set_string (const qstring &_str) |
| void | set_long (sval_t v) |
| void | set_pvoid (void *p) |
| void | set_int64 (int64 v) |
| void | set_float (const fpvalue_t &f) |
Public Attributes | |
| char | vtype = VT_LONG |
| IDC value types | |
| union { | |
| sval_t num | |
| #VT_LONG More... | |
| fpvalue_t e | |
| #VT_FLOAT More... | |
| idc_object_t * obj | |
| int funcidx | |
| #VT_FUNC More... | |
| void * pvoid | |
| #VT_PVOID More... | |
| int64 i64 | |
| #VT_INT64 More... | |
| uchar reserve [sizeof(qstring)] | |
| VT_STR. More... | |
| }; | |
Class to hold idc values.
|
inline |
Create a #VT_LONG value.
|
inline |
Create a $VT_LONG with an existing idc value.
|
inline |
Create a #VT_STR value.
|
inline |
Create a #VT_STR value.
|
inline |
Destructor.
See free_idcv()
|
inline |
Assign this value to an existing value.
|
inline |
#VT_STR
|
inline |
Set this = r and v = this.
Convertible types are #VT_LONG, #VT_FLOAT, #VT_INT64, and #VT_STR.
|
inline |
|
inline |
|
inline |
|
inline |
| char idc_value_t::vtype = VT_LONG |
| sval_t idc_value_t::num |
#VT_LONG
| fpvalue_t idc_value_t::e |
#VT_FLOAT
| idc_object_t* idc_value_t::obj |
| int idc_value_t::funcidx |
#VT_FUNC
| void* idc_value_t::pvoid |
#VT_PVOID
| int64 idc_value_t::i64 |
#VT_INT64
| union { ... } idc_value_t |