Foundry.Debugger¶
- Subclasses:
Methods¶
- Inherited:
Foundry.Contextual (4), GObject.Object (37), Json.Serializable (8)
- Structs:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Virtual Methods¶
- Inherited:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Properties¶
- Inherited:
Name |
Type |
Flags |
Short Description |
|---|---|---|---|
r |
|||
r |
|||
r |
|||
r |
|||
r |
|||
r |
|||
r |
Signals¶
- Inherited:
Name |
Short Description |
|---|---|
Fields¶
- Inherited:
Name |
Type |
Access |
Description |
|---|---|---|---|
parent_instance |
r |
Class Details¶
- class Foundry.Debugger(**kwargs)¶
- Bases:
- Abstract:
Yes
- Structure:
Abstract base class for debugger implementations.
Foundry.Debuggerprovides the core interface for debugging operations including breakpoint management, variable inspection, and execution control. Concrete implementations handle specific debugging protocols and backends while maintaining a consistent API.- can_move(movement)¶
- Parameters:
movement (
Foundry.DebuggerMovement) –- Returns:
Trueif movement can be performed- Return type:
Determines of the debugger can currently make movement.
Use [method`Foundry`.DebuggerThread.can_move] in new code.
Deprecated since version 1.1.
- connect_to_target(target)¶
- Parameters:
target (
Foundry.DebuggerTarget) – a [class`Foundry`.DebuggerTarget]- Returns:
[class`Dex`.Future] that resolves to any value or rejects with error.
- Return type:
Connects to target.
Not all debuggers may not support all debugger target types.
- disassemble(begin_address, end_address)¶
- Parameters:
- Returns:
a [class`Dex`.Future] that resolves to a [iface`Gio`.ListModel] of [class`Foundry`.DebuggerInstruction].
- Return type:
Disassemble the instructions found in the address range.
- dup_name()¶
- Returns:
the name of the provider
- Return type:
Gets a name for the provider that is expected to be displayed to users such as “GNU Debugger”.
- dup_primary_thread()¶
- Returns:
a [class`Foundry`.DebuggerThread] or
None- Return type:
Gets a copy of the primary thread (the first thread created by the debugger).
New in version 1.1.
- emit_event(event)¶
- Parameters:
event (
Foundry.DebuggerEvent) –
This should only be used by debugger implementations.
- initialize()¶
- Returns:
[class`Dex`.Future] that resolves to any value or rejects with error.
- Return type:
This must be called before using the debugger instance and may only be called once.
Subclasses are expected to perform capability negotiation as part of this request.
- interpret(command)¶
- Parameters:
command (
str) – the command to interpret- Returns:
a [class`Dex`.Future] that resolves to any value or rejects with error.
- Return type:
Requests that the debugger interpret a command. This is typically the REPL of a debugger and can be used to bridge the normal interpreter of a debugger to the the user.
- interrupt()¶
- Returns:
a [class`Dex`.Future] that resolves to any value or rejects with error.
- Return type:
This should cause the child process to pause.
Use [method`Foundry`.DebuggerThread.interrupt] in new code.
Deprecated since version 1.1.
- list_address_space()¶
- Return type:
Gets a [iface`Gio`.ListModel] of [class`Foundry`.DebuggerMappedRegion] that is updated based on the address mapping of the debuggee.
- list_log_messages()¶
- Returns:
a [iface`Gio`.ListModel] of [class`Foundry`.DebuggerLogMessage].
- Return type:
Lists available log messages from the debugger instance.
New in version 1.1.
- list_modules()¶
- Returns:
a [iface`Gio`.ListModel] of [class`Foundry`.DebuggerTrap]
- Return type:
Lists the known modules loaded into the address space.
- list_thread_groups()¶
- Returns:
a [iface`Gio`.ListModel] of [class`Foundry`.DebuggerThreadGroup]
- Return type:
List thread groups known to the debugger.
- list_threads()¶
- Returns:
a [iface`Gio`.ListModel] of [class`Foundry`.DebuggerThread]
- Return type:
List threads known to the debugger.
- list_traps()¶
- Returns:
a [iface`Gio`.ListModel] of [class`Foundry`.DebuggerTrap]
- Return type:
List known traps (breakpoints, countpoints, watchpoints) that have been registered with the debugger.
- move(movement)¶
- Parameters:
movement (
Foundry.DebuggerMovement) – how to move within the debugger- Returns:
a [class`Dex`.Future] that resolves to any value or rejects with error.
- Return type:
Use [method`Foundry`.DebuggerThread.move] in new code.
Deprecated since version 1.1.
- send_signal(signum)¶
- Parameters:
signum (
int) –- Returns:
a [class`Dex`.Future] that resolves to any value or rejects with error.
- Return type:
Send signal signum to debuggee.
- stop()¶
- Returns:
a [class`Dex`.Future] that resolves to any value or rejects with error.
- Return type:
Stop the debugger fully. This should at least cause the inferior to be sent a terminating signal.
- trap(params)¶
- Parameters:
params (
Foundry.DebuggerTrapParams) – the params for creating the new trap- Returns:
a [class`Dex`.Future] that resolves to any value or rejects with error.
- Return type:
Register a new breakpoint based on params.
- do_can_move(movement) virtual¶
- Parameters:
movement (
Foundry.DebuggerMovement) –- Returns:
Trueif movement can be performed- Return type:
Determines of the debugger can currently make movement.
Use [method`Foundry`.DebuggerThread.can_move] in new code.
Deprecated since version 1.1.
- do_connect_to_target(target) virtual¶
- Parameters:
target (
Foundry.DebuggerTarget) – a [class`Foundry`.DebuggerTarget]- Returns:
[class`Dex`.Future] that resolves to any value or rejects with error.
- Return type:
Connects to target.
Not all debuggers may not support all debugger target types.
- do_disassemble(begin_address, end_address) virtual¶
- Parameters:
- Returns:
a [class`Dex`.Future] that resolves to a [iface`Gio`.ListModel] of [class`Foundry`.DebuggerInstruction].
- Return type:
Disassemble the instructions found in the address range.
- do_dup_name() virtual¶
- Returns:
the name of the provider
- Return type:
Gets a name for the provider that is expected to be displayed to users such as “GNU Debugger”.
- do_dup_primary_thread() virtual¶
- Returns:
a [class`Foundry`.DebuggerThread] or
None- Return type:
Gets a copy of the primary thread (the first thread created by the debugger).
New in version 1.1.
- do_event(event) virtual¶
- Parameters:
event (
Foundry.DebuggerEvent) –
- do_initialize() virtual¶
- Returns:
[class`Dex`.Future] that resolves to any value or rejects with error.
- Return type:
This must be called before using the debugger instance and may only be called once.
Subclasses are expected to perform capability negotiation as part of this request.
- do_interpret(command) virtual¶
- Parameters:
command (
str) – the command to interpret- Returns:
a [class`Dex`.Future] that resolves to any value or rejects with error.
- Return type:
Requests that the debugger interpret a command. This is typically the REPL of a debugger and can be used to bridge the normal interpreter of a debugger to the the user.
- do_interrupt() virtual¶
- Returns:
a [class`Dex`.Future] that resolves to any value or rejects with error.
- Return type:
This should cause the child process to pause.
Use [method`Foundry`.DebuggerThread.interrupt] in new code.
Deprecated since version 1.1.
- do_list_address_space() virtual¶
- Return type:
Gets a [iface`Gio`.ListModel] of [class`Foundry`.DebuggerMappedRegion] that is updated based on the address mapping of the debuggee.
- do_list_log_messages() virtual¶
- Returns:
a [iface`Gio`.ListModel] of [class`Foundry`.DebuggerLogMessage].
- Return type:
Lists available log messages from the debugger instance.
New in version 1.1.
- do_list_modules() virtual¶
- Returns:
a [iface`Gio`.ListModel] of [class`Foundry`.DebuggerTrap]
- Return type:
Lists the known modules loaded into the address space.
- do_list_thread_groups() virtual¶
- Returns:
a [iface`Gio`.ListModel] of [class`Foundry`.DebuggerThreadGroup]
- Return type:
List thread groups known to the debugger.
- do_list_threads() virtual¶
- Returns:
a [iface`Gio`.ListModel] of [class`Foundry`.DebuggerThread]
- Return type:
List threads known to the debugger.
- do_list_traps() virtual¶
- Returns:
a [iface`Gio`.ListModel] of [class`Foundry`.DebuggerTrap]
- Return type:
List known traps (breakpoints, countpoints, watchpoints) that have been registered with the debugger.
- do_move(movement) virtual¶
- Parameters:
movement (
Foundry.DebuggerMovement) – how to move within the debugger- Returns:
a [class`Dex`.Future] that resolves to any value or rejects with error.
- Return type:
Use [method`Foundry`.DebuggerThread.move] in new code.
Deprecated since version 1.1.
- do_send_signal(signum) virtual¶
- Parameters:
signum (
int) –- Returns:
a [class`Dex`.Future] that resolves to any value or rejects with error.
- Return type:
Send signal signum to debuggee.
- do_stop() virtual¶
- Returns:
a [class`Dex`.Future] that resolves to any value or rejects with error.
- Return type:
Stop the debugger fully. This should at least cause the inferior to be sent a terminating signal.
- do_trap(params) virtual¶
- Parameters:
params (
Foundry.DebuggerTrapParams) – the params for creating the new trap- Returns:
a [class`Dex`.Future] that resolves to any value or rejects with error.
- Return type:
Register a new breakpoint based on params.
Signal Details¶
- Foundry.Debugger.signals.event(debugger, object)¶
- Signal Name:
event- Flags:
- Parameters:
debugger (
Foundry.Debugger) – The object which received the signalobject (
Foundry.DebuggerEvent) –
Property Details¶
- Foundry.Debugger.props.address_space¶
- Name:
address-space- Type:
- Default Value:
- Flags:
- Foundry.Debugger.props.log_messages¶
- Name:
log-messages- Type:
- Default Value:
- Flags:
- Foundry.Debugger.props.modules¶
- Name:
modules- Type:
- Default Value:
- Flags:
- Foundry.Debugger.props.primary_thread¶
- Name:
primary-thread- Type:
- Default Value:
- Flags:
The first thread that was created by the debugger.
New in version 1.1.
- Foundry.Debugger.props.terminated¶
-
If the debuggee has terminated.
New in version 1.1.
- Foundry.Debugger.props.threads¶
- Name:
threads- Type:
- Default Value:
- Flags:
New in version 1.1.
- Foundry.Debugger.props.traps¶
- Name:
traps- Type:
- Default Value:
- Flags: