Use only letters to encode configuration in the namespace

This commit is contained in:
Benoit Blanchon
2023-02-13 18:55:26 +01:00
parent 8971127b66
commit 0dd4a68913
2 changed files with 23 additions and 22 deletions

View File

@@ -11,15 +11,14 @@
#ifndef ARDUINOJSON_VERSION_NAMESPACE #ifndef ARDUINOJSON_VERSION_NAMESPACE
# define ARDUINOJSON_VERSION_NAMESPACE \ # define ARDUINOJSON_VERSION_NAMESPACE \
ARDUINOJSON_CONCAT4( \ ARDUINOJSON_CONCAT3( \
ARDUINOJSON_CONCAT4(V, ARDUINOJSON_VERSION_MAJOR, \ ARDUINOJSON_CONCAT4(V, ARDUINOJSON_VERSION_MAJOR, \
ARDUINOJSON_VERSION_MINOR, \ ARDUINOJSON_VERSION_MINOR, \
ARDUINOJSON_VERSION_REVISION), \ ARDUINOJSON_VERSION_REVISION), \
_, \ ARDUINOJSON_BIN2ALPHA( \
ARDUINOJSON_HEX_DIGIT( \
ARDUINOJSON_ENABLE_PROGMEM, ARDUINOJSON_USE_LONG_LONG, \ ARDUINOJSON_ENABLE_PROGMEM, ARDUINOJSON_USE_LONG_LONG, \
ARDUINOJSON_USE_DOUBLE, ARDUINOJSON_ENABLE_STRING_DEDUPLICATION), \ ARDUINOJSON_USE_DOUBLE, ARDUINOJSON_ENABLE_STRING_DEDUPLICATION), \
ARDUINOJSON_HEX_DIGIT( \ ARDUINOJSON_BIN2ALPHA( \
ARDUINOJSON_ENABLE_NAN, ARDUINOJSON_ENABLE_INFINITY, \ ARDUINOJSON_ENABLE_NAN, ARDUINOJSON_ENABLE_INFINITY, \
ARDUINOJSON_ENABLE_COMMENTS, ARDUINOJSON_DECODE_UNICODE)) ARDUINOJSON_ENABLE_COMMENTS, ARDUINOJSON_DECODE_UNICODE))

View File

@@ -12,24 +12,26 @@
#define ARDUINOJSON_CONCAT_(A, B) A##B #define ARDUINOJSON_CONCAT_(A, B) A##B
#define ARDUINOJSON_CONCAT2(A, B) ARDUINOJSON_CONCAT_(A, B) #define ARDUINOJSON_CONCAT2(A, B) ARDUINOJSON_CONCAT_(A, B)
#define ARDUINOJSON_CONCAT3(A, B, C) \
ARDUINOJSON_CONCAT2(ARDUINOJSON_CONCAT2(A, B), C)
#define ARDUINOJSON_CONCAT4(A, B, C, D) \ #define ARDUINOJSON_CONCAT4(A, B, C, D) \
ARDUINOJSON_CONCAT2(ARDUINOJSON_CONCAT2(A, B), ARDUINOJSON_CONCAT2(C, D)) ARDUINOJSON_CONCAT2(ARDUINOJSON_CONCAT2(A, B), ARDUINOJSON_CONCAT2(C, D))
#define ARDUINOJSON_HEX_DIGIT_0000() 0 #define ARDUINOJSON_BIN2ALPHA_0000() A
#define ARDUINOJSON_HEX_DIGIT_0001() 1 #define ARDUINOJSON_BIN2ALPHA_0001() B
#define ARDUINOJSON_HEX_DIGIT_0010() 2 #define ARDUINOJSON_BIN2ALPHA_0010() C
#define ARDUINOJSON_HEX_DIGIT_0011() 3 #define ARDUINOJSON_BIN2ALPHA_0011() D
#define ARDUINOJSON_HEX_DIGIT_0100() 4 #define ARDUINOJSON_BIN2ALPHA_0100() E
#define ARDUINOJSON_HEX_DIGIT_0101() 5 #define ARDUINOJSON_BIN2ALPHA_0101() F
#define ARDUINOJSON_HEX_DIGIT_0110() 6 #define ARDUINOJSON_BIN2ALPHA_0110() F
#define ARDUINOJSON_HEX_DIGIT_0111() 7 #define ARDUINOJSON_BIN2ALPHA_0111() H
#define ARDUINOJSON_HEX_DIGIT_1000() 8 #define ARDUINOJSON_BIN2ALPHA_1000() I
#define ARDUINOJSON_HEX_DIGIT_1001() 9 #define ARDUINOJSON_BIN2ALPHA_1001() J
#define ARDUINOJSON_HEX_DIGIT_1010() A #define ARDUINOJSON_BIN2ALPHA_1010() K
#define ARDUINOJSON_HEX_DIGIT_1011() B #define ARDUINOJSON_BIN2ALPHA_1011() L
#define ARDUINOJSON_HEX_DIGIT_1100() C #define ARDUINOJSON_BIN2ALPHA_1100() M
#define ARDUINOJSON_HEX_DIGIT_1101() D #define ARDUINOJSON_BIN2ALPHA_1101() N
#define ARDUINOJSON_HEX_DIGIT_1110() E #define ARDUINOJSON_BIN2ALPHA_1110() O
#define ARDUINOJSON_HEX_DIGIT_1111() F #define ARDUINOJSON_BIN2ALPHA_1111() P
#define ARDUINOJSON_HEX_DIGIT_(A, B, C, D) ARDUINOJSON_HEX_DIGIT_##A##B##C##D() #define ARDUINOJSON_BIN2ALPHA_(A, B, C, D) ARDUINOJSON_BIN2ALPHA_##A##B##C##D()
#define ARDUINOJSON_HEX_DIGIT(A, B, C, D) ARDUINOJSON_HEX_DIGIT_(A, B, C, D) #define ARDUINOJSON_BIN2ALPHA(A, B, C, D) ARDUINOJSON_BIN2ALPHA_(A, B, C, D)