Class
FoundryDebugger
Description [src]
abstract class Foundry.Debugger : Foundry.Contextual
implements Json.Serializable {
/* No available fields */
}
Abstract base class for debugger implementations.
FoundryDebugger provides 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.
Instance methods
foundry_debugger_dup_name
Gets a name for the provider that is expected to be displayed to users such as “GNU Debugger”.
foundry_debugger_dup_primary_thread
Gets a copy of the primary thread (the first thread created by the debugger).
unstable since: 1.1
foundry_debugger_initialize
This must be called before using the debugger instance and may only be called once.
foundry_debugger_interpret
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.
foundry_debugger_list_address_space
Gets a GListModel of FoundryDebuggerMappedRegion
that is updated based on the address mapping of the debuggee.
foundry_debugger_list_log_messages
Lists available log messages from the debugger instance.
unstable since: 1.1
foundry_debugger_list_traps
List known traps (breakpoints, countpoints, watchpoints) that have been registered with the debugger.
foundry_debugger_stop
Stop the debugger fully. This should at least cause the inferior to be sent a terminating signal.
Methods inherited from FoundryContextual (4)
foundry_contextual_acquire
This method provides a checked way to get a context for the contextual.
unstable since: 1.1
foundry_contextual_dup_context
Gets the FoundryContext that self is a part of while safely increasing
the reference count of the resulting FoundryContext by 1.
foundry_contextual_inhibit
Creates a new FoundryInhibitor that will keep the
FoundryContext alive and prevent shutdown until
foundry_inhibitor_uninhibit() is called or the
FoundryInhibitor is finalized, whichever comes first.
foundry_contextual_log
Methods inherited from JsonSerializable (8)
json_serializable_default_deserialize_property
Calls the default implementation of the Json.SerializableIface.deserialize_property
virtual function.
json_serializable_default_serialize_property
Calls the default implementation of the Json.SerializableIface.serialize_property
virtual function.
json_serializable_deserialize_property
Asks a JsonSerializable implementation to deserialize the
property contained inside property_node and place its value
into value.
json_serializable_find_property
Calls the Json.SerializableIface.find_property implementation on
the JsonSerializable instance, which will return the property
description for the given name.
json_serializable_get_property
Calls the Json.SerializableIface.get_property implementation
on the JsonSerializable instance, which will get the value of
the given property.
json_serializable_list_properties
Calls the Json.SerializableIface.list_properties implementation on
the JsonSerializable instance, which will return the list of serializable properties.
json_serializable_serialize_property
Asks a JsonSerializable implementation to serialize an object
property into a JSON node.
json_serializable_set_property
Calls the Json.SerializableIface.set_property implementation
on the JsonSerializable instance, which will set the property
with the given value.
Properties
Foundry.Debugger:primary-thread
The first thread that was created by the debugger.
unstable since: 1.1
Properties inherited from FoundryContextual (1)
Signals
Signals inherited from GObject (1)
GObject::notify
The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.
Class structure
struct FoundryDebuggerClass {
FoundryContextualClass parent_class;
char* (* dup_name) (
FoundryDebugger* self
);
DexFuture* (* initialize) (
FoundryDebugger* self
);
DexFuture* (* connect_to_target) (
FoundryDebugger* self,
FoundryDebuggerTarget* target
);
GListModel* (* list_address_space) (
FoundryDebugger* self
);
GListModel* (* list_modules) (
FoundryDebugger* self
);
GListModel* (* list_traps) (
FoundryDebugger* self
);
GListModel* (* list_threads) (
FoundryDebugger* self
);
GListModel* (* list_thread_groups) (
FoundryDebugger* self
);
DexFuture* (* disassemble) (
FoundryDebugger* self,
guint64 begin_address,
guint64 end_address
);
DexFuture* (* interpret) (
FoundryDebugger* self,
const char* command
);
DexFuture* (* interrupt) (
FoundryDebugger* self
);
DexFuture* (* stop) (
FoundryDebugger* self
);
DexFuture* (* send_signal) (
FoundryDebugger* self,
int signum
);
DexFuture* (* move) (
FoundryDebugger* self,
FoundryDebuggerMovement movement
);
DexFuture* (* trap) (
FoundryDebugger* self,
FoundryDebuggerTrapParams* params
);
gboolean (* can_move) (
FoundryDebugger* self,
FoundryDebuggerMovement movement
);
void (* event) (
FoundryDebugger* self,
FoundryDebuggerEvent* event
);
GListModel* (* list_log_messages) (
FoundryDebugger* self
);
FoundryDebuggerThread* (* dup_primary_thread) (
FoundryDebugger* self
);
gboolean (* has_terminated) (
FoundryDebugger* self
);
}
No description available.
Class members
parent_class: FoundryContextualClassNo description available.
dup_name: char* (* dup_name) ( FoundryDebugger* self )No description available.
initialize: DexFuture* (* initialize) ( FoundryDebugger* self )No description available.
connect_to_target: DexFuture* (* connect_to_target) ( FoundryDebugger* self, FoundryDebuggerTarget* target )No description available.
list_address_space: GListModel* (* list_address_space) ( FoundryDebugger* self )No description available.
list_modules: GListModel* (* list_modules) ( FoundryDebugger* self )No description available.
list_traps: GListModel* (* list_traps) ( FoundryDebugger* self )No description available.
list_threads: GListModel* (* list_threads) ( FoundryDebugger* self )No description available.
list_thread_groups: GListModel* (* list_thread_groups) ( FoundryDebugger* self )No description available.
disassemble: DexFuture* (* disassemble) ( FoundryDebugger* self, guint64 begin_address, guint64 end_address )No description available.
interpret: DexFuture* (* interpret) ( FoundryDebugger* self, const char* command )No description available.
interrupt: DexFuture* (* interrupt) ( FoundryDebugger* self )No description available.
stop: DexFuture* (* stop) ( FoundryDebugger* self )No description available.
send_signal: DexFuture* (* send_signal) ( FoundryDebugger* self, int signum )No description available.
move: DexFuture* (* move) ( FoundryDebugger* self, FoundryDebuggerMovement movement )No description available.
trap: DexFuture* (* trap) ( FoundryDebugger* self, FoundryDebuggerTrapParams* params )No description available.
can_move: gboolean (* can_move) ( FoundryDebugger* self, FoundryDebuggerMovement movement )No description available.
event: void (* event) ( FoundryDebugger* self, FoundryDebuggerEvent* event )No description available.
list_log_messages: GListModel* (* list_log_messages) ( FoundryDebugger* self )No description available.
dup_primary_thread: FoundryDebuggerThread* (* dup_primary_thread) ( FoundryDebugger* self )No description available.
has_terminated: gboolean (* has_terminated) ( FoundryDebugger* self )No description available.
Virtual methods
Foundry.DebuggerClass.can_move
Determines of the debugger can currently make movement.
deprecated: 1.1
Foundry.DebuggerClass.dup_name
Gets a name for the provider that is expected to be displayed to users such as “GNU Debugger”.
Foundry.DebuggerClass.dup_primary_thread
Gets a copy of the primary thread (the first thread created by the debugger).
unstable since: 1.1
Foundry.DebuggerClass.initialize
This must be called before using the debugger instance and may only be called once.
Foundry.DebuggerClass.interpret
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.
Foundry.DebuggerClass.list_address_space
Gets a GListModel of FoundryDebuggerMappedRegion
that is updated based on the address mapping of the debuggee.
Foundry.DebuggerClass.list_log_messages
Lists available log messages from the debugger instance.
unstable since: 1.1
Foundry.DebuggerClass.list_traps
List known traps (breakpoints, countpoints, watchpoints) that have been registered with the debugger.
Foundry.DebuggerClass.stop
Stop the debugger fully. This should at least cause the inferior to be sent a terminating signal.