static int pascm_print_param_smob (SCM self, SCM port, scm_print_state *pstate) { param_smob *p_smob = (param_smob *) SCM_SMOB_DATA (self); SCM value; gdbscm_printf (port, "#<%s", param_smob_name); gdbscm_printf (port, " %s", p_smob->name); if (! pascm_is_valid (p_smob)) scm_puts (" {invalid}", port); gdbscm_printf (port, " %s ", pascm_param_type_name (p_smob->type)); value = pascm_param_value (p_smob->type, &p_smob->value, GDBSCM_ARG_NONE, NULL); scm_display (value, port); scm_puts (">", port); scm_remember_upto_here_1 (self); /* Non-zero means success. */ return 1; }
static int dynl_obj_print (SCM exp, SCM port, scm_print_state *pstate) { scm_puts ("#<dynamic-object ", port); scm_iprin1 (DYNL_FILENAME (exp), port, pstate); if (DYNL_HANDLE (exp) == NULL) scm_puts (" (unlinked)", port); scm_putc ('>', port); return 1; }
static int print_client(SCM client_smob, SCM port, scm_print_state *pstate) { client_t *client = (client_t *)SCM_SMOB_DATA(client_smob); scm_puts("#<client ", port); scm_display(scm_from_unsigned_integer(client->window), port); scm_puts(">", port); /* success */ return 1; }
static int print_board (SCM board_smob, SCM port, scm_print_state *pstate) { struct board *board = (struct board *)SCM_SMOB_DATA(board_smob); scm_puts("#<board ", port); scm_display(scm_from_int(board->width), port); scm_puts(":", port); scm_display(scm_from_int(board->height), port); scm_puts(">", port); return 1; }
static int print_image (SCM image_smob, SCM port, scm_print_state *pstate) { struct image *image = (struct image *) SCM_SMOB_DATA (image_smob); scm_puts ("#<image ", port); scm_display (image->name, port); scm_puts (">", port); /* non-zero means success */ return 1; }
static int print_cell (SCM cell_smob, SCM port, scm_print_state *pstate) { struct cell *cell = (struct cell *) SCM_SMOB_DATA(cell_smob); scm_puts("#<cell ", port); scm_display(scm_from_int(cell->x), port); scm_puts(":", port); scm_display(scm_from_int(cell->y), port); scm_puts(" ", port); scm_display(scm_from_int(cell->status), port); scm_puts(">", port); return 1; }
static int print_key (SCM smob, SCM port, scm_print_state *pstate) { struct key_data *key_data = _scm_to_key_data (smob); SCM type = guile_ssh_key_get_type (smob); scm_puts ("#<key ", port); scm_display (type, port); scm_putc (' ', port); scm_puts (_private_key_p (key_data) ? "(private) " : "(public) ", port); scm_display (_scm_object_hex_address (smob), port); scm_puts (">", port); return 1; }
static int ppscm_print_pretty_printer_smob (SCM self, SCM port, scm_print_state *pstate) { pretty_printer_smob *pp_smob = (pretty_printer_smob *) SCM_SMOB_DATA (self); gdbscm_printf (port, "#<%s ", pretty_printer_smob_name); scm_write (pp_smob->name, port); scm_puts (gdbscm_is_true (pp_smob->enabled) ? " enabled" : " disabled", port); scm_puts (">", port); scm_remember_upto_here_1 (self); /* Non-zero means success. */ return 1; }
static int exscm_print_exception_smob (SCM self, SCM port, scm_print_state *pstate) { exception_smob *e_smob = (exception_smob *) SCM_SMOB_DATA (self); gdbscm_printf (port, "#<%s ", exception_smob_name); scm_write (e_smob->key, port); scm_puts (" ", port); scm_write (e_smob->args, port); scm_puts (">", port); scm_remember_upto_here_1 (self); /* Non-zero means success. */ return 1; }
static int bpscm_print_breakpoint_smob (SCM self, SCM port, scm_print_state *pstate) { breakpoint_smob *bp_smob = (breakpoint_smob *) SCM_SMOB_DATA (self); struct breakpoint *b = bp_smob->bp; gdbscm_printf (port, "#<%s", breakpoint_smob_name); /* Only print what we export to the user. The rest are possibly internal implementation details. */ gdbscm_printf (port, " #%d", bp_smob->number); /* Careful, the breakpoint may be invalid. */ if (b != NULL) { gdbscm_printf (port, " %s %s %s", bpscm_type_to_string (b->type), bpscm_enable_state_to_string (b->enable_state), b->silent ? "silent" : "noisy"); gdbscm_printf (port, " hit:%d", b->hit_count); gdbscm_printf (port, " ignore:%d", b->ignore_count); if (b->addr_string != NULL) gdbscm_printf (port, " @%s", b->addr_string); } scm_puts (">", port); scm_remember_upto_here_1 (self); /* Non-zero means success. */ return 1; }
SWIGINTERN int print_member_function_swig (SCM swig_smob, SCM port, scm_print_state *pstate) { swig_type_info *type; type = (swig_type_info *) SCM_CELL_WORD_2(swig_smob); if (type) { scm_puts((char *) "#<", port); scm_puts((char *) "swig-member-function-pointer ", port); scm_puts((char *) SWIG_TypePrettyName(type), port); scm_puts((char *) " >", port); /* non-zero means success */ return 1; } else { return 0; } }
/*! \brief Process a Scheme error into the log and/or a GError * \par Function Description * Process a captured Guile exception with the given \a s_key and \a * s_args, and optionally the stack trace \a s_stack. The stack trace * and source location are logged, and if a GError return location \a * err is provided, it is populated with an informative error message. */ static void process_error_stack (SCM s_stack, SCM s_key, SCM s_args, GError **err) { char *long_message; char *short_message; SCM s_port, s_subr, s_message, s_message_args, s_rest, s_location; /* Split s_args up */ s_rest = s_args; s_subr = scm_car (s_rest); s_rest = scm_cdr (s_rest); s_message = scm_car (s_rest); s_rest = scm_cdr (s_rest); s_message_args = scm_car (s_rest); s_rest = scm_cdr (s_rest); /* Capture short error message */ s_port = scm_open_output_string (); scm_display_error_message (s_message, s_message_args, s_port); short_message = scm_to_utf8_string (scm_get_output_string (s_port)); scm_close_output_port (s_port); /* Capture long error message (including possible backtrace) */ s_port = scm_open_output_string (); if (scm_is_true (scm_stack_p (s_stack))) { scm_puts (_("\nBacktrace:\n"), s_port); scm_display_backtrace (s_stack, s_port, SCM_BOOL_F, SCM_BOOL_F); scm_puts ("\n", s_port); } s_location = SCM_BOOL_F; #ifdef HAVE_SCM_DISPLAY_ERROR_STACK s_location = s_stack; #endif /* HAVE_SCM_DISPLAY_ERROR_STACK */ #ifdef HAVE_SCM_DISPLAY_ERROR_FRAME s_location = scm_is_true (s_stack) ? scm_stack_ref (s_stack, SCM_INUM0) : SCM_BOOL_F; #endif /* HAVE_SCM_DISPLAY_ERROR_FRAME */ scm_display_error (s_location, s_port, s_subr, s_message, s_message_args, s_rest); long_message = scm_to_utf8_string (scm_get_output_string (s_port)); scm_close_output_port (s_port); /* Send long message to log */ s_log_message ("%s", long_message); /* Populate any GError */ g_set_error (err, EDA_ERROR, EDA_ERROR_SCHEME, "%s", short_message); }
static int ragnarok_print_epoll_event_set(SCM ees_smob ,SCM port, scm_print_state *pstate) { scm_rag_epoll_event_set *ees = (scm_rag_epoll_event_set *)SCM_SMOB_DATA(ees_smob); scm_puts("#<rag_epoll_event_set_smob 0x" ,port); scm_intprint((long)ees ,16 ,port); scm_puts(" epfd:" ,port); scm_intprint((int)ees->epfd ,10 ,port); scm_puts(" size:" ,port); scm_intprint((unsigned int)ees->size ,10 ,port); scm_puts(" count:" ,port); scm_intprint((unsigned int)ees->count ,10 ,port); scm_puts(" >" ,port); return 1; }
/*! \brief Print a representation of a #GschemToplevel smob. * \par Function Description * Outputs a string representing the \a smob to a Scheme output * \a port. The format used is "#<gschem-window b7ef65d0>". * * Used internally to Guile. */ static int smob_print (SCM smob, SCM port, scm_print_state *pstate) { gchar *hexstring; scm_puts ("#<gschem-window", port); scm_dynwind_begin (0); hexstring = g_strdup_printf (" %zx", SCM_SMOB_DATA (smob)); scm_dynwind_unwind_handler (g_free, hexstring, SCM_F_WIND_EXPLICITLY); scm_puts (hexstring, port); scm_dynwind_end (); scm_puts (">", port); /* Non-zero means success */ return 1; }
static void cmdscm_bad_completion_result (const char *msg, SCM completion) { SCM port = scm_current_error_port (); scm_puts (msg, port); scm_display (completion, port); scm_newline (port); }
static int scm_print_rag_select_event_set(SCM event_set_smob ,SCM port, scm_print_state *pstate) { scm_rag_select_event_set *ses = (scm_rag_select_event_set*)SCM_SMOB_DATA(event_set_smob); scm_puts("#<rag_select_event_set_smob 0x" ,port); scm_intprint((long)ses ,16 ,port) ; scm_puts(" nfds:"); scm_intprint((int)ses->nfds ,10 ,port); scm_puts(" size:"); scm_intprint((unsigned int)ses->size ,10 ,port); scm_puts(" count:"); scm_intprint((unsigned int)ses->count ,10 ,port); scm_puts(" >", port); return 1; }
/*! \brief Print a representation of a gEDA smob. * \par Function Description * Outputs a string representing the gEDA \a smob to a Scheme output * \a port. The format used is "#<geda-TYPE b7ef65d0>", where TYPE is * a string describing the C structure represented by the gEDA smob. * * Used internally to Guile. */ static int smob_print (SCM smob, SCM port, scm_print_state *pstate) { gchar *hexstring; scm_puts ("#<geda-", port); switch (EDASCM_SMOB_TYPE (smob)) { case GEDA_SMOB_TOPLEVEL: scm_puts ("toplevel", port); break; case GEDA_SMOB_PAGE: scm_puts ("page", port); break; case GEDA_SMOB_OBJECT: scm_puts ("object", port); break; case GEDA_SMOB_CONFIG: scm_puts ("config", port); break; case GEDA_SMOB_CLOSURE: scm_puts ("closure", port); break; default: g_critical ("%s: received bad smob flags.", __FUNCTION__); scm_puts ("unknown", port); } if (SCM_SMOB_DATA (smob) != 0) { scm_dynwind_begin (0); hexstring = g_strdup_printf (" %p", (void *) SCM_SMOB_DATA (smob)); scm_dynwind_unwind_handler (g_free, hexstring, SCM_F_WIND_EXPLICITLY); scm_puts (hexstring, port); scm_dynwind_end (); } else { scm_puts (" (null)", port); } scm_puts (">", port); /* Non-zero means success */ return 1; }
static int print_gconf (SCM obj, SCM port, scm_print_state *pstate) { GConfEngine* conf = SCM_TO_GCONF(obj); scm_puts ("#<GConf configuration object>", port); /* non-zero means success */ return 1; }
static int print_sample (SCM sample_smob, SCM port, scm_print_state *pstate) { // Sample *sample = (Sample *) SCM_SMOB_DATA (sample_smob); scm_puts ("#<Sample >", port); /* non-zero means success */ return 1; }
static int print_game (SCM game_smob, SCM port, scm_print_state *pstate) { //Game *game = (Game *) SCM_SMOB_DATA (game_smob); scm_puts ("#<Game>", port); /* non-zero means success */ return 1; }
void gdbscm_printf (SCM port, const char *format, ...) { va_list args; va_start (args, format); std::string string = string_vprintf (format, args); va_end (args); scm_puts (string.c_str (), port); }
static int ppscm_print_pretty_printer_worker_smob (SCM self, SCM port, scm_print_state *pstate) { pretty_printer_worker_smob *w_smob = (pretty_printer_worker_smob *) SCM_SMOB_DATA (self); gdbscm_printf (port, "#<%s ", pretty_printer_worker_smob_name); scm_write (w_smob->display_hint, port); scm_puts (" ", port); scm_write (w_smob->to_string, port); scm_puts (" ", port); scm_write (w_smob->children, port); scm_puts (">", port); scm_remember_upto_here_1 (self); /* Non-zero means success. */ return 1; }
static int srcprops_print (SCM obj, SCM port, scm_print_state *pstate) { int writingp = SCM_WRITINGP (pstate); scm_puts ("#<srcprops ", port); SCM_SET_WRITINGP (pstate, 1); scm_iprin1 (scm_srcprops_to_alist (obj), port, pstate); SCM_SET_WRITINGP (pstate, writingp); scm_putc ('>', port); return 1; }
static int cmdscm_print_command_smob (SCM self, SCM port, scm_print_state *pstate) { command_smob *c_smob = (command_smob *) SCM_SMOB_DATA (self); gdbscm_printf (port, "#<%s", command_smob_name); gdbscm_printf (port, " %s", c_smob->name != NULL ? c_smob->name : "{unnamed}"); if (! cmdscm_is_valid (c_smob)) scm_puts (" {invalid}", port); scm_puts (">", port); scm_remember_upto_here_1 (self); /* Non-zero means success. */ return 1; }
int print_Segment2(SCM smob, SCM port, scm_print_state * pstate) { char buff[128]; Segment2 * seg; scm_assert_smob_type(tag_Segment2, smob); seg = (Segment2 *)SCM_SMOB_DATA(smob); Serialize_Seg(SEXP, seg, buff, 128); scm_puts(buff, port); return (1); }
void gdbscm_printf (SCM port, const char *format, ...) { va_list args; char *string; va_start (args, format); string = xstrvprintf (format, args); va_end (args); scm_puts (string, port); xfree (string); }
static int print_sqmatrix(SCM obj, SCM port, scm_print_state *pstate) { char buf[256]; sqmatrix *pm = SQMATRIX(obj); (void) pstate; /* unused argument */ scm_puts("#<sqmatrix ", port); sprintf(buf, "%dx%d", pm->p, pm->p); scm_puts(buf, port); #ifdef SCALAR_COMPLEX scm_puts(" complex", port); #else scm_puts(" real", port); #endif if (pm->alloc_p > pm->p) { sprintf(buf, ", %dx%d alloc", pm->alloc_p, pm->alloc_p); scm_puts(buf, port); } scm_putc('>', port); return 1; }
static int print_evectmatrix(SCM obj, SCM port, scm_print_state *pstate) { char buf[256]; evectmatrix *pm = EVECTMATRIX(obj); (void) pstate; /* unused argument */ scm_puts("#<evectmatrix ", port); sprintf(buf, "(%dx%d)x%d", pm->N, pm->c, pm->p); scm_puts(buf, port); #ifdef SCALAR_COMPLEX scm_puts(" complex", port); #else scm_puts(" real", port); #endif if (pm->localN < pm->N) { sprintf(buf, ", (%dx%d)x%d local", pm->localN, pm->c, pm->p); scm_puts(buf, port); } scm_putc('>', port); return 1; }
static int print_field_smob(SCM obj, SCM port, scm_print_state *pstate) { char buf[256]; field_smob *pf = FIELD(obj); (void) pstate; /* unused argument */ scm_puts("#<field ", port); sprintf(buf, "%dx%dx%d", pf->nx, pf->ny, pf->nz); scm_puts(buf, port); switch (pf->type) { case RSCALAR_FIELD_SMOB: scm_puts(" real scalar field", port); break; case CSCALAR_FIELD_SMOB: scm_puts(" complex scalar field", port); break; case CVECTOR_FIELD_SMOB: scm_puts(" complex vector field", port); break; } if (pf->local_ny < pf->ny) { sprintf(buf, ", y=%d-%d local", pf->local_y_start, pf->local_y_start + pf->local_ny - 1); scm_puts(buf, port); } scm_putc('>', port); return 1; }
static int mu_port_print (SCM exp, SCM port, scm_print_state *pstate) { struct mu_port *mp = MU_PORT (exp); mu_off_t size = 0; scm_puts ("#<", port); scm_print_port_mode (exp, port); scm_puts ("mu-port", port); if (mu_stream_size (mp->stream, &size) == 0) { char *buf; if (mu_asprintf (&buf, " %5lu", (unsigned long) size) == 0) { scm_puts (buf, port); scm_puts (" chars", port); free (buf); } } scm_putc ('>', port); return 1; }