IDAPython 9.0
Loading...
Searching...
No Matches
insn_t Class Reference
Inheritance diagram for insn_t:

Public Member Functions

 __init__ (self)
 
bool is_macro (self)
 
bool is_64bit (self)
 
'uint8' get_next_byte (self)
 
'uint16' get_next_word (self)
 
int get_next_dword (self)
 
'uint64' get_next_qword (self)
 
bool create_op_data (self, *args)
 
bool create_stkvar (self, 'op_t' x, 'adiff_t' v, int flags_)
 
None add_cref (self, ida_idaapi.ea_t to, int opoff, 'cref_t' type)
 
None add_dref (self, ida_idaapi.ea_t to, int opoff, 'dref_t' type)
 
ida_idaapi.ea_t add_off_drefs (self, 'op_t' x, 'dref_t' type, int outf)
 
'wrapped_array_t< op_t, 8 >' __get_ops__ (self)
 
'op_t *' __get_operand__ (self, int n)
 
int __get_auxpref__ (self)
 
None __set_auxpref__ (self, int v)
 
None assign (self, 'insn_t' other)
 
bool is_canon_insn (self, *args)
 
int get_canon_feature (self, *args)
 
str get_canon_mnem (self, *args)
 
 __iter__ (self)
 
 __getitem__ (self, idx)
 

Static Public Attributes

str cs = property(_ida_ua.insn_t_cs_get, _ida_ua.insn_t_cs_set)
 
str ip = property(_ida_ua.insn_t_ip_get, _ida_ua.insn_t_ip_set)
 
str ea = property(_ida_ua.insn_t_ea_get, _ida_ua.insn_t_ea_set)
 
str itype
 
str size = property(_ida_ua.insn_t_size_get, _ida_ua.insn_t_size_set)
 
str auxpref
 
str auxpref_u16
 
str auxpref_u8
 
str segpref
 
str insnpref
 
str flags
 
str ops = property(_ida_ua.insn_t_ops_get, _ida_ua.insn_t_ops_set)
 

Properties

 thisown
 
 Op1 = property(lambda self: self.__get_operand__(0))
 
 Op2 = property(lambda self: self.__get_operand__(1))
 
 Op3 = property(lambda self: self.__get_operand__(2))
 
 Op4 = property(lambda self: self.__get_operand__(3))
 
 Op5 = property(lambda self: self.__get_operand__(4))
 
 Op6 = property(lambda self: self.__get_operand__(5))
 
 Op7 = property(lambda self: self.__get_operand__(6))
 
 Op8 = property(lambda self: self.__get_operand__(7))
 

Constructor & Destructor Documentation

◆ __init__()

__init__ ( self)

Member Function Documentation

◆ __get_auxpref__()

int __get_auxpref__ ( self)

◆ __get_operand__()

'op_t *' __get_operand__ ( self,
int n )

◆ __get_ops__()

'wrapped_array_t< op_t,8 >' __get_ops__ ( self)

◆ __getitem__()

__getitem__ ( self,
idx )
Operands can be accessed directly as indexes
@return op_t: Returns an operand of type op_t

◆ __iter__()

__iter__ ( self)

◆ __set_auxpref__()

None __set_auxpref__ ( self,
int v )

◆ add_cref()

None add_cref ( self,
ida_idaapi.ea_t to,
int opoff,
'cref_t' type )
Add a code cross-reference from the instruction. 

@param to: target linear address
@param opoff: offset of the operand from the start of instruction. if the offset is unknown, then 0.
@param type: type of xref

◆ add_dref()

None add_dref ( self,
ida_idaapi.ea_t to,
int opoff,
'dref_t' type )
Add a data cross-reference from the instruction. See add_off_drefs() - usually it can be used in most cases. 

@param to: target linear address
@param opoff: offset of the operand from the start of instruction if the offset is unknown, then 0
@param type: type of xref

◆ add_off_drefs()

