86 if (p_smob->
pspace != NULL)
96 scm_puts (
"{invalid}", port);
99 scm_remember_upto_here_1 (self);
192 const char *func_name)
205 return p_smob->
pspace != NULL;
214 const char *func_name)
222 _(
"<gdb:progspace>"));
239 return scm_from_bool (p_smob->
pspace != NULL);
287 result = scm_cons (item, result);
294 return scm_reverse_x (result, SCM_EOL);
318 SCM_ASSERT_TYPE (
gdbscm_is_true (scm_list_p (printers)), printers,
323 return SCM_UNSPECIFIED;
353 result = scm_cons (item, result);
356 return scm_reverse_x (result, SCM_EOL);
365Return #t if the object is a <gdb:objfile> object." },
369Return #t if the progspace is valid (hasn't been deleted from gdb)." },
373Return the name of the main symbol file of the progspace." },
377Return the list of objfiles associated with the progspace.\n\
378Objfiles that are separate debug objfiles are not included in the result.\n\
379The order of appearance of objfiles in the result is arbitrary." },
381 {
"progspace-pretty-printers", 1, 0, 0,
384Return a list of pretty-printers of the progspace." },
386 {
"set-progspace-pretty-printers!", 2, 0, 0,
389Set the list of pretty-printers of the progspace." },
393Return the current program space if there is one or #f if there isn't one." },
397Return a list of all program spaces." },
static struct parser_state * pstate
void set(unsigned key, void *datum)
#define gdbscm_is_true(scm)
void gdbscm_init_gsmob(gdb_smob *base)
void gdbscm_invalid_object_error(const char *subr, int arg_pos, SCM bad_value, const char *error) ATTRIBUTE_NORETURN
SCM ofscm_scm_from_objfile(struct objfile *objfile)
void gdbscm_printf(SCM port, const char *format,...) ATTRIBUTE_PRINTF(2
static SCM scm_new_smob(scm_t_bits tc, scm_t_bits data)
void gdbscm_define_functions(const scheme_function *, int is_public)
scm_t_bits gdbscm_make_smob_type(const char *name, size_t size)
static scm_t_subr as_a_scm_t_subr(SCM(*func)(void))
SCM gdbscm_scm_from_c_string(const char *string)
const char * objfile_name(const struct objfile *objfile)
struct program_space * current_program_space
std::vector< struct program_space * > program_spaces
SCM psscm_pspace_smob_pretty_printers(const pspace_smob *p_smob)
static SCM gdbscm_current_progspace(void)
static SCM psscm_make_pspace_smob(void)
static SCM gdbscm_progspaces(void)
static SCM gdbscm_progspace_objfiles(SCM self)
void gdbscm_initialize_pspaces(void)
pspace_smob * psscm_pspace_smob_from_pspace(struct program_space *pspace)
static scm_t_bits pspace_smob_tag
static const registry< program_space >::key< pspace_smob, psscm_deleter > psscm_pspace_data_key
static int psscm_is_valid(pspace_smob *p_smob)
static const char pspace_smob_name[]
static SCM psscm_get_pspace_arg_unsafe(SCM self, int arg_pos, const char *func_name)
static SCM gdbscm_progspace_filename(SCM self)
static int psscm_is_pspace(SCM scm)
static SCM gdbscm_progspace_p(SCM scm)
static pspace_smob * psscm_get_valid_pspace_smob_arg_unsafe(SCM self, int arg_pos, const char *func_name)
static pspace_smob * psscm_get_pspace_smob_arg_unsafe(SCM self, int arg_pos, const char *func_name)
static int psscm_print_pspace_smob(SCM self, SCM port, scm_print_state *pstate)
SCM psscm_scm_from_pspace(struct program_space *pspace)
static SCM gdbscm_set_progspace_pretty_printers_x(SCM self, SCM printers)
static SCM gdbscm_progspace_valid_p(SCM self)
static const scheme_function pspace_functions[]
static SCM gdbscm_progspace_pretty_printers(SCM self)
struct objfile * separate_debug_objfile_backlink
struct program_space * pspace
objfiles_range objfiles()
struct objfile * symfile_object_file
struct program_space * pspace
void operator()(pspace_smob *p_smob)