コード例 #1
0
ファイル: ase-metric.c プロジェクト: hroptatyr/sxemacs
static void
ase_metric_prnt(Lisp_Object obj, Lisp_Object pcf, int unused)
{
	EMOD_ASE_DEBUG_METR("m:0x%08x@0x%08x (rc:%d)\n",
			    (unsigned int)(XASE_METRIC(obj)),
			    (unsigned int)obj, 1);
	write_c_string("#<", pcf);
	print_internal(XDYNACAT_TYPE(obj), pcf, unused);
	{
		if (NILP(XASE_METRIC_LDIST(obj))) {
			write_hex_ptr(XASE_METRIC_DIST(obj),pcf);
		} else {
			Lisp_Object ldist = XASE_METRIC_LDIST(obj);
			if (SYMBOLP(ldist)) {
				Lisp_String *name =
					symbol_name(XSYMBOL(ldist));
				write_fmt_string(pcf, " #'%s", string_data(name));
			} else if (SUBRP(ldist)) {
				const char *name = subr_name(XSUBR(ldist));
				write_fmt_string(pcf, " #'%s", name);
			} else {
				write_c_string(" #'(lambda ...)", pcf);
			}
		}
	}
	write_c_string(">", pcf);
	return;
}
コード例 #2
0
ファイル: console.c プロジェクト: kenny-thomas/xemacs
static void
print_console (Lisp_Object obj, Lisp_Object printcharfun,
	       int UNUSED (escapeflag))
{
  struct console *con = XCONSOLE (obj);

  if (print_readably)
    printing_unreadable_lisp_object (obj, XSTRING_DATA (con->name));

  write_fmt_string (printcharfun, "#<%s-console",
		    !CONSOLE_LIVE_P (con) ? "dead" : CONSOLE_TYPE_NAME (con));
  if (CONSOLE_LIVE_P (con) && !NILP (CONSOLE_CONNECTION (con)))
    write_fmt_string_lisp (printcharfun, " on %S", 1,
			   CONSOLE_CONNECTION (con));
  write_fmt_string (printcharfun, " 0x%x>", LISP_OBJECT_UID (obj));
}
コード例 #3
0
ファイル: opaque.c プロジェクト: kenny-thomas/xemacs
/* Should never, ever be called. (except by an external debugger) */
static void
print_opaque (Lisp_Object obj, Lisp_Object printcharfun,
	      int UNUSED (escapeflag))
{
  const Lisp_Opaque *p = XOPAQUE (obj);

  write_fmt_string
    (printcharfun,
     "#<INTERNAL OBJECT (XEmacs bug?) (opaque, size=%lu) 0x%x>",
     (long)(p->size), LISP_OBJECT_UID (obj));
}
コード例 #4
0
ファイル: opaque.c プロジェクト: kenny-thomas/xemacs
/* Should never, ever be called. (except by an external debugger) */
static void
print_opaque_ptr (Lisp_Object obj, Lisp_Object printcharfun,
		  int UNUSED (escapeflag))
{
  const Lisp_Opaque_Ptr *p = XOPAQUE_PTR (obj);

  write_fmt_string
    (printcharfun,
     "#<INTERNAL OBJECT (XEmacs bug?) (opaque-ptr, adr=0x%lx) 0x%x>",
     (long)(p->ptr), LISP_OBJECT_UID (obj));
}
コード例 #5
0
ファイル: casetab.c プロジェクト: kenny-thomas/xemacs
static void
print_case_table (Lisp_Object obj, Lisp_Object printcharfun,
		  int UNUSED (escapeflag))
{
  Lisp_Case_Table *ct = XCASE_TABLE (obj);
  if (print_readably)
    printing_unreadable_lisp_object (obj, 0);
  write_fmt_string_lisp
    (printcharfun, "#<case-table downcase=%s upcase=%s canon=%s eqv=%s ", 4,
     CASE_TABLE_DOWNCASE (ct), CASE_TABLE_UPCASE (ct),
     CASE_TABLE_CANON (ct), CASE_TABLE_EQV (ct));
  write_fmt_string (printcharfun, "0x%x>", LISP_OBJECT_UID (obj));
}
コード例 #6
0
ファイル: eldap.c プロジェクト: hroptatyr/sxemacs
static void
print_ldap(Lisp_Object obj, Lisp_Object printcharfun, int escapeflag)
{
	char buf[32];

	Lisp_LDAP *ldap = XLDAP(obj);

	if (print_readably)
		error("printing unreadable object #<ldap %s>",
		      XSTRING_DATA(ldap->host));

	write_c_string("#<ldap ", printcharfun);
	print_internal(ldap->host, printcharfun, 1);
	if (!ldap->ld)
		write_c_string("(dead) ", printcharfun);
	write_fmt_string(printcharfun, " 0x%lx>", (long)ldap);
}
コード例 #7
0
ファイル: database.c プロジェクト: hroptatyr/sxemacs
static void
print_database(Lisp_Object obj, Lisp_Object printcharfun, int escapeflag)
{
	Lisp_Database *db = XDATABASE(obj);
	Lisp_Object tmp1, tmp2;

	if (print_readably) {
		error("printing unreadable object #<database 0x%x>",
		      db->header.uid);
	}
	write_c_string("#<database \"", printcharfun);
	print_internal(db->fname, printcharfun, 0);

	tmp1 = db->funcs->get_type(db);
	tmp2 = db->funcs->get_subtype(db);
	write_fmt_string(printcharfun,
			 "\" (%s/%s/%s) 0x%x>",
			 (char *)string_data(XSYMBOL(tmp1)->name),
			 (char *)string_data(XSYMBOL(tmp2)->name),
			 (!DATABASE_LIVE_P(db) ? "closed" :
			  (db->access_ & O_WRONLY) ? "writeonly" :
			  (db->access_ & O_RDWR) ? "readwrite" : "readonly"),
			 db->header.uid);
}