diff src/lisp.h @ 5322:df125a42c50c

Support up to nine keywords in the PARSE_KEYWORDS() macro. 2010-12-30 Aidan Kehoe <kehoea@parhasard.net> * lisp.h (DECLARE_N_KEYWORDS_8, DECLARE_N_KEYWORDS_9) (CHECK_N_KEYWORDS_8, CHECK_N_KEYWORDS_9): Support up to nine keywords in the PARSE_KEYWORDS() macro.
author Aidan Kehoe <kehoea@parhasard.net>
date Thu, 30 Dec 2010 01:04:38 +0000
parents 31be2a3d121d
children 8608eadee6ba 6506fcb40fcf
line wrap: on
line diff
--- a/src/lisp.h	Thu Dec 30 01:00:40 2010 +0000
+++ b/src/lisp.h	Thu Dec 30 01:04:38 2010 +0000
@@ -3641,6 +3641,10 @@
   DECLARE_N_KEYWORDS_5(a,b,c,d,e), f = Qnil
 #define DECLARE_N_KEYWORDS_7(a,b,c,d,e,f,g)     \
   DECLARE_N_KEYWORDS_6(a,b,c,d,e,f), g = Qnil
+#define DECLARE_N_KEYWORDS_8(a,b,c,d,e,f,g,h)	\
+  DECLARE_N_KEYWORDS_7(a,b,c,d,e,f,g), h = Qnil
+#define DECLARE_N_KEYWORDS_9(a,b,c,d,e,f,g,h,i)	\
+  DECLARE_N_KEYWORDS_8(a,b,c,d,e,f,g,h), i = Qnil
 
 #define CHECK_N_KEYWORDS_1(a)                                           \
     else if (EQ (pk_key, Q_##a)) { a = pk_value; }
@@ -3656,6 +3660,12 @@
     else if (EQ (pk_key, Q_##f)) { f = pk_value; }
 #define CHECK_N_KEYWORDS_7(a,b,c,d,e,f,g)   CHECK_N_KEYWORDS_6(a,b,c,d,e,f) \
     else if (EQ (pk_key, Q_##g)) { g = pk_value; }
+#define CHECK_N_KEYWORDS_8(a,b,c,d,e,f,g,h)		\
+  CHECK_N_KEYWORDS_7(a,b,c,d,e,f,g)			\
+  else if (EQ (pk_key, Q_##h)) { h = pk_value; }
+#define CHECK_N_KEYWORDS_9(a,b,c,d,e,f,g,h,i)		\
+  CHECK_N_KEYWORDS_8(a,b,c,d,e,f,g,h)			\
+  else if (EQ (pk_key, Q_##i)) { i = pk_value; }
 
 Boolint non_nil_allow_other_keys_p (Elemcount offset, int nargs,
                                     Lisp_Object *args);