load_app_config Subroutine

public subroutine load_app_config(path, cfg)

.toml 拡張子の設定ファイルを読み込み、既存値へ上書き適用する。

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: path

読み込む設定ファイルパス(.toml 必須)。

type(app_config), intent(inout) :: cfg

読み込み結果で上書きするアプリ設定。


Calls

proc~~load_app_config~~CallsGraph proc~load_app_config load_app_config interface~ends_with ends_with proc~load_app_config->interface~ends_with proc~load_toml_config load_toml_config proc~load_app_config->proc~load_toml_config proc~lower_ascii lower_ascii proc~load_app_config->proc~lower_ascii proc~load_toml_config->proc~lower_ascii interface~resolve_batch_duration resolve_batch_duration proc~load_toml_config->interface~resolve_batch_duration interface~strip_comment strip_comment proc~load_toml_config->interface~strip_comment interface~validate_photo_raycast_species validate_photo_raycast_species proc~load_toml_config->interface~validate_photo_raycast_species interface~validate_reservoir_species validate_reservoir_species proc~load_toml_config->interface~validate_reservoir_species proc~apply_mesh_kv apply_mesh_kv proc~load_toml_config->proc~apply_mesh_kv proc~apply_output_kv apply_output_kv proc~load_toml_config->proc~apply_output_kv proc~apply_particles_kv apply_particles_kv proc~load_toml_config->proc~apply_particles_kv proc~apply_particles_species_kv apply_particles_species_kv proc~load_toml_config->proc~apply_particles_species_kv proc~apply_sim_kv apply_sim_kv proc~load_toml_config->proc~apply_sim_kv proc~apply_template_kv apply_template_kv proc~load_toml_config->proc~apply_template_kv proc~ensure_particle_species_capacity ensure_particle_species_capacity proc~load_toml_config->proc~ensure_particle_species_capacity proc~ensure_template_capacity ensure_template_capacity proc~load_toml_config->proc~ensure_template_capacity proc~species_from_defaults species_from_defaults proc~load_toml_config->proc~species_from_defaults interface~parse_real parse_real proc~apply_mesh_kv->interface~parse_real interface~parse_real3 parse_real3 proc~apply_mesh_kv->interface~parse_real3 interface~parse_string parse_string proc~apply_mesh_kv->interface~parse_string interface~split_key_value split_key_value proc~apply_mesh_kv->interface~split_key_value interface~parse_int parse_int proc~apply_output_kv->interface~parse_int interface~parse_logical parse_logical proc~apply_output_kv->interface~parse_logical proc~apply_output_kv->interface~parse_string proc~apply_output_kv->interface~split_key_value proc~apply_particles_kv->interface~split_key_value proc~apply_particles_species_kv->proc~lower_ascii proc~apply_particles_species_kv->interface~parse_int proc~apply_particles_species_kv->interface~parse_logical proc~apply_particles_species_kv->interface~parse_real proc~apply_particles_species_kv->interface~parse_real3 proc~apply_particles_species_kv->interface~parse_string proc~apply_particles_species_kv->interface~split_key_value proc~apply_sim_kv->proc~lower_ascii interface~parse_boundary_mode parse_boundary_mode proc~apply_sim_kv->interface~parse_boundary_mode proc~apply_sim_kv->interface~parse_int proc~apply_sim_kv->interface~parse_logical proc~apply_sim_kv->interface~parse_real proc~apply_sim_kv->interface~parse_real3 proc~apply_sim_kv->interface~parse_string proc~apply_sim_kv->interface~split_key_value proc~apply_template_kv->interface~parse_int proc~apply_template_kv->interface~parse_logical proc~apply_template_kv->interface~parse_real proc~apply_template_kv->interface~parse_real3 proc~apply_template_kv->interface~parse_string proc~apply_template_kv->interface~split_key_value

Called by

proc~~load_app_config~~CalledByGraph proc~load_app_config load_app_config proc~load_or_init_run_state load_or_init_run_state proc~load_or_init_run_state->proc~load_app_config program~main main program~main->proc~load_or_init_run_state

Source Code

  subroutine load_app_config(path, cfg)
    character(len=*), intent(in) :: path
    type(app_config), intent(inout) :: cfg

    if (.not. ends_with(lower_ascii(trim(path)), '.toml')) then
      error stop 'Only TOML config is supported. Please pass a .toml file.'
    end if
    call load_toml_config(path, cfg)
  end subroutine load_app_config