comparison src/lisp.h @ 280:7df0dd720c89 r21-0b38

Import from CVS: tag r21-0b38
author cvs
date Mon, 13 Aug 2007 10:32:22 +0200
parents 6330739388db
children c42ec1d1cded
comparison
equal deleted inserted replaced
279:c20b2fb5bb0a 280:7df0dd720c89
1070 #define symbol_function(s) ((s)->function) 1070 #define symbol_function(s) ((s)->function)
1071 #define symbol_plist(s) ((s)->plist) 1071 #define symbol_plist(s) ((s)->plist)
1072 1072
1073 /*********** subr ***********/ 1073 /*********** subr ***********/
1074 1074
1075 typedef Lisp_Object (*lisp_fn_t) (); 1075 typedef Lisp_Object (*lisp_fn_t) (void);
1076 1076
1077 struct Lisp_Subr 1077 struct Lisp_Subr
1078 { 1078 {
1079 struct lrecord_header lheader; 1079 struct lrecord_header lheader;
1080 short min_args, max_args; 1080 short min_args, max_args;
1150 #ifdef LISP_FLOAT_TYPE 1150 #ifdef LISP_FLOAT_TYPE
1151 1151
1152 struct Lisp_Float 1152 struct Lisp_Float
1153 { 1153 {
1154 struct lrecord_header lheader; 1154 struct lrecord_header lheader;
1155 union { double d; struct Lisp_Float *next; } data; 1155 double data;
1156 }; 1156 };
1157 1157
1158 DECLARE_LRECORD (float, struct Lisp_Float); 1158 DECLARE_LRECORD (float, struct Lisp_Float);
1159 #define XFLOAT(x) XRECORD (x, float, struct Lisp_Float) 1159 #define XFLOAT(x) XRECORD (x, float, struct Lisp_Float)
1160 #define XSETFLOAT(x, p) XSETRECORD (x, p, float) 1160 #define XSETFLOAT(x, p) XSETRECORD (x, p, float)
1161 #define FLOATP(x) RECORDP (x, float) 1161 #define FLOATP(x) RECORDP (x, float)
1162 #define GC_FLOATP(x) GC_RECORDP (x, float) 1162 #define GC_FLOATP(x) GC_RECORDP (x, float)
1163 #define CHECK_FLOAT(x) CHECK_RECORD (x, float) 1163 #define CHECK_FLOAT(x) CHECK_RECORD (x, float)
1164 #define CONCHECK_FLOAT(x) CONCHECK_RECORD (x, float) 1164 #define CONCHECK_FLOAT(x) CONCHECK_RECORD (x, float)
1165 1165
1166 #define float_next(f) ((f)->data.next) 1166 #define float_data(f) ((f)->data)
1167 #define float_data(f) ((f)->data.d)
1168 1167
1169 #define XFLOATINT(n) extract_float (n) 1168 #define XFLOATINT(n) extract_float (n)
1170 1169
1171 #define CHECK_INT_OR_FLOAT(x) do { \ 1170 #define CHECK_INT_OR_FLOAT(x) do { \
1172 if (!INT_OR_FLOATP (x)) \ 1171 if (!INT_OR_FLOATP (x)) \
2002 DECLARE_DOESNT_RETURN (args_out_of_range_3 (Lisp_Object, Lisp_Object, 2001 DECLARE_DOESNT_RETURN (args_out_of_range_3 (Lisp_Object, Lisp_Object,
2003 Lisp_Object)); 2002 Lisp_Object));
2004 Lisp_Object wrong_type_argument (Lisp_Object, Lisp_Object); 2003 Lisp_Object wrong_type_argument (Lisp_Object, Lisp_Object);
2005 DECLARE_DOESNT_RETURN (dead_wrong_type_argument (Lisp_Object, Lisp_Object)); 2004 DECLARE_DOESNT_RETURN (dead_wrong_type_argument (Lisp_Object, Lisp_Object));
2006 void check_int_range (int, int, int); 2005 void check_int_range (int, int, int);
2006
2007 enum arith_comparison {
2008 arith_equal,
2009 arith_notequal,
2010 arith_less,
2011 arith_grtr,
2012 arith_less_or_equal,
2013 arith_grtr_or_equal };
2014 Lisp_Object arithcompare (Lisp_Object, Lisp_Object, enum arith_comparison);
2015
2007 Lisp_Object word_to_lisp (unsigned int); 2016 Lisp_Object word_to_lisp (unsigned int);
2008 unsigned int lisp_to_word (Lisp_Object); 2017 unsigned int lisp_to_word (Lisp_Object);
2009 2018
2010 /* Defined in dired.c */ 2019 /* Defined in dired.c */
2011 Lisp_Object make_directory_hash_table (char *); 2020 Lisp_Object make_directory_hash_table (CONST char *);
2012 Lisp_Object wasteful_word_to_lisp (unsigned int); 2021 Lisp_Object wasteful_word_to_lisp (unsigned int);
2013 2022
2014 /* Defined in doc.c */ 2023 /* Defined in doc.c */
2015 Lisp_Object unparesseuxify_doc_string (int, EMACS_INT, char *, Lisp_Object); 2024 Lisp_Object unparesseuxify_doc_string (int, EMACS_INT, char *, Lisp_Object);
2016 Lisp_Object read_doc_string (Lisp_Object); 2025 Lisp_Object read_doc_string (Lisp_Object);
2555 EXFUN (Fformat, MANY); 2564 EXFUN (Fformat, MANY);
2556 EXFUN (Fforward_char, 2); 2565 EXFUN (Fforward_char, 2);
2557 EXFUN (Fforward_line, 2); 2566 EXFUN (Fforward_line, 2);
2558 EXFUN (Ffset, 2); 2567 EXFUN (Ffset, 2);
2559 EXFUN (Ffuncall, MANY); 2568 EXFUN (Ffuncall, MANY);
2560 EXFUN (Fgeq, 2); 2569 EXFUN (Fgeq, MANY);
2561 EXFUN (Fget, 3); 2570 EXFUN (Fget, 3);
2562 EXFUN (Fget_buffer_process, 1); 2571 EXFUN (Fget_buffer_process, 1);
2563 EXFUN (Fget_coding_system, 1); 2572 EXFUN (Fget_coding_system, 1);
2564 EXFUN (Fget_process, 1); 2573 EXFUN (Fget_process, 1);
2565 EXFUN (Fget_range_table, 3); 2574 EXFUN (Fget_range_table, 3);
2566 EXFUN (Fgethash, 3); 2575 EXFUN (Fgethash, 3);
2567 EXFUN (Fgettext, 1); 2576 EXFUN (Fgettext, 1);
2568 EXFUN (Fgoto_char, 2); 2577 EXFUN (Fgoto_char, 2);
2569 EXFUN (Fgtr, 2); 2578 EXFUN (Fgtr, MANY);
2570 EXFUN (Fhashtablep, 1); 2579 EXFUN (Fhashtablep, 1);
2571 EXFUN (Findent_to, 3); 2580 EXFUN (Findent_to, 3);
2572 EXFUN (Findirect_function, 1); 2581 EXFUN (Findirect_function, 1);
2573 EXFUN (Finsert, MANY); 2582 EXFUN (Finsert, MANY);
2574 EXFUN (Finsert_buffer_substring, 3); 2583 EXFUN (Finsert_buffer_substring, 3);
2581 EXFUN (Fkill_emacs, 1); 2590 EXFUN (Fkill_emacs, 1);
2582 EXFUN (Fkill_local_variable, 1); 2591 EXFUN (Fkill_local_variable, 1);
2583 EXFUN (Flax_plist_get, 3); 2592 EXFUN (Flax_plist_get, 3);
2584 EXFUN (Flax_plist_remprop, 2); 2593 EXFUN (Flax_plist_remprop, 2);
2585 EXFUN (Flength, 1); 2594 EXFUN (Flength, 1);
2586 EXFUN (Fleq, 2); 2595 EXFUN (Fleq, MANY);
2587 EXFUN (Flist, MANY); 2596 EXFUN (Flist, MANY);
2588 EXFUN (Flistp, 1); 2597 EXFUN (Flistp, 1);
2589 EXFUN (Flss, 2); 2598 EXFUN (Flss, MANY);
2590 EXFUN (Fmake_byte_code, MANY); 2599 EXFUN (Fmake_byte_code, MANY);
2591 EXFUN (Fmake_coding_system, 4); 2600 EXFUN (Fmake_coding_system, 4);
2592 EXFUN (Fmake_glyph_internal, 1); 2601 EXFUN (Fmake_glyph_internal, 1);
2593 EXFUN (Fmake_hashtable, 2); 2602 EXFUN (Fmake_hashtable, 2);
2594 EXFUN (Fmake_list, 2); 2603 EXFUN (Fmake_list, 2);