]> git.eshelyaron.com Git - emacs.git/commitdiff
(syms_of_data): Define Qfont_spec, Qfont_entity, and
authorChong Yidong <cyd@stupidchicken.com>
Sat, 21 Feb 2009 13:38:59 +0000 (13:38 +0000)
committerChong Yidong <cyd@stupidchicken.com>
Sat, 21 Feb 2009 13:38:59 +0000 (13:38 +0000)
Qfont_object.
(Ftype_of): Recognize font objects.

src/data.c

index bf3fb91fcc381ce329cb1c709ae7ba67c3200acd..6221b78760800afe14de8b1892a4031779eb3887 100644 (file)
@@ -30,6 +30,7 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 #include "frame.h"
 #include "syssignal.h"
 #include "termhooks.h"  /* For FRAME_KBOARD reference in y-or-n-p. */
+#include "font.h"
 
 #ifdef STDC_HEADERS
 #include <float.h>
@@ -85,6 +86,7 @@ Lisp_Object Qprocess;
 static Lisp_Object Qcompiled_function, Qbuffer, Qframe, Qvector;
 static Lisp_Object Qchar_table, Qbool_vector, Qhash_table;
 static Lisp_Object Qsubrp, Qmany, Qunevalled;
+Lisp_Object Qfont_spec, Qfont_entity, Qfont_object;
 
 static Lisp_Object swap_in_symval_forwarding P_ ((Lisp_Object, Lisp_Object));
 
@@ -224,6 +226,12 @@ for example, (type-of 1) returns `integer'.  */)
        return Qframe;
       if (HASH_TABLE_P (object))
        return Qhash_table;
+      if (FONT_SPEC_P (object))
+       return Qfont_spec;
+      if (FONT_ENTITY_P (object))
+       return Qfont_entity;
+      if (FONT_OBJECT_P (object))
+       return Qfont_object;
       return Qvector;
 
     case Lisp_Float:
@@ -3140,6 +3148,10 @@ syms_of_data ()
   Qbool_vector = intern ("bool-vector");
   Qhash_table = intern ("hash-table");
 
+  DEFSYM (Qfont_spec, "font-spec");
+  DEFSYM (Qfont_entity, "font-entity");
+  DEFSYM (Qfont_object, "font-object");
+
   staticpro (&Qinteger);
   staticpro (&Qsymbol);
   staticpro (&Qstring);