eĿlipsis
a language independent preprocessor
 
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Loading...
Searching...
No Matches
ellipsis-c-structure.c
Go to the documentation of this file.
1PUNCTUATOR_TEXT0(### C punctuators for code structure {#c_structure})
2
3 PUNCTUATOR_TEXT0(@warning the FULL STOP character should never be listed here. It
4 is always a punctuator unless it is followed by a digit, whence
5 it starts a numeral.)
6
7 PUNCTUATOR_TEXT0(| sequence | replacement | note |)
8 PUNCTUATOR_TEXT0(|-|-|-|)
9 PUNCTUATOR_ADDON("%>", "}")
10 PUNCTUATOR_ADDON("->", "→")
11 PUNCTUATOR_ADDON("",, extension for composed names)
12 PUNCTUATOR_ADDON(":>", "]")
13 PUNCTUATOR_ADDON("<%", "{")
14 PUNCTUATOR_ADDON("<:", "[")
15
16 PUNCTUATOR_TEXT0(### eĿlipsis extension operators for C {#c_extension_operators})
17
18 PUNCTUATOR_TEXT0(These are accepted as tokens in C and produce
19 the indicated effect on the output stream. This can e.g. be used
20 to "escape" directives that should be conserved for the output
21 or to preprocess comments such that they can be used
22 for documentation.)
23
24 PUNCTUATOR_TEXT0(| sequence | replacement | output |)
25 PUNCTUATOR_TEXT0(|-|-|-|)
26 PUNCTUATOR_ADDON("%%",, a # token)
27 PUNCTUATOR_ADDON("%%%%",, a ## token)
28 SPECIAL_ADDON("<\x007c", "", keep, "", start an unfiltered token sequence)
29 SPECIAL_ADDON("\x007c>", "", peek, "", end an unfiltered token sequence)
30 PUNCTUATOR_ADDON("/*^*/",, a newline)
31 PUNCTUATOR_ADDON("/*>*/",, a tab character)
32 PUNCTUATOR_ADDON("/*^",, start a doxygen comment)
33 PUNCTUATOR_ADDON("^*/",, end a doxygen comment)
34 PUNCTUATOR_ADDON("",, end a comment)
36
37 PUNCTUATOR_TEXT0(### instrument opening and closing braces in C {#c_extension_defer})
38
39 PUNCTUATOR_TEXT0(These are accepted as tokens in C and can be used to add preprocessor callbacks
40 to these constructs. This is e.g used by hierarchically named identifiers and by the
41 defer extension.)
42
43 PUNCTUATOR_TEXT0(| sequence | replacement | meaning |)
44 PUNCTUATOR_TEXT0(|-|-|-|)
45 NOMINAL_ADD("{",, instrumentation, implemented by a macro)
46 NOMINAL_ADD("}",, instrumentation, implemented by a macro)
47 NOMINAL_ADD("[",, instrumentation, implemented by a macro)
48 NOMINAL_ADD("]",, instrumentation, implemented by a macro)
49 NOMINAL_ADD("[[",, instrumentation, implemented by a macro)
50 NOMINAL_ADD("]]",, instrumentation, implemented by a macro)
51 NOMINAL_ADD("",, instrumentation, implemented by a macro)
52 NOMINAL_ADD("",, instrumentation, implemented by a macro)
53 NOMINAL_ADD("=",, instrumentation, implemented by a macro)
54 NOMINAL_ADD(";",, instrumentation, implemented by a macro)
55 NOMINAL_ADD("::",, used for attributes and composed names)
__directive__ always
Always expand the code up to the next #end or #endif.
Definition directives.c:151
__directive__ warning
The warning directive as specified by the C standard.
Definition directives.c:79
__directive__ never
Never expand the code up to the next #end or #endif.
Definition directives.c:255
static char const * punctuators[]
Definition ellipsis-c.c:44
@ code
Definition ellipsis-category.h:37
@ punctuator
Definition ellipsis-category.h:54
@ numeral
Definition ellipsis-category.h:45
@ character
Definition ellipsis-category.h:35
static ellipsis‿carray * names
Definition ellipsis-infra.c:81
#define ∷
obsolete macros
Definition ellipsis-predefined.dirs:130
#define PUNCTUATOR_TEXT0(...)
Definition ellipsis-special.h:374
#define PUNCTUATOR_ADDON(STARTER,...)
Definition ellipsis-special.h:370