Global preprocessor configuration and shared runtime state.
This type encapsulates all user-configurable options controlling the behaviour of the fpx preprocessor.
A single public instance, global, is provided and used throughout the library. Applications may modify its components before starting preprocessing to customize parsing rules, enable extensions, or predefine symbols.
Definition at line 167 of file global.f90.
Variables | |
| type(macro), dimension(:), allocatable, public | macros |
| Predefined macros available before preprocessing begins. | |
| type(string), dimension(:), allocatable, public | undef |
| Symbols protected from future redefinition. | |
| type(string), dimension(:), allocatable, public | includedir |
| Additional directories searched by #include. | |
| logical, public | expand_macros = .true. |
| Enable global macro expansion. | |
| logical, public | exclude_comments = .false. |
| Preserve comments in the generated output. | |
| logical, public | implicit_continuation = .false. |
| Enable implicit continuation during macro expansion. | |
| logical, public | line_break = .false. |
| Treat \\ as an explicit output line break. | |
| logical, public | extra_macros = .true. |
| Enable non-standard predefined macros such as __FILE__, __LINE__, __FUNC__, and __TIMESTAMP__. | |
| logical, public | interactive = .false. |
| Enable interactive REPL mode. | |
| logical, public | support_forloop = .true. |
| Enable support for #for and #endfor. | |
| logical, public | disable_continuation = .false. |
| Disable explicit continuation using trailing &. | |
| logical, public | support_dollar_insert = .true. |
| Enable ${NAME} placeholder substitution. | |