IDAPython 8.4
Loading...
Searching...
No Matches
outctx_t Class Reference

Proxy of C++ outctx_t class.

Inheritance diagram for outctx_t:
outctx_base_t

Public Member Functions

 __init__ (self, *args, **kwargs)
 
"void" setup_outctx (self, *args)
 setup_outctx(self, prefix, flags) Initialization; normally used only by the kernel.
 
"int" term_outctx (self, *args)
 term_outctx(self, prefix=None) -> int Finalize the output context.
 
"ssize_t" retrieve_cmt (self, *args)
 retrieve_cmt(self) -> ssize_t
 
"ssize_t" retrieve_name (self, *args)
 retrieve_name(self, arg2, arg3) -> ssize_t
 
"bool" gen_xref_lines (self, *args)
 gen_xref_lines(self) -> bool
 
"void" out_btoa (self, *args)
 out_btoa(self, Word, radix=0) Output a number with the specified base (binary, octal, decimal, hex) The number is output without color codes.
 
"void" set_bin_state (self, *args)
 set_bin_state(self, value)
 
"void" out_mnem (self, *args)
 out_mnem(self, width=8, postfix=None) Output instruction mnemonic for 'insn' using information in 'ph.instruc' array.
 
"void" out_custom_mnem (self, *args)
 out_custom_mnem(self, mnem, width=8, postfix=None) Output custom mnemonic for 'insn'.
 
"void" out_mnemonic (self, *args)
 out_mnemonic(self) Output instruction mnemonic using information in 'insn'.
 
"bool" out_one_operand (self, *args)
 out_one_operand(self, n) -> bool Use this function to output an operand of an instruction.
 
"void" out_immchar_cmts (self, *args)
 out_immchar_cmts(self) Print all operand values as commented character constants.
 
"void" gen_func_header (self, *args)
 gen_func_header(self, pfn)
 
"void" gen_func_footer (self, *args)
 gen_func_footer(self, pfn)
 
"void" out_data (self, *args)
 out_data(self, analyze_only)
 
"bool" out_specea (self, *args)
 out_specea(self, segtype) -> bool
 
"void" gen_header_extra (self, *args)
 gen_header_extra(self)
 
"void" gen_header (self, *args)
 gen_header(self, flags=((1 << 0)|(1 << 1)), proc_name=None, proc_flavour=None)
 
"void" out_fcref_names (self, *args)
 out_fcref_names(self) Print addresses referenced from the specified address as commented symbolic names.
 
- Public Member Functions inherited from outctx_base_t
"bool" only_main_line (self, *args)
 only_main_line(self) -> bool
 
"bool" multiline (self, *args)
 multiline(self) -> bool
 
"bool" force_code (self, *args)
 force_code(self) -> bool
 
"bool" stack_view (self, *args)
 stack_view(self) -> bool
 
"bool" display_voids (self, *args)
 display_voids(self) -> bool
 
"void" set_gen_xrefs (self, *args)
 set_gen_xrefs(self, on=True)
 
"void" set_gen_cmt (self, *args)
 set_gen_cmt(self, on=True)
 
"void" clr_gen_label (self, *args)
 clr_gen_label(self)
 
"void" set_gen_label (self, *args)
 set_gen_label(self)
 
"void" set_gen_demangled_label (self, *args)
 set_gen_demangled_label(self)
 
"void" set_comment_addr (self, *args)
 set_comment_addr(self, ea)
 
"void" set_dlbind_opnd (self, *args)
 set_dlbind_opnd(self)
 
"bool" print_label_now (self, *args)
 print_label_now(self) -> bool
 
"int" forbid_annotations (self, *args)
 forbid_annotations(self) -> int
 
"void" restore_ctxflags (self, *args)
 restore_ctxflags(self, saved_flags)
 
"size_t" out_printf (self, *args)
 out_printf(self, format) -> size_t Functions to append text to the current output buffer (outbuf) Append a formatted string to the output string.
 
