IDA C++ SDK 9.2
Loading...
Searching...
No Matches
block_chains_t Class Reference

Chains of one block. More...

#include <hexrays.hpp>

Public Member Functions

const chain_tget_reg_chain (mreg_t reg, int width=1) const
 Get chain for the specified register.
chain_tget_reg_chain (mreg_t reg, int width=1)
const chain_tget_stk_chain (sval_t off, int width=1) const
 Get chain for the specified stack offset.
chain_tget_stk_chain (sval_t off, int width=1)
const chain_tget_chain (const voff_t &k, int width=1) const
 Get chain for the specified value offset.
chain_tget_chain (const voff_t &k, int width=1)
const chain_t *hexapi get_chain (const chain_t &ch) const
 Get chain similar to the specified chain.
chain_tget_chain (const chain_t &ch)
void hexapi print (qstring *vout) const
const char *hexapi dstr () const

Detailed Description

Chains of one block.

Please note that this class is based on std::set and it must be accessed using the block_chains_begin(), block_chains_find() and similar functions. This is required because different compilers use different implementations of std::set. However, since the size of std::set depends on the compilation options, we replace it with a byte array.

Member Function Documentation

◆ get_reg_chain() [1/2]

const chain_t * block_chains_t::get_reg_chain ( mreg_t reg,
int width = 1 ) const
inline

Get chain for the specified register.

Parameters
regregister number
widthsize of register in bytes

◆ get_reg_chain() [2/2]

chain_t * block_chains_t::get_reg_chain ( mreg_t reg,
int width = 1 )
inline

◆ get_stk_chain() [1/2]

const chain_t * block_chains_t::get_stk_chain ( sval_t off,
int width = 1 ) const
inline

Get chain for the specified stack offset.

Parameters
offstack offset
widthsize of stack value in bytes

◆ get_stk_chain() [2/2]

chain_t * block_chains_t::get_stk_chain ( sval_t off,
int width = 1 )
inline

◆ get_chain() [1/4]

const chain_t * block_chains_t::get_chain ( const voff_t & k,
int width = 1 ) const
inline

Get chain for the specified value offset.

Parameters
kvalue offset (register number or stack offset)
widthsize of value in bytes

◆ get_chain() [2/4]

chain_t * block_chains_t::get_chain ( const voff_t & k,
int width = 1 )
inline

◆ get_chain() [3/4]

const chain_t * block_chains_t::get_chain ( const chain_t & ch) const
inline

Get chain similar to the specified chain.

Parameters
chchain to search for. only its 'k' and 'width' are used.

◆ get_chain() [4/4]

chain_t * block_chains_t::get_chain ( const chain_t & ch)
inline

◆ print()

void block_chains_t::print ( qstring * vout) const
inline

◆ dstr()

const char * block_chains_t::dstr ( ) const
inline

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