comparison src/lisp.h @ 4996:c17c857e20bf

Merge.
author Aidan Kehoe <kehoea@parhasard.net>
date Wed, 03 Feb 2010 20:18:53 +0000
parents 17362f371cc2 8431b52e43b1
children b46c89ccbed3
comparison
equal deleted inserted replaced
4927:5274591ce707 4996:c17c857e20bf
2962 #define DECLARE_INLINE_LISP_BIT_VECTOR(numbits) struct { \ 2962 #define DECLARE_INLINE_LISP_BIT_VECTOR(numbits) struct { \
2963 struct LCRECORD_HEADER lheader; \ 2963 struct LCRECORD_HEADER lheader; \
2964 Elemcount size; \ 2964 Elemcount size; \
2965 unsigned long bits[BIT_VECTOR_LONG_STORAGE(numbits)]; \ 2965 unsigned long bits[BIT_VECTOR_LONG_STORAGE(numbits)]; \
2966 } 2966 }
2967 /*---------------------- array, sequence -----------------------------*/
2968
2969 #define ARRAYP(x) (VECTORP (x) || STRINGP (x) || BIT_VECTORP (x))
2970
2971 #define CHECK_ARRAY(x) do { \
2972 if (!ARRAYP (x)) \
2973 dead_wrong_type_argument (Qarrayp, x); \
2974 } while (0)
2975
2976 #define CONCHECK_ARRAY(x) do { \
2977 if (!ARRAYP (x)) \
2978 x = wrong_type_argument (Qarrayp, x); \
2979 } while (0)
2980
2981 #define SEQUENCEP(x) (LISTP (x) || ARRAYP (x))
2982
2983 #define CHECK_SEQUENCE(x) do { \
2984 if (!SEQUENCEP (x)) \
2985 dead_wrong_type_argument (Qsequencep, x); \
2986 } while (0)
2987
2988 #define CONCHECK_SEQUENCE(x) do { \
2989 if (!SEQUENCEP (x)) \
2990 x = wrong_type_argument (Qsequencep, x); \
2991 } while (0)
2967 2992
2968 /*------------------------------ symbol --------------------------------*/ 2993 /*------------------------------ symbol --------------------------------*/
2969 2994
2970 typedef struct Lisp_Symbol Lisp_Symbol; 2995 typedef struct Lisp_Symbol Lisp_Symbol;
2971 struct Lisp_Symbol 2996 struct Lisp_Symbol
4224 MODULE_API EXFUN (Fexpand_abbrev, 0); 4249 MODULE_API EXFUN (Fexpand_abbrev, 0);
4225 4250
4226 /* Defined in alloc.c */ 4251 /* Defined in alloc.c */
4227 MODULE_API EXFUN (Fcons, 2); 4252 MODULE_API EXFUN (Fcons, 2);
4228 MODULE_API EXFUN (Flist, MANY); 4253 MODULE_API EXFUN (Flist, MANY);
4254 EXFUN (Fbit_vector, MANY);
4229 EXFUN (Fmake_byte_code, MANY); 4255 EXFUN (Fmake_byte_code, MANY);
4230 MODULE_API EXFUN (Fmake_list, 2); 4256 MODULE_API EXFUN (Fmake_list, 2);
4231 MODULE_API EXFUN (Fmake_string, 2); 4257 MODULE_API EXFUN (Fmake_string, 2);
4258 EXFUN (Fstring, MANY);
4232 MODULE_API EXFUN (Fmake_symbol, 1); 4259 MODULE_API EXFUN (Fmake_symbol, 1);
4233 MODULE_API EXFUN (Fmake_vector, 2); 4260 MODULE_API EXFUN (Fmake_vector, 2);
4234 MODULE_API EXFUN (Fvector, MANY); 4261 MODULE_API EXFUN (Fvector, MANY);
4235 4262
4236 #ifndef NEW_GC 4263 #ifndef NEW_GC
5053 MODULE_API EXFUN (Fequalp, 2); 5080 MODULE_API EXFUN (Fequalp, 2);
5054 EXFUN (Flast, 2); 5081 EXFUN (Flast, 2);
5055 EXFUN (Flax_plist_get, 3); 5082 EXFUN (Flax_plist_get, 3);
5056 EXFUN (Flax_plist_remprop, 2); 5083 EXFUN (Flax_plist_remprop, 2);
5057 MODULE_API EXFUN (Flength, 1); 5084 MODULE_API EXFUN (Flength, 1);
5058 EXFUN (Fmapcar, 2); 5085 EXFUN (FmapcarX, MANY);
5059 EXFUN (Fmember, 2); 5086 EXFUN (Fmember, 2);
5060 EXFUN (Fmemq, 2); 5087 EXFUN (Fmemq, 2);
5061 EXFUN (Fnconc, MANY); 5088 EXFUN (Fnconc, MANY);
5062 MODULE_API EXFUN (Fnreverse, 1); 5089 MODULE_API EXFUN (Fnreverse, 1);
5063 EXFUN (Fnthcdr, 2); 5090 EXFUN (Fnthcdr, 2);