|
| void | consume_cexpr (cexpr_t *e) |
| | DECLARE_COMPARISONS (carg_t) |
| bool | cpadone () const |
| | Pointer arithmetic correction done for this expression?
|
| bool | is_odd_lvalue () const |
| bool | is_fpop () const |
| bool | is_cstr () const |
| bool | is_type_partial () const |
| bool | is_undef_val () const |
| bool | is_jumpout () const |
| bool | is_vftable () const |
| void | set_cpadone () |
| void | set_vftable () |
| void | set_type_partial (bool val=true) |
| | cexpr_t () |
| | cexpr_t (ctype_t cexpr_op, cexpr_t *_x, cexpr_t *_y=nullptr, cexpr_t *_z=nullptr) |
| | cexpr_t (mba_t *mba, const lvar_t &v) |
| | cexpr_t (const cexpr_t &r) |
| void | swap (cexpr_t &r) |
| cexpr_t & | operator= (const cexpr_t &r) |
| cexpr_t &hexapi | assign (const cexpr_t &r) |
| | DECLARE_COMPARISONS (cexpr_t) |
| | ~cexpr_t () |
| void hexapi | replace_by (cexpr_t *r) |
| | Replace the expression.
|
| void hexapi | cleanup () |
| | Cleanup the expression.
|
| void hexapi | put_number (cfunc_t *func, uint64 value, int nbytes, type_sign_t sign=no_sign) |
| | Assign a number to the expression.
|
| void hexapi | print1 (qstring *vout, const cfunc_t *func) const |
| | Print expression into one line.
|
| void hexapi | calc_type (bool recursive) |
| | Calculate the type of the expression.
|
| bool hexapi | equal_effect (const cexpr_t &r) const |
| | Compare two expressions.
|
| bool hexapi | is_child_of (const citem_t *parent) const |
| | Verify if the specified item is our parent.
|
| bool hexapi | contains_operator (ctype_t needed_op, int times=1) const |
| | Check if the expression contains the specified operator.
|
| bool | contains_comma (int times=1) const |
| | Does the expression contain a comma operator?
|
| bool | contains_insn (int times=1) const |
| | Does the expression contain an embedded statement operator?
|
| bool | contains_insn_or_label () const |
| | Does the expression contain an embedded statement operator or a label?
|
| bool | contains_comma_or_insn_or_label (int maxcommas=1) const |
| | Does the expression contain a comma operator or an embedded statement operator or a label?
|
| bool | is_nice_expr () const |
| | Is nice expression?
|
| bool | is_nice_cond () const |
| | Is nice condition?
|
| bool | is_call_object_of (const citem_t *parent) const |
| | Is call object?
|
| bool | is_call_arg_of (const citem_t *parent) const |
| | Is call argument?
|
| type_sign_t | get_type_sign () const |
| | Get expression sign.
|
| bool | is_type_unsigned () const |
| | Is expression unsigned?
|
| bool | is_type_signed () const |
| | Is expression signed?
|
| bit_bound_t hexapi | get_high_nbit_bound () const |
| | Get max number of bits that can really be used by the expression.
|
| int hexapi | get_low_nbit_bound () const |
| | Get min number of bits that are certainly required to represent the expression.
|
| bool hexapi | requires_lvalue (const cexpr_t *child) const |
| | Check if the expression requires an lvalue.
|
| bool hexapi | has_side_effects () const |
| | Check if the expression has side effects.
|
| bool | like_boolean () const |
| | Does the expression look like a boolean expression?
|
| bool | is_aliasable () const |
| | Check if the expression if aliasable.
|
| uint64 | numval () const |
| | Get numeric value of the expression.
|
| bool | is_const_value (uint64 _v) const |
| | Check if the expression is a number with the specified value.
|
| bool | is_negative_const () const |
| | Check if the expression is a negative number.
|
| bool | is_non_negative_const () const |
| | Check if the expression is a non-negative number.
|
| bool | is_non_zero_const () const |
| | Check if the expression is a non-zero number.
|
| bool | is_zero_const () const |
| | Check if the expression is a zero.
|
| bool | is_value_used (const citem_t *parent) const |
| | Does the PARENT need the expression value.
|
| bool | get_const_value (uint64 *out) const |
| | Get expression value.
|
| bool hexapi | maybe_ptr () const |
| | May the expression be a pointer?
|
| cexpr_t * | get_ptr_or_array () |
| | Find pointer or array child.
|
| const cexpr_t * | find_op (ctype_t _op) const |
| | Find the child with the specified operator.
|
| cexpr_t * | find_op (ctype_t _op) |
| const cexpr_t * | find_num_op () const |
| | Find the operand with a numeric value.
|
| cexpr_t * | find_num_op () |
| const cexpr_t * | find_ptr_or_array (bool remove_eqsize_casts) const |
| | Find the pointer operand.
|
| const cexpr_t * | theother (const cexpr_t *what) const |
| | Get the other operand.
|
| cexpr_t * | theother (const cexpr_t *what) |
| bool | get_1num_op (cexpr_t **o1, cexpr_t **o2) |
| | Get pointers to operands.
|
| bool | get_1num_op (const cexpr_t **o1, const cexpr_t **o2) const |
| const char *hexapi | dstr () const |
| | citem_t (ctype_t o=cot_empty) |
| void | swap (citem_t &r) |
| | Swap two citem_t.
|
| bool | is_expr () const |
| | Is an expression?
|
| bool hexapi | contains_expr (const cexpr_t *e) const |
| | Does the item contain an expression?
|
| bool hexapi | contains_label () const |
| | Does the item contain a label?
|
| const citem_t *hexapi | find_parent_of (const citem_t *item) const |
| | Find parent of the specified item.
|
| citem_t * | find_parent_of (const citem_t *item) |
| citem_t *hexapi | find_closest_addr (ea_t _ea) |
| void | print1 (qstring *vout, const cfunc_t *func) const |
| | Print item into one line.
|
| | ~citem_t () |