aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2022-03-28 23:12:12 -0700
committerKaz Kylheku <kaz@kylheku.com>2022-03-28 23:12:12 -0700
commitbced9e4d93f25baebeb47ae2d6356843fcbba0f7 (patch)
tree3d76f5a300ba90a72fa9fc2f7243eabd84e16a26
parenta8020a1eebb56ae4f3303030b6baab608be695b3 (diff)
downloadcppawk-bced9e4d93f25baebeb47ae2d6356843fcbba0f7.tar.gz
cppawk-bced9e4d93f25baebeb47ae2d6356843fcbba0f7.tar.bz2
cppawk-bced9e4d93f25baebeb47ae2d6356843fcbba0f7.zip
__varexpand_simple: get rid of __rep_ macros.
There is no need for __varexpand_simple to carry its own set of 32 macros, because it's just a special case of __varexpand_infix, with the same helper macro duplicated as mac1 and mac2.
-rw-r--r--cppawk-include/narg-priv.h137
1 files changed, 1 insertions, 136 deletions
diff --git a/cppawk-include/narg-priv.h b/cppawk-include/narg-priv.h
index 2e1ac8c..78986de 100644
--- a/cppawk-include/narg-priv.h
+++ b/cppawk-include/narg-priv.h
@@ -43,141 +43,6 @@
16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, \
3, 2, 1, 0)
-#define __rep_1(mac, a1) \
- mac(a1)
-#define __rep_2(mac, a1, a2) \
- mac(a1) mac(a2)
-#define __rep_3(mac, a1, a2, a3) \
- mac(a1) mac(a2) mac(a3)
-#define __rep_4(mac, a1, a2, a3, a4) \
- mac(a1) mac(a2) mac(a3) mac(a4)
-#define __rep_5(mac, a1, a2, a3, a4, a5) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5)
-#define __rep_6(mac, a1, a2, a3, a4, a5, a6) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6)
-#define __rep_7(mac, a1, a2, a3, a4, a5, a6, a7) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6) mac(a7)
-#define __rep_8(mac, a1, a2, a3, a4, a5, a6, a7, a8) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6) mac(a7) mac(a8)
-#define __rep_9(mac, a1, a2, a3, a4, a5, a6, a7, a8, a9) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6) mac(a7) mac(a8) mac(a9)
-#define __rep_10(mac, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6) mac(a7) mac(a8) mac(a9) \
- mac(a10)
-#define __rep_11(mac, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6) mac(a7) mac(a8) mac(a9) \
- mac(a10) mac(a11)
-#define __rep_12(mac, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6) mac(a7) mac(a8) mac(a9) \
- mac(a10) mac(a11) mac(a12)
-#define __rep_13(mac, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6) mac(a7) mac(a8) mac(a9) \
- mac(a10) mac(a11) mac(a12) mac(a13)
-#define __rep_14(mac, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, \
- a14) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6) mac(a7) mac(a8) mac(a9) \
- mac(a10) mac(a11) mac(a12) mac(a13) mac(a14)
-#define __rep_15(mac, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, \
- a14, a15) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6) mac(a7) mac(a8) mac(a9) \
- mac(a10) mac(a11) mac(a12) mac(a13) mac(a14) mac(a15)
-#define __rep_16(mac, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, \
- a14, a15, a16) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6) mac(a7) mac(a8) mac(a9) \
- mac(a10) mac(a11) mac(a12) mac(a13) mac(a14) mac(a15) mac(a16)
-#define __rep_17(mac, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, \
- a14, a15, a16, a17) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6) mac(a7) mac(a8) mac(a9) \
- mac(a10) mac(a11) mac(a12) mac(a13) mac(a14) mac(a15) mac(a16) mac(a17)
-#define __rep_18(mac, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, \
- a14, a15, a16, a17, a18) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6) mac(a7) mac(a8) mac(a9) \
- mac(a10) mac(a11) mac(a12) mac(a13) mac(a14) mac(a15) mac(a16) mac(a17) \
- mac(a18)
-#define __rep_19(mac, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, \
- a14, a15, a16, a17, a18, a19) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6) mac(a7) mac(a8) mac(a9) \
- mac(a10) mac(a11) mac(a12) mac(a13) mac(a14) mac(a15) mac(a16) mac(a17) \
- mac(a18) mac(a19)
-#define __rep_20(mac, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, \
- a14, a15, a16, a17, a18, a19, a20) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6) mac(a7) mac(a8) mac(a9) \
- mac(a10) mac(a11) mac(a12) mac(a13) mac(a14) mac(a15) mac(a16) mac(a17) \
- mac(a18) mac(a19) mac(a20)
-#define __rep_21(mac, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, \
- a14, a15, a16, a17, a18, a19, a20, a21) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6) mac(a7) mac(a8) mac(a9) \
- mac(a10) mac(a11) mac(a12) mac(a13) mac(a14) mac(a15) mac(a16) mac(a17) \
- mac(a18) mac(a19) mac(a20) mac(a21)
-#define __rep_22(mac, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, \
- a14, a15, a16, a17, a18, a19, a20, a21, a22) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6) mac(a7) mac(a8) mac(a9) \
- mac(a10) mac(a11) mac(a12) mac(a13) mac(a14) mac(a15) mac(a16) mac(a17) \
- mac(a18) mac(a19) mac(a20) mac(a21) mac(a22)
-#define __rep_23(mac, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, \
- a14, a15, a16, a17, a18, a19, a20, a21, a22, a23) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6) mac(a7) mac(a8) mac(a9) \
- mac(a10) mac(a11) mac(a12) mac(a13) mac(a14) mac(a15) mac(a16) mac(a17) \
- mac(a18) mac(a19) mac(a20) mac(a21) mac(a22) mac(a23)
-#define __rep_24(mac, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, \
- a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6) mac(a7) mac(a8) mac(a9) \
- mac(a10) mac(a11) mac(a12) mac(a13) mac(a14) mac(a15) mac(a16) mac(a17) \
- mac(a18) mac(a19) mac(a20) mac(a21) mac(a22) mac(a23) mac(a24)
-#define __rep_25(mac, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, \
- a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6) mac(a7) mac(a8) mac(a9) \
- mac(a10) mac(a11) mac(a12) mac(a13) mac(a14) mac(a15) mac(a16) mac(a17) \
- mac(a18) mac(a19) mac(a20) mac(a21) mac(a22) mac(a23) mac(a24) mac(a25)
-#define __rep_26(mac, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, \
- a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25, \
- a26) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6) mac(a7) mac(a8) mac(a9) \
- mac(a10) mac(a11) mac(a12) mac(a13) mac(a14) mac(a15) mac(a16) mac(a17) \
- mac(a18) mac(a19) mac(a20) mac(a21) mac(a22) mac(a23) mac(a24) mac(a25) \
- mac(a26)
-#define __rep_27(mac, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, \
- a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25, \
- a26, a27) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6) mac(a7) mac(a8) mac(a9) \
- mac(a10) mac(a11) mac(a12) mac(a13) mac(a14) mac(a15) mac(a16) mac(a17) \
- mac(a18) mac(a19) mac(a20) mac(a21) mac(a22) mac(a23) mac(a24) mac(a25) \
- mac(a26) mac(a27)
-#define __rep_28(mac, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, \
- a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25, \
- a26, a27, a28) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6) mac(a7) mac(a8) mac(a9) \
- mac(a10) mac(a11) mac(a12) mac(a13) mac(a14) mac(a15) mac(a16) mac(a17) \
- mac(a18) mac(a19) mac(a20) mac(a21) mac(a22) mac(a23) mac(a24) mac(a25) \
- mac(a26) mac(a27) mac(a28)
-#define __rep_29(mac, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, \
- a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25, \
- a26, a27, a28, a29) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6) mac(a7) mac(a8) mac(a9) \
- mac(a10) mac(a11) mac(a12) mac(a13) mac(a14) mac(a15) mac(a16) mac(a17) \
- mac(a18) mac(a19) mac(a20) mac(a21) mac(a22) mac(a23) mac(a24) mac(a25) \
- mac(a26) mac(a27) mac(a28) mac(a29)
-#define __rep_30(mac, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, \
- a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25, \
- a26, a27, a28, a29, a30) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6) mac(a7) mac(a8) mac(a9) \
- mac(a10) mac(a11) mac(a12) mac(a13) mac(a14) mac(a15) mac(a16) mac(a17) \
- mac(a18) mac(a19) mac(a20) mac(a21) mac(a22) mac(a23) mac(a24) mac(a25) \
- mac(a26) mac(a27) mac(a28) mac(a29) mac(a30)
-#define __rep_31(mac, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, \
- a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25, \
- a26, a27, a28, a29, a30, a31) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6) mac(a7) mac(a8) mac(a9) \
- mac(a10) mac(a11) mac(a12) mac(a13) mac(a14) mac(a15) mac(a16) mac(a17) \
- mac(a18) mac(a19) mac(a20) mac(a21) mac(a22) mac(a23) mac(a24) mac(a25) \
- mac(a26) mac(a27) mac(a28) mac(a29) mac(a30) mac(a31)
-#define __rep_32(mac, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, \
- a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25, \
- a26, a27, a28, a29, a30, a31, a32) \
- mac(a1) mac(a2) mac(a3) mac(a4) mac(a5) mac(a6) mac(a7) mac(a8) mac(a9) \
- mac(a10) mac(a11) mac(a12) mac(a13) mac(a14) mac(a15) mac(a16) mac(a17) \
- mac(a18) mac(a19) mac(a20) mac(a21) mac(a22) mac(a23) mac(a24) mac(a25) \
- mac(a26) mac(a27) mac(a28) mac(a29) mac(a30) mac(a31) mac(a32)
#define __repi_1(mac1, mac2, a1) \
mac1(a1)
@@ -329,7 +194,7 @@
mac2(a30) mac2(a31) mac2(a32)
#define __varexpand_simple(mac, ...) \
- __xcat(__rep_, __narg(__VA_ARGS__)) (mac, __VA_ARGS__)
+ __xcat(__repi_, __narg(__VA_ARGS__)) (mac, mac, __VA_ARGS__)
#define __varexpand_infix(mac1, mac2, ...) \
__xcat(__repi_, __narg(__VA_ARGS__)) (mac1, mac2, __VA_ARGS__)