ida_idaapi.ea_t add_off_drefs ( self,
'op_t' x,
'dref_t' type,
int outf )
Add xrefs for an operand of the instruction. This function creates all cross references for 'enum', 'offset' and 'structure offset' operands. Use add_off_drefs() in the presence of negative offsets. 

@param x: reference to operand
@param type: type of xref
@param outf: out_value() flags. These flags should match the flags used to output the operand
@retval if: is_off(): the reference target address (the same as calc_reference_data).
@retval if: is_stroff(): BADADDR because for stroffs the target address is unknown
@retval otherwise: BADADDR because enums do not represent addresses

◆ assign()

None assign ( self,
'insn_t' other )

◆ create_op_data()

bool create_op_data ( self,
* args )

◆ create_stkvar()

bool create_stkvar ( self,
'op_t' x,
'adiff_t' v,
int flags_ )

◆ get_canon_feature()

int get_canon_feature ( self,
* args )
see instruc_t::feature

◆ get_canon_mnem()

str get_canon_mnem ( self,
* args )
see instruc_t::name

◆ get_next_byte()

'uint8' get_next_byte ( self)

◆ get_next_dword()

int get_next_dword ( self)

◆ get_next_qword()

'uint64' get_next_qword ( self)

◆ get_next_word()

'uint16' get_next_word ( self)

◆ is_64bit()

bool is_64bit ( self)
Belongs to a 64bit segment?

◆ is_canon_insn()

bool is_canon_insn ( self,
* args )
see processor_t::is_canon_insn()

◆ is_macro()

bool is_macro ( self)
Is a macro instruction?

Member Data Documentation

◆ auxpref

auxpref
static
Initial value:
= property(_ida_ua.insn_t_auxpref_get, _ida_ua.
insn_t_auxpref_set)

◆ auxpref_u16

str auxpref_u16
static
Initial value:
= property(_ida_ua.insn_t_auxpref_u16_get,
_ida_ua.insn_t_auxpref_u16_set)

◆ auxpref_u8

str auxpref_u8
static
Initial value:
= property(_ida_ua.insn_t_auxpref_u8_get,
_ida_ua.insn_t_auxpref_u8_set)

◆ cs

str cs = property(_ida_ua.insn_t_cs_get, _ida_ua.insn_t_cs_set)
static

◆ ea

str ea = property(_ida_ua.insn_t_ea_get, _ida_ua.insn_t_ea_set)
static

◆ flags

str flags
static
Initial value:
= property(_ida_ua.insn_t_flags_get, _ida_ua.
insn_t_flags_set)

◆ insnpref

str insnpref
static
Initial value:
= property(_ida_ua.insn_t_insnpref_get, _ida_ua.
insn_t_insnpref_set)

◆ ip

str ip = property(_ida_ua.insn_t_ip_get, _ida_ua.insn_t_ip_set)
static

◆ itype

str itype
static
Initial value:
= property(_ida_ua.insn_t_itype_get, _ida_ua.
insn_t_itype_set)

◆ ops

ops = property(_ida_ua.insn_t_ops_get, _ida_ua.insn_t_ops_set)
static

◆ segpref

str segpref
static
Initial value:
= property(_ida_ua.insn_t_segpref_get, _ida_ua.
insn_t_segpref_set)

◆ size

str size = property(_ida_ua.insn_t_size_get, _ida_ua.insn_t_size_set)
static

Property Documentation

◆ Op1

Op1 = property(lambda self: self.__get_operand__(0))
static

◆ Op2

Op2 = property(lambda self: self.__get_operand__(1))
static

◆ Op3

Op3 = property(lambda self: self.__get_operand__(2))
static

◆ Op4

Op4 = property(lambda self: self.__get_operand__(3))
static

◆ Op5

Op5 = property(lambda self: self.__get_operand__(4))
static

◆ Op6

Op6 = property(lambda self: self.__get_operand__(5))
static

◆ Op7

Op7 = property(lambda self: self.__get_operand__(6))
static

◆ Op8

Op8 = property(lambda self: self.__get_operand__(7))
static

◆ thisown

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

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