"flags64_t" out_value (self, *args)
 out_value(self, x, outf=0) -> flags64_t Output immediate value.
 
"void" out_symbol (self, *args)
 out_symbol(self, c) Output a character with COLOR_SYMBOL color.
 
"void" out_chars (self, *args)
 out_chars(self, c, n) Append a character multiple times.
 
"void" out_spaces (self, *args)
 out_spaces(self, len) Appends spaces to outbuf until its tag_strlen becomes 'len'.
 
"void" out_line (self, *args)
 out_line(self, str, color=0) Output a string with the specified color.
 
"void" out_keyword (self, *args)
 out_keyword(self, str) Output a string with COLOR_KEYWORD color.
 
"void" out_register (self, *args)
 out_register(self, str) Output a character with COLOR_REG color.
 
"void" out_tagon (self, *args)
 out_tagon(self, tag) Output "turn color on" escape sequence.
 
"void" out_tagoff (self, *args)
 out_tagoff(self, tag) Output "turn color off" escape sequence.
 
"void" out_addr_tag (self, *args)
 out_addr_tag(self, ea) Output "address" escape sequence.
 
"void" out_colored_register_line (self, *args)
 out_colored_register_line(self, str) Output a colored line with register names in it.
 
"void" out_char (self, *args)
 out_char(self, c) Output one character.
 
"void" out_long (self, *args)
 out_long(self, v, radix) Output a number with appropriate color.
 
"bool" out_name_expr (self, *args)
 out_name_expr(self, x, ea, off=BADADDR) -> bool Output a name expression.
 
"void" close_comment (self, *args)
 close_comment(self)
 
"bool" flush_outbuf (self, *args)
 flush_outbuf(self, indent=-1) -> bool Functions to populate the output line array (lnar) Move the contents of the output buffer to the line array (outbuf->lnar) The kernel augments the outbuf contents with additional text like the line prefix, user-defined comments, xrefs, etc at this call.
 
"bool" flush_buf (self, *args)
 flush_buf(self, buf, indent=-1) -> bool Append contents of 'buf' to the line array.
 
"bool" gen_printf (self, *args)
 gen_printf(self, indent, format) -> bool printf-like function to add lines to the line array.
 
"bool" gen_empty_line (self, *args)
 gen_empty_line(self) -> bool Generate empty line.
 
"bool" gen_border_line (self, *args)
 gen_border_line(self, solid=False) -> bool Generate thin border line.
 
"bool" gen_cmt_line (self, *args)
 gen_cmt_line(self, format) -> bool Generate one non-indented comment line, colored with COLOR_AUTOCMT.
 
"bool" gen_collapsed_line (self, *args)
 gen_collapsed_line(self, format) -> bool Generate one non-indented comment line, colored with COLOR_COLLAPSED.
 
"bool" gen_block_cmt (self, *args)
 gen_block_cmt(self, cmt, color) -> bool Generate big non-indented comment lines.
 
"void" init_lines_array (self, *args)
 init_lines_array(self, answers, maxsize)
 
"member_t *" get_stkvar (self, *args)
 get_stkvar(self, arg2, arg3, arg4, arg5) -> member_t *
 
"void" gen_empty_line_without_annotations (self, *args)
 gen_empty_line_without_annotations(self)
 
"flags64_t" getF (self, *args)
 getF(self) -> flags64_t
 

