IDA SDK
Public Member Functions | List of all members
func_item_iterator_t Class Reference

Detailed Description

Class to enumerate all function instructions and data sorted by addresses.

The function entry chunk items are enumerated first regardless of their addresses

Sample code:

for ( bool ok=fii.set(pfn, ea); ok; ok=fii.next_addr() )
ea_t ea = fii.current();
....

If 'ea' is not specified in the call to set(), then the enumeration starts at the function entry point. If 'pfn' is specified as NULL then the set() function will fail, but it is still possible to use the class. In this case the iteration will be limited by the segment boundaries. It is also possible to enumerate addresses in an arbitrary range using set_range().

Public Member Functions

 func_item_iterator_t (func_t *pfn, ea_t _ea=BADADDR)
 
bool set (func_t *pfn, ea_t _ea=BADADDR)
 Set a function range. if pfn == NULL then a segment range will be set.
 
bool set_range (ea_t ea1, ea_t ea2)
 Set an arbitrary range.
 
bool first (void)
 
bool last (void)
 
ea_t current (void) const
 
const range_t & chunk (void) const
 
bool next (testf_t *func, void *ud)
 
bool prev (testf_t *func, void *ud)
 
bool next_addr (void)
 
bool next_head (void)
 
bool next_code (void)
 
bool next_data (void)
 
bool next_not_tail (void)
 
bool prev_addr (void)
 
bool prev_head (void)
 
bool prev_code (void)
 
bool prev_data (void)
 
bool prev_not_tail (void)
 
bool decode_prev_insn (insn_t *out)
 
bool decode_preceding_insn (eavec_t *visited, bool *p_farref, insn_t *out)
 

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