Modules

ModuleSource FileDescription
cmdgraph cmdgraph.f90

Library version. major and minor are synchronised across all implementations; patch may differ per implementation. Compile-time library version constant. Declarative argument specification attached to a command. Preferred over direct initialisation — use the arg_is_int / arg_is_real / arg_is_char / arg_is_rest constructor functions. When a command has an args= spec the engine validates count and types before invoking the action; failure short-circuits with RC_ERROR. Read-only description of one command in the current state, returned by engine_t%available_commands. The result depends only on the state name; safe to cache keyed by state name after finalize. State-graph driven command interpreter.

Read more…
   cmdgraph_sm cmdgraph_sm.f90
dlist dlist.f90

Doubly-linked list with polymorphic element storage. Iterate with iterate / reverse_iterate, or access by index with get. Abstract base for list element data. Extend this type to store custom data. Node holding a single integer value. Node holding a single real(8) value. Node holding a real(8) rank-1 array. Node holding a real(8) rank-2 array. Node holding an allocatable character string. Construct an integer node. Construct a real(8) scalar node. Construct a real(8) rank-1 array node. Construct a real(8) rank-2 array node. Construct a character node. Generic node constructor — dispatches on argument type. Visitor procedure signature for iterate / reverse_iterate. Set ok = .false. to stop iteration early.

   dlist_sm dlist_sm.f90