GDB (xrefs)
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
gdbpy_disassembler Struct Reference
Inheritance diagram for gdbpy_disassembler:
gdb_disassemble_info

Public Member Functions

 gdbpy_disassembler (disasm_info_object *obj, PyObject *memory_source)
 
disasm_info_objectpy_disasm_info () const
 
static int static int static int const gdb::optional< CORE_ADDR > & memory_error_address () const
 
std::vector< gdbpy_ref<> > release ()
 
bool restore_exception ()
 
- Public Member Functions inherited from gdb_disassemble_info
 DISABLE_COPY_AND_ASSIGN (gdb_disassemble_info)
 
struct gdbarcharch ()
 
struct disassemble_info * disasm_info ()
 

Static Public Member Functions

static void memory_error_func (int status, bfd_vma memaddr, struct disassemble_info *info) noexcept
 
static void print_address_func (bfd_vma addr, struct disassemble_info *info) noexcept
 
static int read_memory_func (bfd_vma memaddr, gdb_byte *buff, unsigned int len, struct disassemble_info *info) noexcept
 
static int fprintf_func (void *dis_info, const char *format,...) noexcept ATTRIBUTE_PRINTF(2
 
static int static int fprintf_styled_func (void *dis_info, enum disassembler_style style, const char *format,...) noexcept ATTRIBUTE_PRINTF(3
 
static int static int static int vfprintf_styled_func (void *dis_info, enum disassembler_style style, const char *format, va_list args) noexcept ATTRIBUTE_PRINTF(3
 

Private Member Functions

void store_exception (gdbpy_err_fetch &&ex)
 
bool has_stored_exception () const
 

Private Attributes

std::vector< gdbpy_ref<> > m_parts
 
disasm_info_objectm_disasm_info_object
 
gdb::optional< CORE_ADDR > m_memory_error_address
 
PyObjectm_memory_source
 
gdb::optional< gdbpy_err_fetchm_stored_exception
 

Additional Inherited Members

- Protected Types inherited from gdb_disassemble_info
using read_memory_ftype
 
using memory_error_ftype
 
using print_address_ftype
 
using fprintf_ftype
 
using fprintf_styled_ftype
 
- Protected Member Functions inherited from gdb_disassemble_info
 gdb_disassemble_info (struct gdbarch *gdbarch, read_memory_ftype read_memory_func, memory_error_ftype memory_error_func, print_address_ftype print_address_func, fprintf_ftype fprintf_func, fprintf_styled_ftype fprintf_styled_func)
 
virtual ~gdb_disassemble_info ()
 
- Protected Attributes inherited from gdb_disassemble_info
struct disassemble_info m_di
 

Detailed Description

Definition at line 134 of file py-disasm.c.

Constructor & Destructor Documentation

◆ gdbpy_disassembler()

gdbpy_disassembler::gdbpy_disassembler ( disasm_info_object * obj,
PyObject * memory_source )

Definition at line 1142 of file py-disasm.c.

Member Function Documentation

◆ fprintf_func()

int gdbpy_disassembler::fprintf_func ( void * dis_info,
const char * format,
... )
staticnoexcept

Definition at line 788 of file py-disasm.c.

References vfprintf_styled_func().

◆ fprintf_styled_func()

int gdbpy_disassembler::fprintf_styled_func ( void * dis_info,
enum disassembler_style style,
const char * format,
... )
staticnoexcept

Definition at line 804 of file py-disasm.c.

References vfprintf_styled_func().

◆ has_stored_exception()

bool gdbpy_disassembler::has_stored_exception ( ) const
inlineprivate

Definition at line 241 of file py-disasm.c.

References m_stored_exception.

Referenced by read_memory_func().

◆ memory_error_address()

static int static int static int const gdb::optional< CORE_ADDR > & gdbpy_disassembler::memory_error_address ( ) const
inline

Definition at line 179 of file py-disasm.c.

References m_memory_error_address.

◆ memory_error_func()

void gdbpy_disassembler::memory_error_func ( int status,
bfd_vma memaddr,
struct disassemble_info * info )
staticnoexcept

Definition at line 1118 of file py-disasm.c.

References gdbarch::info(), and m_memory_error_address.

◆ print_address_func()

void gdbpy_disassembler::print_address_func ( bfd_vma addr,
struct disassemble_info * info )
staticnoexcept

◆ py_disasm_info()

disasm_info_object * gdbpy_disassembler::py_disasm_info ( ) const
inline

Definition at line 141 of file py-disasm.c.

References m_disasm_info_object.

Referenced by read_memory_func().

◆ read_memory_func()

int gdbpy_disassembler::read_memory_func ( bfd_vma memaddr,
gdb_byte * buff,
unsigned int len,
struct disassemble_info * info )
staticnoexcept

◆ release()

std::vector< gdbpy_ref<> > gdbpy_disassembler::release ( )
inline

Definition at line 185 of file py-disasm.c.

References m_parts.

◆ restore_exception()

bool gdbpy_disassembler::restore_exception ( )
inline

Definition at line 198 of file py-disasm.c.

References m_stored_exception, and gdbpy_err_fetch::restore().

◆ store_exception()

void gdbpy_disassembler::store_exception ( gdbpy_err_fetch && ex)
inlineprivate

Definition at line 232 of file py-disasm.c.

References m_stored_exception.

Referenced by read_memory_func().

◆ vfprintf_styled_func()

int gdbpy_disassembler::vfprintf_styled_func ( void * dis_info,
enum disassembler_style style,
const char * format,
va_list args )
staticnoexcept

Definition at line 750 of file py-disasm.c.

References disasm_text_part_object_type, m_parts, and make_disasm_text_part().

Referenced by fprintf_func(), and fprintf_styled_func().

Member Data Documentation

◆ m_disasm_info_object

disasm_info_object* gdbpy_disassembler::m_disasm_info_object
private

Definition at line 220 of file py-disasm.c.

Referenced by py_disasm_info().

◆ m_memory_error_address

gdb::optional<CORE_ADDR> gdbpy_disassembler::m_memory_error_address
private

Definition at line 224 of file py-disasm.c.

Referenced by memory_error_address(), and memory_error_func().

◆ m_memory_source

PyObject* gdbpy_disassembler::m_memory_source
private

Definition at line 229 of file py-disasm.c.

◆ m_parts

std::vector<gdbpy_ref<> > gdbpy_disassembler::m_parts
private

Definition at line 217 of file py-disasm.c.

Referenced by print_address_func(), release(), and vfprintf_styled_func().

◆ m_stored_exception

gdb::optional<gdbpy_err_fetch> gdbpy_disassembler::m_stored_exception
private

Definition at line 248 of file py-disasm.c.

Referenced by has_stored_exception(), restore_exception(), and store_exception().


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