Inherits outctx_base_t.
Public Member Functions | |
outctx_t (procmod_t *p, processor_t &ph, asm_t &ash, ea_t ea, flags64_t flags=0, int _suspop=0, const printop_t *_wif=nullptr) | |
virtual void idaapi | setup_outctx (const char *prefix, int flags) override |
Initialization; normally used only by the kernel. More... | |
virtual int idaapi | term_outctx (const char *prefix=nullptr) override |
Finalize the output context. More... | |
virtual ssize_t idaapi | retrieve_cmt (void) override |
virtual ssize_t idaapi | retrieve_name (qstring *, color_t *) override |
virtual bool idaapi | gen_xref_lines (void) override |
virtual void idaapi | out_btoa (uval_t Word, char radix=0) override |
Output a number with the specified base (binary, octal, decimal, hex) The number is output without color codes. More... | |
void | set_bin_state (int value) |
virtual void idaapi | out_mnem (int width=8, const char *postfix=nullptr) new api |
Output instruction mnemonic for 'insn' using information in 'ph.instruc' array. More... | |
virtual void idaapi | out_custom_mnem (const char *mnem, int width=8, const char *postfix=nullptr) new api |
Output custom mnemonic for 'insn'. More... | |
virtual void idaapi | out_mnemonic (void) new api |
Output instruction mnemonic using information in 'insn'. More... | |
virtual bool idaapi | out_one_operand (int n) new api |
Use this function to output an operand of an instruction. More... | |
virtual size_t idaapi | get_immvals (uval_t *out, int i) new api |
Get the immediate values used at the specified address. More... | |
virtual void idaapi | out_immchar_cmts (void) new api |
Print all operand values as commented character constants. More... | |
virtual void idaapi | gen_func_header (func_t *pfn) new api |
virtual void idaapi | gen_func_footer (const func_t *pfn) new api |
virtual void idaapi | out_data (bool analyze_only) new api |
virtual bool idaapi | out_specea (uchar segtype) new api |
virtual void idaapi | gen_header_extra () new api |
virtual void idaapi | gen_header (int flags=GH_PRINT_PROC_AND_ASM, const char *proc_name=nullptr, const char *proc_flavour=nullptr) new api |
virtual void idaapi | out_fcref_names () new api |
Print addresses referenced *from* the specified address as commented symbolic names. More... | |
Public Member Functions inherited from outctx_base_t | |
bool | only_main_line () const |
bool | multiline () const |
bool | force_code () const |
bool | stack_view () const |
bool | display_voids () const |
void | set_gen_xrefs (bool on=true) |
int | get_xrefgen_state () const |
void | set_gen_cmt (bool on=true) |
int | get_cmtgen_state () const |
int | get_binop_state () const |
void | clr_gen_label (void) |
void | set_gen_label (void) |
void | set_gen_demangled_label (void) |
void | set_comment_addr (ea_t ea) |
void | set_dlbind_opnd (void) |
bool | print_label_now () const |
int | forbid_annotations () |
void | restore_ctxflags (int saved_flags) |
outctx_base_t (ea_t ea, flags64_t flags, int _suspop=0) | |
size_t | out_printf (const char *format,...) |
------------------------------------------------------------------------- Functions to append text to the current output buffer (outbuf) More... | |
GCC_DIAG_OFF (format-nonliteral) | |
size_t | nowarn_out_printf (const char *format,...) |
GCC_DIAG_ON (format-nonliteral) | |
virtual size_t idaapi | out_vprintf (const char *format, va_list va) |
virtual flags64_t idaapi | out_value (const op_t &x, int outf=0) |
Output immediate value. More... | |
virtual void idaapi | out_symbol (char c) |
Output a character with COLOR_SYMBOL color. | |
virtual void idaapi | out_chars (char c, int n) |
Append a character multiple times. | |
void | out_spaces (ssize_t len) |
Appends spaces to outbuf until its tag_strlen becomes 'len'. | |
virtual void idaapi | add_spaces (qstring *buf, ssize_t len) |
virtual void idaapi | out_line (const char *str, color_t color=0) |
Output a string with the specified color. | |
void | out_keyword (const char *str) |
Output a string with COLOR_KEYWORD color. | |
void | out_register (const char *str) |
Output a character with COLOR_REG color. | |
virtual void idaapi | out_tagon (color_t tag) |
Output "turn color on" escape sequence. | |
virtual void idaapi | out_tagoff (color_t tag) |
Output "turn color off" escape sequence. | |
virtual void idaapi | out_addr_tag (ea_t ea) |
Output "address" escape sequence. | |
virtual void idaapi | out_colored_register_line (const char *str) |
Output a colored line with register names in it. More... | |
virtual void idaapi | out_char (char c) |
Output one character. More... | |
virtual void idaapi | out_btoa (uval_t Word, char radix=0) |
Output a number with the specified base (binary, octal, decimal, hex) The number is output without color codes. More... | |
virtual void idaapi | out_long (sval_t v, char radix) |
Output a number with appropriate color. More... | |
virtual bool idaapi | out_name_expr (const op_t &x, ea_t ea, adiff_t off=BADADDR) |
Output a name expression. More... | |
void | close_comment (void) |
virtual bool idaapi | flush_outbuf (int indent=-1) |
------------------------------------------------------------------------- Functions to populate the output line array (lnar) More... | |
virtual bool idaapi | flush_buf (const char *buf, int indent=-1) |
Append contents of 'buf' to the line array. More... | |
virtual int idaapi | term_outctx (const char *prefix=nullptr) |
Finalize the output context. More... | |
virtual bool idaapi | gen_vprintf (int indent, const char *format, va_list va) |
See gen_printf() | |
bool | gen_printf (int indent, const char *format,...) |
printf-like function to add lines to the line array. More... | |
virtual bool idaapi | gen_empty_line (void) |
Generate empty line. More... | |
virtual bool idaapi | gen_border_line (bool solid=false) |
Generate thin border line. More... | |
virtual bool idaapi | gen_colored_cmt_line_v (color_t color, const char *format, va_list va) |
See gen_cmt_line() | |
bool | gen_cmt_line_v (const char *format, va_list va) |
See gen_cmt_line() | |
bool | gen_cmt_line (const char *format,...) |
Generate one non-indented comment line, colored with COLOR_AUTOCMT. More... | |
bool | gen_collapsed_line (const char *format,...) |
Generate one non-indented comment line, colored with COLOR_COLLAPSED. More... | |
virtual bool idaapi | gen_block_cmt (const char *cmt, color_t color) |
Generate big non-indented comment lines. More... | |
virtual void idaapi | setup_outctx (const char *prefix, int makeline_flags) |
Initialization; normally used only by the kernel. More... | |
virtual ssize_t idaapi | retrieve_cmt (void) |
virtual ssize_t idaapi | retrieve_name (qstring *, color_t *) |
virtual bool idaapi | gen_xref_lines (void) |
virtual void idaapi | init_lines_array (qstrvec_t *answers, int maxsize) |
virtual member_t *idaapi | get_stkvar (const op_t &, uval_t, sval_t *, int *) |
void | gen_empty_line_without_annotations (void) |
flags64_t | getF () const |
Public Attributes | |
ea_t | bin_ea |
char | bin_state |
int | gl_bpsize = 0 |
int | bin_width = 0 |
insn_t | insn |
qstring | curlabel |
const printop_t * | wif |
procmod_t * | procmod |
processor_t & | ph |
asm_t & | ash |
uval_t | saved_immvals [UA_MAXOP] = { 0 } |
ea_t | prefix_ea = BADADDR |
ea_t | next_line_ea = BADADDR |
flags64_t | F = 0 |
Public Attributes inherited from outctx_base_t | |
ea_t | insn_ea |
qstring | outbuf |
ssize_t | regname_idx = -1 |
int | suspop |
flags_t | F32 |
uval_t * | outvalues = nullptr |
int | outvalue_getn_flags = 0 |
void * | user_data = nullptr |
void * | kern_data = nullptr |
qstrvec_t * | lnar = nullptr |
int | lnar_maxsize = 0 |
int | default_lnnum = -1 |
qstring | line_prefix |
ssize_t | prefix_len = 0 |
int | ctxflags = 0 |
int | ind0 = 0 |
ea_t | cmt_ea = BADADDR |
qstring | cmtbuf |
const char * | cmtptr = nullptr |
color_t | cmtcolor = 0xFF |
Additional Inherited Members | |
Protected Member Functions inherited from outctx_base_t | |
virtual bool idaapi | flush_and_reinit (void) |
virtual void idaapi | append_user_prefix (const char *, int) |
virtual void idaapi | add_aux_prefix (const char *, int) |
virtual void idaapi | out_label_addr_tag (void) |
virtual void idaapi | out_aux_cmts (void) |
Member Function Documentation
◆ setup_outctx()
|
overridevirtual |
Initialization; normally used only by the kernel.
Reimplemented from outctx_base_t.
◆ term_outctx()
|
overridevirtual |
Finalize the output context.
- Returns
- the number of generated lines.
Reimplemented from outctx_base_t.
◆ retrieve_cmt()
|
overridevirtual |
Reimplemented from outctx_base_t.
◆ retrieve_name()
Reimplemented from outctx_base_t.
◆ gen_xref_lines()
|
overridevirtual |
Reimplemented from outctx_base_t.
◆ out_btoa()
|
overridevirtual |
Output a number with the specified base (binary, octal, decimal, hex) The number is output without color codes.
see also out_long()
Reimplemented from outctx_base_t.
◆ out_mnem()
|
newvirtual |
Output instruction mnemonic for 'insn' using information in 'ph.instruc' array.
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 width of field with mnemonic. if < 0, then 'postfix' will be output before the mnemonic, i.e. as a prefix postfix optional postfix added to the instruction mnemonic
◆ out_custom_mnem()
|
newvirtual |
Output custom mnemonic for 'insn'.
E.g. if it should differ from the one in 'ph.instruc'. This function outputs colored text. See out_mnem
- Parameters
-
mnem custom mnemonic width width of field with mnemonic. if < 0, then 'postfix' will be output before the mnemonic, i.e. as a prefix postfix optional postfix added to 'mnem'
◆ out_mnemonic()
|
newvirtual |
Output instruction mnemonic using information in 'insn'.
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()
|
newvirtual |
Use this function to output an operand of an instruction.
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 0..UA_MAXOP-1 operand number
- Return values
-
1 operand is displayed 0 operand is hidden
◆ get_immvals()
|
newvirtual |
Get the immediate values used at the specified address.
This function can handle instructions and data items.
- Parameters
-
out array of values, size at least 2*UA_MAXOP i operand number
- Returns
- number of immediate values
◆ out_immchar_cmts()
|
newvirtual |
Print all operand values as commented character constants.
This function is used to comment void operands with their representation in the form of character constants. This function outputs colored text.
◆ out_fcref_names()
|
newvirtual |
Print addresses referenced *from* the specified address as commented symbolic names.
This function is used to show, for example, multiple callees of an indirect call. This function outputs colored text.
The documentation for this struct was generated from the following file:
Generated by 1.9.3