// becomes TEXT #define @STRING@ #define ${STRING} // becomes `at`TEXT`at` #define @${STRING}@ #define @@STRING@@ // becomes TRAP #define ${@STRING@} // becomes `dollar sign`{STRING} #define $@STRING_CURLY@ #define $${STRING_CURLY} // becomes `dollar sign`{STRING} #define @STRING_VAR@ #define ${STRING_VAR} // becomes `dollar sign`{TEXT} #define ${DOLLAR}{${STRING}} #define @DOLLAR@{${STRING}} // becomes `at`STRING`at` #define ${STRING_AT} #define @STRING_AT@ #define \@STRING_VAR\@ #define \${STRING_VAR} #define $\{STRING_VAR}