Skip to content

Commit 78bd46e

Browse files
committed
Cleanup/DRY of macros
1 parent 7e7c7b0 commit 78bd46e

File tree

1 file changed

+26
-34
lines changed

1 file changed

+26
-34
lines changed

pegtl/internal/pegtl_string.hh

Lines changed: 26 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -44,42 +44,34 @@ namespace pegtl
4444

4545
} // pegtl
4646

47-
#define PEGTL_INTERNAL_STRING(n,x) \
48-
pegtl::internal::string_at< n##0 >( x ), \
49-
pegtl::internal::string_at< n##1 >( x ), \
50-
pegtl::internal::string_at< n##2 >( x ), \
51-
pegtl::internal::string_at< n##3 >( x ), \
52-
pegtl::internal::string_at< n##4 >( x ), \
53-
pegtl::internal::string_at< n##5 >( x ), \
54-
pegtl::internal::string_at< n##6 >( x ), \
55-
pegtl::internal::string_at< n##7 >( x ), \
56-
pegtl::internal::string_at< n##8 >( x ), \
47+
#define PEGTL_INTERNAL_STRING_10(n,x) \
48+
pegtl::internal::string_at< n##0 >( x ), \
49+
pegtl::internal::string_at< n##1 >( x ), \
50+
pegtl::internal::string_at< n##2 >( x ), \
51+
pegtl::internal::string_at< n##3 >( x ), \
52+
pegtl::internal::string_at< n##4 >( x ), \
53+
pegtl::internal::string_at< n##5 >( x ), \
54+
pegtl::internal::string_at< n##6 >( x ), \
55+
pegtl::internal::string_at< n##7 >( x ), \
56+
pegtl::internal::string_at< n##8 >( x ), \
5757
pegtl::internal::string_at< n##9 >( x )
5858

59-
#define pegtl_string_t(x) \
60-
pegtl::internal::string_builder< pegtl::ascii::string<>, \
61-
PEGTL_INTERNAL_STRING(,x), \
62-
PEGTL_INTERNAL_STRING(1,x), \
63-
PEGTL_INTERNAL_STRING(2,x), \
64-
PEGTL_INTERNAL_STRING(3,x), \
65-
PEGTL_INTERNAL_STRING(4,x), \
66-
PEGTL_INTERNAL_STRING(5,x), \
67-
PEGTL_INTERNAL_STRING(6,x), \
68-
PEGTL_INTERNAL_STRING(7,x), \
69-
PEGTL_INTERNAL_STRING(8,x), \
70-
PEGTL_INTERNAL_STRING(9,x) >::type
59+
#define PEGTL_INTERNAL_STRING_100(x) \
60+
PEGTL_INTERNAL_STRING_10(,x), \
61+
PEGTL_INTERNAL_STRING_10(1,x), \
62+
PEGTL_INTERNAL_STRING_10(2,x), \
63+
PEGTL_INTERNAL_STRING_10(3,x), \
64+
PEGTL_INTERNAL_STRING_10(4,x), \
65+
PEGTL_INTERNAL_STRING_10(5,x), \
66+
PEGTL_INTERNAL_STRING_10(6,x), \
67+
PEGTL_INTERNAL_STRING_10(7,x), \
68+
PEGTL_INTERNAL_STRING_10(8,x), \
69+
PEGTL_INTERNAL_STRING_10(9,x)
7170

72-
#define pegtl_istring_t(x) \
73-
pegtl::internal::string_builder< pegtl::ascii::istring<>, \
74-
PEGTL_INTERNAL_STRING(,x), \
75-
PEGTL_INTERNAL_STRING(1,x), \
76-
PEGTL_INTERNAL_STRING(2,x), \
77-
PEGTL_INTERNAL_STRING(3,x), \
78-
PEGTL_INTERNAL_STRING(4,x), \
79-
PEGTL_INTERNAL_STRING(5,x), \
80-
PEGTL_INTERNAL_STRING(6,x), \
81-
PEGTL_INTERNAL_STRING(7,x), \
82-
PEGTL_INTERNAL_STRING(8,x), \
83-
PEGTL_INTERNAL_STRING(9,x) >::type
71+
#define pegtl_string_t(x) \
72+
pegtl::internal::string_builder< pegtl::ascii::string<>, PEGTL_INTERNAL_STRING_100(x) >::type
73+
74+
#define pegtl_istring_t(x) \
75+
pegtl::internal::string_builder< pegtl::ascii::istring<>, PEGTL_INTERNAL_STRING_100(x) >::type
8476

8577
#endif

0 commit comments

Comments
 (0)