IAnjutaDebuggerInstruction

IAnjutaDebuggerInstruction — Debugger interface for machine instruction

Stability Level

Unstable, unless otherwise indicated

Object Hierarchy

    GInterface
    ╰── IAnjutaDebuggerInstruction

Includes

#include <libanjuta/interfaces/ianjuta-debugger-instruction.h>

Description

This interface is used to debuger as machine instruction level.

Functions

IAnjutaDebuggerInstructionCallback ()

void
(*IAnjutaDebuggerInstructionCallback) (const IAnjutaDebuggerInstructionDisassembly *data,
                                       gpointer user_data,
                                       GError *err);

This callback function is used to return a IAnjutaDebuggerInstructionDisassembly.

Parameters

data

a IAnjutaDebuggerInstructionDisassembly object

 

user_data

user data passed to the function

 

err

error

 

ianjuta_debugger_instruction_error_quark ()

GQuark
ianjuta_debugger_instruction_error_quark
                               (void);

Returns


ianjuta_debugger_instruction_disassemble ()

gboolean
ianjuta_debugger_instruction_disassemble
                               (IAnjutaDebuggerInstruction *obj,
                                gulong address,
                                guint length,
                                IAnjutaDebuggerInstructionCallback callback,
                                gpointer user_data,
                                GError **err);

Disassemble a part of the memory

Parameters

obj

Self

 

address

Start address of the memory block

 

length

Length of memory block

 

callback

Call back with a IAnjutaDebuggerInstructionDisassembly as argument

 

user_data

User data that is passed back to the callback

 

err

Error propagation and reporting.

 

Returns

TRUE if the request succeed and the callback is called. If FALSE, the callback will not be called.


ianjuta_debugger_instruction_run_from_address ()

gboolean
ianjuta_debugger_instruction_run_from_address
                               (IAnjutaDebuggerInstruction *obj,
                                gulong address,
                                GError **err);

Restart the program starting from address address

Parameters

obj

Self

 

address

Run from this addresss

 

err

Error propagation and reporting.

 

Returns

TRUE if the request succeed and the callback is called. If FALSE, the callback will not be called.


ianjuta_debugger_instruction_run_to_address ()

gboolean
ianjuta_debugger_instruction_run_to_address
                               (IAnjutaDebuggerInstruction *obj,
                                gulong address,
                                GError **err);

Start the program until it reachs the address address

Parameters

obj

Self

 

address

Run to this addresss

 

err

Error propagation and reporting.

 

Returns

TRUE if the request succeed and the callback is called. If FALSE, the callback will not be called.


ianjuta_debugger_instruction_step_in_instruction ()

gboolean
ianjuta_debugger_instruction_step_in_instruction
                               (IAnjutaDebuggerInstruction *obj,
                                GError **err);

Execute one assembler instruction in the program.

Parameters

obj

Self

 

err

Error propagation and reporting.

 

Returns

TRUE if the request succeed and the callback is called. If FALSE, the callback will not be called.


ianjuta_debugger_instruction_step_over_instruction ()

gboolean
ianjuta_debugger_instruction_step_over_instruction
                               (IAnjutaDebuggerInstruction *obj,
                                GError **err);

Execute one assembler instruction in the program, if the instruction is a function call, continues until the function returns.

Parameters

obj

Self

 

err

Error propagation and reporting.

 

Returns

TRUE if the request succeed and the callback is called. If FALSE, the callback will not be called.

Types and Values

IANJUTA_DEBUGGER_INSTRUCTION_ERROR

#define IANJUTA_DEBUGGER_INSTRUCTION_ERROR ianjuta_debugger_instruction_error_quark()


struct IAnjutaDebuggerInstructionALine

struct IAnjutaDebuggerInstructionALine {
	gulong address;
	const gchar *label;
	const gchar *text;
};

Defines a disassembled line

Members

gulong address;

Address of the line

 

const gchar *label;

Optional label

 

const gchar *text;

Diassembled instruction on the line

 

struct IAnjutaDebuggerInstructionDisassembly

struct IAnjutaDebuggerInstructionDisassembly {
	guint size;
	IAnjutaDebuggerInstructionALine data[];
};

Represents a block of diassembled instructions

Members

guint size;

Number of line

 

IAnjutaDebuggerInstructionALine data[];

Array of all lines