Namespace configmanager_mod¶
Namespace List > configmanager_mod
Public Attributes¶
| Type | Name |
|---|---|
| integer, parameter, public | config_strategy_fallback = 3Use defaults on errors. |
| integer, parameter, public | config_strategy_permissive = 2Warning on validation errors. |
| integer, parameter, public | config_strategy_strict = 1Configuration loading strategies. |
Public Functions¶
| Type | Name |
|---|---|
| subroutine, public | discover_nested_yaml_section_items (character(len=*), intent(in) filename, character(len=*), intent(in) section_path, character(len=*), dimension(:), intent(inout) item_names, integer, intent(out) n_items, integer, intent(out) rc, character(len=*), intent(in), optional search_mode) Discover items in a nested YAML section (supports arbitrary depth paths) |
| subroutine, public | discover_yaml_section_items (character(len=*), intent(in) filename, character(len=*), intent(in) section_name, character(len=*), intent(in) parse_mode, character(len=64), dimension(:), intent(inout) item_names, integer, intent(out) n_items, integer, intent(out) rc) Generic YAML text parser for discovering items in a section This function reads the YAML file as plain text and extracts item names by parsing the structure line by line, looking for keys with ':' under the section. |
| subroutine | schema_init (class(configschematype), intent(inout) this, character(len=*), intent(in) name, character(len=*), intent(in) description, logical, intent(in), optional strict) Initialize configuration schema. |
Public Attributes Documentation¶
variable config_strategy_fallback¶
Use defaults on errors.
variable config_strategy_permissive¶
Warning on validation errors.
variable config_strategy_strict¶
Configuration loading strategies.
Fail on any validation error
Public Functions Documentation¶
function discover_nested_yaml_section_items¶
Discover items in a nested YAML section (supports arbitrary depth paths)
subroutine, public configmanager_mod::discover_nested_yaml_section_items (
character(len=*), intent(in) filename,
character(len=*), intent(in) section_path,
character(len=*), dimension(:), intent(inout) item_names,
integer, intent(out) n_items,
integer, intent(out) rc,
character(len=*), intent(in), optional search_mode
)
This function discovers direct child items in any nested YAML section. It supports arbitrary nesting depth and flexible indentation.
Examples: * "processes/extemis" -> finds anthro, point, fire, fengsha * "processes/extemis/anthro" -> finds activate, scale_factor, source_file, etc. * "mie/files" with mode 'key_value_pairs' -> finds "SS: opticsBands_SS.v3_3.RRTMG.nc"
Parameters:
filenameYAML file to parsesection_pathNested path (e.g., "processes/extemis/anthro")item_namesArray to store discovered item namesn_itemsNumber of items foundrcReturn codesearch_modeOptional: 'section_headers' (default) or 'key_value_pairs'
function discover_yaml_section_items¶
Generic YAML text parser for discovering items in a section This function reads the YAML file as plain text and extracts item names by parsing the structure line by line, looking for keys with ':' under the section.
subroutine, public configmanager_mod::discover_yaml_section_items (
character(len=*), intent(in) filename,
character(len=*), intent(in) section_name,
character(len=*), intent(in) parse_mode,
character(len=64), dimension(:), intent(inout) item_names,
integer, intent(out) n_items,
integer, intent(out) rc
)
Parameters:
filenameYAML configuration file pathsection_nameSection name to search for itemsparse_modeParsing mode: 'simple', 'emission_fields'item_namesArray to store discovered item namesn_itemsNumber of items discoveredrcReturn code
function schema_init¶
Initialize configuration schema.
subroutine configmanager_mod::schema_init (
class( configschematype ), intent(inout) this,
character(len=*), intent(in) name,
character(len=*), intent(in) description,
logical, intent(in), optional strict
)
The documentation for this class was generated from the following file src/core/ConfigManager_Mod.F90