Properties

 thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
 
 bin_ea = property(_ida_ua.outctx_t_bin_ea_get, _ida_ua.outctx_t_bin_ea_set, doc=)
 
 bin_state = property(_ida_ua.outctx_t_bin_state_get, _ida_ua.outctx_t_bin_state_set, doc=)
 
 gl_bpsize = property(_ida_ua.outctx_t_gl_bpsize_get, _ida_ua.outctx_t_gl_bpsize_set, doc=)
 
 bin_width = property(_ida_ua.outctx_t_bin_width_get, _ida_ua.outctx_t_bin_width_set, doc=)
 
 insn = property(_ida_ua.outctx_t_insn_get, _ida_ua.outctx_t_insn_set, doc=)
 
 curlabel = property(_ida_ua.outctx_t_curlabel_get, _ida_ua.outctx_t_curlabel_set, doc=)
 
 wif = property(_ida_ua.outctx_t_wif_get, _ida_ua.outctx_t_wif_set, doc=)
 
 procmod = property(_ida_ua.outctx_t_procmod_get, _ida_ua.outctx_t_procmod_set, doc=)
 
 ph = property(_ida_ua.outctx_t_ph_get, _ida_ua.outctx_t_ph_set, doc=)
 
 ash = property(_ida_ua.outctx_t_ash_get, _ida_ua.outctx_t_ash_set, doc=)
 
 saved_immvals = property(_ida_ua.outctx_t_saved_immvals_get, _ida_ua.outctx_t_saved_immvals_set, doc=)
 
 prefix_ea = property(_ida_ua.outctx_t_prefix_ea_get, _ida_ua.outctx_t_prefix_ea_set, doc=)
 
 next_line_ea = property(_ida_ua.outctx_t_next_line_ea_get, _ida_ua.outctx_t_next_line_ea_set, doc=)
 
- Properties inherited from outctx_base_t
 thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
 
 insn_ea = property(_ida_ua.outctx_base_t_insn_ea_get, _ida_ua.outctx_base_t_insn_ea_set, doc=)
 
 outbuf = property(_ida_ua.outctx_base_t_outbuf_get, _ida_ua.outctx_base_t_outbuf_set, doc=)
 
 F32 = property(_ida_ua.outctx_base_t_F32_get, _ida_ua.outctx_base_t_F32_set, doc=)
 
 default_lnnum = property(_ida_ua.outctx_base_t_default_lnnum_get, _ida_ua.outctx_base_t_default_lnnum_set, doc=)
 

Constructor & Destructor Documentation

◆ __init__()

__init__ ( self,
* args,
** kwargs )

Reimplemented from outctx_base_t.

Member Function Documentation

◆ gen_func_footer()

"void" gen_func_footer ( self,
* args )
Parameters
pfnfunc_t const *

◆ gen_func_header()

"void" gen_func_header ( self,
* args )
Parameters
pfnfunc_t *

◆ gen_header()

"void" gen_header ( self,
* args )
Parameters
flagsint
proc_namechar const *
proc_flavourchar const *

◆ gen_header_extra()

"void" gen_header_extra ( self,
* args )

◆ gen_xref_lines()

"bool" gen_xref_lines ( self,
* args )

Reimplemented from outctx_base_t.

◆ out_btoa()

"void" out_btoa ( self,
* args )

see also out_long()

Parameters
Word(C++: uval_t)
radix(C++: char)

Reimplemented from outctx_base_t.

◆ out_custom_mnem()

"void" out_custom_mnem ( self,
* args )

E.g. if it should differ from the one in 'ph.instruc'. This function outputs colored text. See out_mnem

Parameters
mnem(C++: const char *) custom mnemonic
width(C++: int) width of field with mnemonic. if < 0, then 'postfix' will be output before the mnemonic, i.e. as a prefix
postfix(C++: const char *) optional postfix added to 'mnem'

◆ out_data()

"void" out_data ( self,
* args )
Parameters
analyze_onlybool

◆ out_fcref_names()

"void" out_fcref_names ( self,
* args )

This function is used to show, for example, multiple callees of an indirect call. This function outputs colored text.

◆ out_immchar_cmts()

"void" out_immchar_cmts ( self,
* args )

This function is used to comment void operands with their representation in the form of character constants. This function outputs colored text.

◆ out_mnem()

"void" out_mnem ( self,
* args )

