Mercurial > hg > xemacs-beta
diff src/lisp.h @ 4998:b46c89ccbed3
Merge.
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Sat, 06 Feb 2010 12:28:19 +0000 |
parents | 3c3c1d139863 c17c857e20bf |
children | 714d854d00e9 |
line wrap: on
line diff
--- a/src/lisp.h Sat Feb 06 04:27:47 2010 -0600 +++ b/src/lisp.h Sat Feb 06 12:28:19 2010 +0000 @@ -3033,6 +3033,31 @@ Elemcount size; \ unsigned long bits[BIT_VECTOR_LONG_STORAGE(numbits)]; \ } +/*---------------------- array, sequence -----------------------------*/ + +#define ARRAYP(x) (VECTORP (x) || STRINGP (x) || BIT_VECTORP (x)) + +#define CHECK_ARRAY(x) do { \ + if (!ARRAYP (x)) \ + dead_wrong_type_argument (Qarrayp, x); \ +} while (0) + +#define CONCHECK_ARRAY(x) do { \ + if (!ARRAYP (x)) \ + x = wrong_type_argument (Qarrayp, x); \ +} while (0) + +#define SEQUENCEP(x) (LISTP (x) || ARRAYP (x)) + +#define CHECK_SEQUENCE(x) do { \ + if (!SEQUENCEP (x)) \ + dead_wrong_type_argument (Qsequencep, x); \ +} while (0) + +#define CONCHECK_SEQUENCE(x) do { \ + if (!SEQUENCEP (x)) \ + x = wrong_type_argument (Qsequencep, x); \ +} while (0) /*------------------------------ symbol --------------------------------*/ @@ -4379,9 +4404,11 @@ /* Defined in alloc.c */ MODULE_API EXFUN (Fcons, 2); MODULE_API EXFUN (Flist, MANY); +EXFUN (Fbit_vector, MANY); EXFUN (Fmake_byte_code, MANY); MODULE_API EXFUN (Fmake_list, 2); MODULE_API EXFUN (Fmake_string, 2); +EXFUN (Fstring, MANY); MODULE_API EXFUN (Fmake_symbol, 1); MODULE_API EXFUN (Fmake_vector, 2); MODULE_API EXFUN (Fvector, MANY); @@ -5225,7 +5252,7 @@ EXFUN (Flax_plist_get, 3); EXFUN (Flax_plist_remprop, 2); MODULE_API EXFUN (Flength, 1); -EXFUN (Fmapcar, 2); +EXFUN (FmapcarX, MANY); EXFUN (Fmember, 2); EXFUN (Fmemq, 2); EXFUN (Fnconc, MANY);