IDAPython 9.0
|
Proxy of C++ cfunc_t class.
Public Member Functions | |
__init__ (self, *args, **kwargs) | |
"void" | release (self) |
release(self) | |
"void" | build_c_tree (self) |
build_c_tree(self) Generate the function body. | |
"void" | verify (self, "allow_unused_labels_t" aul, "bool" even_without_debugger) |
verify(self, aul, even_without_debugger) Verify the ctree. | |
"void" | print_dcl (self) |
print_dcl(self) Print function prototype. | |
"void" | print_func (self, "vc_printer_t" vp) |
print_func(self, vp) Print function text. | |
"bool" | get_func_type (self, "tinfo_t" type) |
get_func_type(self, type) -> bool Get the function type. | |
"lvars_t *" | get_lvars (self) |
get_lvars(self) -> lvars_t Get vector of local variables. | |
"sval_t" | get_stkoff_delta (self) |
get_stkoff_delta(self) -> sval_t Get stack offset delta. | |
"citem_t *" | find_label (self, "int" label) |
find_label(self, label) -> citem_t Find the label. | |
"void" | remove_unused_labels (self) |
remove_unused_labels(self) Remove unused labels. | |
"char const *" | get_user_cmt (self, "treeloc_t" loc, "cmt_retrieval_type_t" rt) |
get_user_cmt(self, loc, rt) -> char const * Retrieve a user defined comment. | |
"void" | set_user_cmt (self, "treeloc_t" loc, "char const *" cmt) |
set_user_cmt(self, loc, cmt) Set a user defined comment. | |
"int32" | get_user_iflags (self, "citem_locator_t" loc) |
get_user_iflags(self, loc) -> int32 Retrieve citem iflags. | |
"void" | set_user_iflags (self, "citem_locator_t" loc, "int32" iflags) |
set_user_iflags(self, loc, iflags) Set citem iflags. | |
"bool" | has_orphan_cmts (self) |
has_orphan_cmts(self) -> bool Check if there are orphan comments. | |
"int" | del_orphan_cmts (self) |
del_orphan_cmts(self) -> int Delete all orphan comments. | |
"bool" | get_user_union_selection (self, "ea_t" ea, "intvec_t" path) |
get_user_union_selection(self, ea, path) -> bool Retrieve a user defined union field selection. | |
"void" | set_user_union_selection (self, "ea_t" ea, "intvec_t" path) |
set_user_union_selection(self, ea, path) Set a union field selection. | |
"void" | save_user_labels (self) |
save_user_labels(self) Save user-defined labels into the database. | |
"void" | save_user_cmts (self) |
save_user_cmts(self) Save user-defined comments into the database. | |
"void" | save_user_numforms (self) |
save_user_numforms(self) Save user-defined number formats into the database. | |
"void" | save_user_iflags (self) |
save_user_iflags(self) Save user-defined iflags into the database. | |
"void" | save_user_unions (self) |
save_user_unions(self) Save user-defined union field selections into the database. | |
"bool" | get_line_item (self, "char const *" line, "int" x, "bool" is_ctree_line, "ctree_item_t" phead, "ctree_item_t" pitem, "ctree_item_t" ptail) |
get_line_item(self, line, x, is_ctree_line, phead, pitem, ptail) -> bool Get ctree item for the specified cursor position. | |
"hexwarns_t &" | get_warnings (self) |
get_warnings(self) -> hexwarns_t Get information about decompilation warnings. | |
"eamap_t &" | get_eamap (self) |
get_eamap(self) -> eamap_t Get pointer to ea->insn map. | |
"boundaries_t &" | get_boundaries (self) |
get_boundaries(self) -> boundaries_t Get pointer to map of instruction boundaries. | |
"strvec_t const &" | get_pseudocode (self) |
get_pseudocode(self) -> strvec_t Get pointer to decompilation output: the pseudocode. | |
"void" | refresh_func_ctext (self) |
refresh_func_ctext(self) Refresh ctext after a ctree modification. | |
"bool" | gather_derefs (self, "ctree_item_t" ci, "udt_type_data_t" udm=None) |
gather_derefs(self, ci, udm=None) -> bool | |
"bool" | locked (self) |
locked(self) -> bool | |
"PyObject *" | find_item_coords (self, *args) |
find_item_coords(self, item, px, py) -> bool | |
"qstring" | __str__ (self) |
str(self) -> qstring | |
Static Public Attributes | |
str | entry_ea = property(_ida_hexrays.cfunc_t_entry_ea_get, _ida_hexrays.cfunc_t_entry_ea_set, doc=) |
str | mba = property(_ida_hexrays.cfunc_t_mba_get, _ida_hexrays.cfunc_t_mba_set, doc=) |
str | body = property(_ida_hexrays.cfunc_t_body_get, _ida_hexrays.cfunc_t_body_set, doc=) |
str | argidx = property(_ida_hexrays.cfunc_t_argidx_get, doc=) |
str | maturity = property(_ida_hexrays.cfunc_t_maturity_get, _ida_hexrays.cfunc_t_maturity_set, doc=) |
str | user_labels = property(_ida_hexrays.cfunc_t_user_labels_get, _ida_hexrays.cfunc_t_user_labels_set, doc=) |
str | user_cmts = property(_ida_hexrays.cfunc_t_user_cmts_get, _ida_hexrays.cfunc_t_user_cmts_set, doc=) |
str | numforms = property(_ida_hexrays.cfunc_t_numforms_get, _ida_hexrays.cfunc_t_numforms_set, doc=) |
str | user_iflags = property(_ida_hexrays.cfunc_t_user_iflags_get, _ida_hexrays.cfunc_t_user_iflags_set, doc=) |
str | user_unions = property(_ida_hexrays.cfunc_t_user_unions_get, _ida_hexrays.cfunc_t_user_unions_set, doc=) |
str | refcnt = property(_ida_hexrays.cfunc_t_refcnt_get, _ida_hexrays.cfunc_t_refcnt_set, doc=) |
str | statebits = property(_ida_hexrays.cfunc_t_statebits_get, _ida_hexrays.cfunc_t_statebits_set, doc=) |
str | hdrlines = property(_ida_hexrays.cfunc_t_hdrlines_get, _ida_hexrays.cfunc_t_hdrlines_set, doc=) |
str | treeitems = property(_ida_hexrays.cfunc_t_treeitems_get, _ida_hexrays.cfunc_t_treeitems_set, doc=) |
Properties | |
thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") | |
__init__ | ( | self, | |
* | args, | ||
** | kwargs ) |
"qstring" __str__ | ( | self | ) |
"void" build_c_tree | ( | self | ) |
This function (re)generates the function body from the underlying microcode.
"int" del_orphan_cmts | ( | self | ) |
The save_user_cmts() function must be called after this call.
"PyObject *" find_item_coords | ( | self, | |
* | args ) |
"citem_t *" find_label | ( | self, | |
"int" | label ) |
label | (C++: int) |
"bool" gather_derefs | ( | self, | |
"ctree_item_t" | ci, | ||
"udt_type_data_t" | udm = None ) |
ci | ctree_item_t const & |
udm | udt_type_data_t * |
"boundaries_t &" get_boundaries | ( | self | ) |
This function initializes the boundary map if not done yet.
"eamap_t &" get_eamap | ( | self | ) |
This function initializes eamap if not done yet.
"bool" get_func_type | ( | self, | |
"tinfo_t" | type ) |
type | (C++: tinfo_t *) variable where the function type is returned |
"bool" get_line_item | ( | self, | |
"char const *" | line, | ||
"int" | x, | ||
"bool" | is_ctree_line, | ||
"ctree_item_t" | phead, | ||
"ctree_item_t" | pitem, | ||
"ctree_item_t" | ptail ) |
line | (C++: const char *) line of decompilation text (element of sv) |
x | (C++: int) x cursor coordinate in the line |
is_ctree_line | (C++: bool) does the line belong to statement area? (if not, it is assumed to belong to the declaration area) |
phead | (C++: ctree_item_t *) ptr to the first item on the line (used to attach block comments). May be nullptr |
pitem | (C++: ctree_item_t *) ptr to the current item. May be nullptr |
ptail | (C++: ctree_item_t *) ptr to the last item on the line (used to attach indented comments). May be nullptr |
"lvars_t *" get_lvars | ( | self | ) |
"strvec_t const &" get_pseudocode | ( | self | ) |
This function generates pseudocode if not done yet.
"sval_t" get_stkoff_delta | ( | self | ) |
The local variable stack offsets retrieved by v.location.stkoff() should be adjusted before being used as stack frame offsets in IDA.
"char const *" get_user_cmt | ( | self, | |
"treeloc_t" | loc, | ||
"cmt_retrieval_type_t" | rt ) |
loc | (C++: const treeloc_t &) ctree location |
rt | (C++: cmt_retrieval_type_t) should already retrieved comments retrieved again? |
"int32" get_user_iflags | ( | self, | |
"citem_locator_t" | loc ) |
loc | (C++: const citem_locator_t &) citem locator |
"bool" get_user_union_selection | ( | self, | |
"ea_t" | ea, | ||
"intvec_t" | path ) |
ea | (C++: ea_t) address |
path | (C++: intvec_t *) out: path describing the union selection. |
"hexwarns_t &" get_warnings | ( | self | ) |
"bool" has_orphan_cmts | ( | self | ) |
"bool" locked | ( | self | ) |
"void" print_dcl | ( | self | ) |
"void" print_func | ( | self, | |
"vc_printer_t" | vp ) |
vp | (C++: vc_printer_t &) printer helper class to receive the generated text. |
"void" refresh_func_ctext | ( | self | ) |
This function informs the decompiler that ctree (body) have been modified and ctext (sv) does not correspond to it anymore. It also refreshes the pseudocode windows if there is any.
"void" release | ( | self | ) |
"void" remove_unused_labels | ( | self | ) |
This function checks what labels are really used by the function and removes the unused ones. You must call it after deleting a goto statement.
"void" save_user_cmts | ( | self | ) |
"void" save_user_iflags | ( | self | ) |
"void" save_user_labels | ( | self | ) |
"void" save_user_numforms | ( | self | ) |
"void" save_user_unions | ( | self | ) |
"void" set_user_cmt | ( | self, | |
"treeloc_t" | loc, | ||
"char const *" | cmt ) |
This function stores the specified comment in the cfunc_t structure. The save_user_cmts() function must be called after it.
loc | (C++: const treeloc_t &) ctree location |
cmt | (C++: const char *) new comment. if empty or nullptr, then an existing comment is deleted. |
"void" set_user_iflags | ( | self, | |
"citem_locator_t" | loc, | ||
"int32" | iflags ) |
loc | (C++: const citem_locator_t &) citem locator |
iflags | (C++: int32) new iflags |
"void" set_user_union_selection | ( | self, | |
"ea_t" | ea, | ||
"intvec_t" | path ) |
The save_user_unions() function must be called after calling this function.
ea | (C++: ea_t) address |
path | (C++: const intvec_t &) in: path describing the union selection. |
"void" verify | ( | self, | |
"allow_unused_labels_t" | aul, | ||
"bool" | even_without_debugger ) |
This function verifies the ctree. If the ctree is malformed, an internal error is generated. Use it to verify the ctree after your modifications.
aul | (C++: allow_unused_labels_t) Are unused labels acceptable? |
even_without_debugger | (C++: bool) if false and there is no debugger, the verification will be skipped |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |