Loading...
Searching...
No Matches
global_settings

Definition

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.

Examples

use fpx_global
use fpx_macro
call add(global%macros, macro('__LFORTRAN__','1'))
global%extra_macros = .true.
global%support_forloop = .true.
type(global_settings), public global
Global preprocessor configuration instance.
Definition global.f90:192
Append macros to a macro table.
Definition macro.f90:175
Representation of a preprocessor macro.
Definition macro.f90:135

Remarks

  • The settings remain active for the duration of the preprocessing session.
  • Components may be modified at any time before calling preprocess.
  • The global instance is intended for single-threaded use.

Definition at line 167 of file global.f90.


The documentation for this type was generated from the following file:

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.