GDB (xrefs)
Loading...
Searching...
No Matches
Functions | Variables
scm-gsmob.c File Reference
#include "defs.h"
#include "hashtab.h"
#include "objfiles.h"
#include "guile-internal.h"

Go to the source code of this file.

Functions

static hashval_t hash_scm_t_bits (const void *item)
 
static int eq_scm_t_bits (const void *item_lhs, const void *item_rhs)
 
static void register_gsmob (scm_t_bits gsmob_code)
 
static int gdbscm_is_gsmob (SCM scm)
 
scm_t_bits gdbscm_make_smob_type (const char *name, size_t size)
 
void gdbscm_init_gsmob (gdb_smob *base)
 
void gdbscm_init_chained_gsmob (chained_gdb_smob *base)
 
void gdbscm_init_eqable_gsmob (eqable_gdb_smob *base, SCM containing_scm)
 
static SCM gsscm_get_gsmob_arg_unsafe (SCM self, int arg_pos, const char *func_name)
 
static SCM gdbscm_gsmob_kind (SCM self)
 
htab_t gdbscm_create_eqable_gsmob_ptr_map (htab_hash hash_fn, htab_eq eq_fn)
 
eqable_gdb_smob ** gdbscm_find_eqable_gsmob_ptr_slot (htab_t htab, eqable_gdb_smob *base)
 
void gdbscm_fill_eqable_gsmob_ptr_slot (eqable_gdb_smob **slot, eqable_gdb_smob *base)
 
void gdbscm_clear_eqable_gsmob_ptr_slot (htab_t htab, eqable_gdb_smob *base)
 
void gdbscm_initialize_smobs (void)
 

Variables

static htab_t registered_gsmobs
 
static const scheme_function gsmob_functions []
 

Function Documentation

◆ eq_scm_t_bits()

static int eq_scm_t_bits ( const void * item_lhs,
const void * item_rhs )
static

Definition at line 67 of file scm-gsmob.c.

Referenced by gdbscm_initialize_smobs().

◆ gdbscm_clear_eqable_gsmob_ptr_slot()

void gdbscm_clear_eqable_gsmob_ptr_slot ( htab_t htab,
eqable_gdb_smob * base )

◆ gdbscm_create_eqable_gsmob_ptr_map()

htab_t gdbscm_create_eqable_gsmob_ptr_map ( htab_hash hash_fn,
htab_eq eq_fn )

◆ gdbscm_fill_eqable_gsmob_ptr_slot()

void gdbscm_fill_eqable_gsmob_ptr_slot ( eqable_gdb_smob ** slot,
eqable_gdb_smob * base )

◆ gdbscm_find_eqable_gsmob_ptr_slot()

eqable_gdb_smob ** gdbscm_find_eqable_gsmob_ptr_slot ( htab_t htab,
eqable_gdb_smob * base )

◆ gdbscm_gsmob_kind()

static SCM gdbscm_gsmob_kind ( SCM self)
static

Definition at line 189 of file scm-gsmob.c.

References FUNC_NAME, gsscm_get_gsmob_arg_unsafe(), and name.

◆ gdbscm_init_chained_gsmob()

void gdbscm_init_chained_gsmob ( chained_gdb_smob * base)

Definition at line 150 of file scm-gsmob.c.

References gdbscm_init_gsmob(), chained_gdb_smob::next, and chained_gdb_smob::prev.

◆ gdbscm_init_eqable_gsmob()

void gdbscm_init_eqable_gsmob ( eqable_gdb_smob * base,
SCM containing_scm )

◆ gdbscm_init_gsmob()

void gdbscm_init_gsmob ( gdb_smob * base)

◆ gdbscm_initialize_smobs()

void gdbscm_initialize_smobs ( void )

◆ gdbscm_is_gsmob()

static int gdbscm_is_gsmob ( SCM scm)
static

Definition at line 88 of file scm-gsmob.c.

References registered_gsmobs.

Referenced by gsscm_get_gsmob_arg_unsafe().

◆ gdbscm_make_smob_type()

scm_t_bits gdbscm_make_smob_type ( const char * name,
size_t size )

◆ gsscm_get_gsmob_arg_unsafe()

static SCM gsscm_get_gsmob_arg_unsafe ( SCM self,
int arg_pos,
const char * func_name )
static

Definition at line 175 of file scm-gsmob.c.

References gdbscm_is_gsmob().

Referenced by gdbscm_gsmob_kind().

◆ hash_scm_t_bits()

static hashval_t hash_scm_t_bits ( const void * item)
static

Definition at line 57 of file scm-gsmob.c.

Referenced by gdbscm_initialize_smobs().

◆ register_gsmob()

static void register_gsmob ( scm_t_bits gsmob_code)
static

Definition at line 76 of file scm-gsmob.c.

References registered_gsmobs.

Referenced by gdbscm_make_smob_type().

Variable Documentation

◆ gsmob_functions

const scheme_function gsmob_functions[]
static
Initial value:
=
{
{ "gdb-object-kind", 1, 0, 0, as_a_scm_t_subr (gdbscm_gsmob_kind),
"\
Return the kind of the GDB object, e.g., <gdb:breakpoint>, as a symbol." },
}
#define END_FUNCTIONS
static scm_t_subr as_a_scm_t_subr(SCM(*func)(void))
static SCM gdbscm_gsmob_kind(SCM self)
Definition scm-gsmob.c:189

Definition at line 261 of file scm-gsmob.c.

Referenced by gdbscm_initialize_smobs().

◆ registered_gsmobs

htab_t registered_gsmobs
static

Definition at line 52 of file scm-gsmob.c.

Referenced by gdbscm_initialize_smobs(), gdbscm_is_gsmob(), and register_gsmob().