This function outputs colored text. It should be called from processor_t::ev_out_insn() or processor_t::ev_out_mnem() handler. It will output at least one space after the instruction. mnemonic even if the specified 'width' is not enough.

Parameters
width(C++: int) width of field with mnemonic. if < 0, then 'postfix' will be output before the mnemonic, i.e. as a prefix
postfix(C++: const char *) optional postfix added to the instruction mnemonic

◆ out_mnemonic()

"void" out_mnemonic ( self,
* args )

It should be called from processor_t::ev_out_insn() and it will call processor_t::ev_out_mnem() or out_mnem. This function outputs colored text.

◆ out_one_operand()

"bool" out_one_operand ( self,
* args )

This function checks for the existence of a manually defined operand and will output it if it exists. It should be called from processor_t::ev_out_insn() and it will call processor_t::ev_out_operand(). This function outputs colored text.

Parameters
n(C++: int) 0..UA_MAXOP-1 operand number
Return values
1operand is displayed
0operand is hidden

◆ out_specea()

"bool" out_specea ( self,
* args )
Parameters
segtypeuchar

◆ retrieve_cmt()

"ssize_t" retrieve_cmt ( self,
* args )

Reimplemented from outctx_base_t.

◆ retrieve_name()

"ssize_t" retrieve_name ( self,
* args )
Parameters
arg2qstring *
arg3color_t *

Reimplemented from outctx_base_t.

◆ set_bin_state()

"void" set_bin_state ( self,
* args )
Parameters
valueint

◆ setup_outctx()

"void" setup_outctx ( self,
* args )
Parameters
prefix(C++: const char *) char const *
flagsint

Reimplemented from outctx_base_t.

◆ term_outctx()

"int" term_outctx ( self,
* args )
Parameters
prefix(C++: const char *) char const *
Returns
: the number of generated lines.

Reimplemented from outctx_base_t.

Property Documentation

◆ ash

ash = property(_ida_ua.outctx_t_ash_get, _ida_ua.outctx_t_ash_set, doc=)
static

◆ bin_ea

bin_ea = property(_ida_ua.outctx_t_bin_ea_get, _ida_ua.outctx_t_bin_ea_set, doc=)
static

◆ bin_state

bin_state = property(_ida_ua.outctx_t_bin_state_get, _ida_ua.outctx_t_bin_state_set, doc=)
static

◆ bin_width

bin_width = property(_ida_ua.outctx_t_bin_width_get, _ida_ua.outctx_t_bin_width_set, doc=)
static

◆ curlabel

curlabel = property(_ida_ua.outctx_t_curlabel_get, _ida_ua.outctx_t_curlabel_set, doc=)
static

◆ gl_bpsize

gl_bpsize = property(_ida_ua.outctx_t_gl_bpsize_get, _ida_ua.outctx_t_gl_bpsize_set, doc=)
static

◆ insn

insn = property(_ida_ua.outctx_t_insn_get, _ida_ua.outctx_t_insn_set, doc=)
static

◆ next_line_ea

next_line_ea = property(_ida_ua.outctx_t_next_line_ea_get, _ida_ua.outctx_t_next_line_ea_set, doc=)
static

◆ ph

ph = property(_ida_ua.outctx_t_ph_get, _ida_ua.outctx_t_ph_set, doc=)
static

◆ prefix_ea

prefix_ea = property(_ida_ua.outctx_t_prefix_ea_get, _ida_ua.outctx_t_prefix_ea_set, doc=)
static

◆ procmod

procmod = property(_ida_ua.outctx_t_procmod_get, _ida_ua.outctx_t_procmod_set, doc=)
static

◆ saved_immvals

saved_immvals = property(_ida_ua.outctx_t_saved_immvals_get, _ida_ua.outctx_t_saved_immvals_set, doc=)
static

◆ thisown

thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
static

◆ wif

wif = property(_ida_ua.outctx_t_wif_get, _ida_ua.outctx_t_wif_set, doc=)
static

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