gdb uses Guile's smob (small object) data type for all gdb objects (see Defining New Types (Smobs)). The smobs that gdb provides are called gsmobs.
Return the kind of the gsmob, e.g.,
<gdb:breakpoint>
, as a symbol.
Every gsmob
provides a common set of functions for extending
them in simple ways. Each gsmob
has a list of properties,
initially empty. These properties are akin to Guile's object properties,
but are stored with the gsmob
(see Object Properties).
Property names can be any eq?
-able value, but it is recommended
that they be symbols.
Set the value of property
property-name
to valuevalue
. The result is unspecified.
Return the value of property
property-name
. If the property isn't present then#f
is returned.
Return
#t
ifgsmob
has propertyproperty-name
. Otherwise return#f
.
gdb defines the following Scheme smobs:
<gdb:arch>
<gdb:block>
<gdb:block-symbols-iterator>
<gdb:breakpoint>
<gdb:exception>
<gdb:frame>
<gdb:iterator>
<gdb:lazy-string>
<gdb:objfile>
<gdb:pretty-printer>
<gdb:pretty-printer-worker>
<gdb:symbol>
<gdb:symtab>
<gdb:sal>
<gdb:type>
<gdb:field>
<gdb:value>
The following gsmobs are managed internally so that the Scheme function
eq?
may be applied to them.
<gdb:arch>
<gdb:block>
<gdb:breakpoint>
<gdb:frame>
<gdb:objfile>
<gdb:symbol>
<gdb:symtab>
<gdb:type>