IDA C++ SDK 9.2
Loading...
Searching...
No Matches
cfunc_parentee_t Struct Reference

Class to traverse the whole function. More...

#include <hexrays.hpp>

Inheritance diagram for cfunc_parentee_t:
ctree_parentee_t ctree_visitor_t

Public Member Functions

 cfunc_parentee_t (cfunc_t *f, bool post=false)
bool hexapi calc_rvalue_type (tinfo_t *target, const cexpr_t *e)
 Calculate rvalue type.
Public Member Functions inherited from ctree_parentee_t
 ctree_parentee_t (bool post=false)
bool hexapi recalc_parent_types ()
 Recalculate type of parent nodes.
Public Member Functions inherited from ctree_visitor_t
bool maintain_parents () const
 Should the parent information by maintained?
bool must_prune () const
 Should the traversal skip the children of the current item?
bool must_restart () const
 Should the traversal restart?
bool is_postorder () const
 Should the leave...() functions be called?
bool only_insns () const
 Should all expressions be automatically pruned?
void prune_now ()
 Prune children.
void clr_prune ()
 Do not prune children. This is an internal function, no need to call it.
void set_restart ()
 Restart the travesal. Meaningful only in apply_to_exprs()
void clr_restart ()
 Do not restart. This is an internal function, no need to call it.
 ctree_visitor_t (int _flags)
 Constructor.
virtual ~ctree_visitor_t ()
int hexapi apply_to (citem_t *item, citem_t *parent)
 Traverse ctree.
int hexapi apply_to_exprs (citem_t *item, citem_t *parent)
 Traverse only expressions.
citem_tparent_item ()
 Get parent of the current item as an item (statement or expression)
cexpr_tparent_expr ()
 Get parent of the current item as an expression.
cinsn_tparent_insn ()
 Get parent of the current item as a statement.
virtual int idaapi visit_insn (cinsn_t *)
 Visit a statement.
virtual int idaapi visit_expr (cexpr_t *)
 Visit an expression.
virtual int idaapi leave_insn (cinsn_t *)
 Visit a statement after having visited its children.
virtual int idaapi leave_expr (cexpr_t *)
 Visit an expression after having visited its children.

Public Attributes

cfunc_tfunc
 Pointer to current function.
Public Attributes inherited from ctree_visitor_t
int cv_flags
 Ctree visitor property bits
parents_t parents
 Vector of parents of the current item.
cblock_posvec_t bposvec
 Vector of block positions.

Detailed Description

Class to traverse the whole function.

Constructor & Destructor Documentation

◆ cfunc_parentee_t()

cfunc_parentee_t::cfunc_parentee_t ( cfunc_t * f,
bool post = false )
inline

Member Function Documentation

◆ calc_rvalue_type()

bool cfunc_parentee_t::calc_rvalue_type ( tinfo_t * target,
const cexpr_t * e )
inline

Calculate rvalue type.

This function tries to determine the type of the specified item based on its context. For example, if the current expression is the right side of an assignment operator, the type of its left side will be returned. This function can be used to determine the 'best' type of the specified expression.

Parameters
[in]eexpression to determine the desired type
[out]target'best' type of the expression will be returned here
Returns
false if failed

Member Data Documentation

◆ func

cfunc_t* cfunc_parentee_t::func

Pointer to current function.


The documentation for this struct was generated from the following file: