type_scalar_setting Derived Type

type, private, abstract, extends(type_value) :: type_scalar_setting


Inherits

type~~type_scalar_setting~~InheritsGraph type~type_scalar_setting type_scalar_setting type~type_value type_value type~type_scalar_setting->type~type_value type~type_value->type~type_value parent type_yaml_node type_yaml_node type~type_value->type_yaml_node backing_store_node

Inherited by

type~~type_scalar_setting~~InheritedByGraph type~type_scalar_setting type_scalar_setting type~type_string_setting type_string_setting type~type_string_setting->type~type_scalar_setting type~type_real_setting type_real_setting type~type_real_setting->type~type_scalar_setting type~type_integer_setting type_integer_setting type~type_integer_setting->type~type_scalar_setting type~type_logical_setting type_logical_setting type~type_logical_setting->type~type_scalar_setting

Contents


Components

TypeVisibility AttributesNameInitial
character(len=:), public, allocatable:: long_name
character(len=:), public, allocatable:: description
class(type_yaml_node), public, pointer:: backing_store_node=> null()
character(len=:), public, allocatable:: path
class(type_value), public, pointer:: parent=> null()
character(len=:), public, allocatable:: units
logical, public :: has_default =.false.

Type-Bound Procedures

procedure, public :: write_schema => value_write_schema

  • private recursive subroutine value_write_schema(self, unit, name, indent)

    Arguments

    Type IntentOptional AttributesName
    class(type_value), intent(in) :: self
    integer, intent(in) :: unit
    character(len=*), intent(in) :: name
    integer, intent(in) :: indent

procedure, public :: get_yaml_style => value_get_yaml_style

procedure, public :: create_child

  • private recursive function create_child(self) result(child)

    Arguments

    Type IntentOptional AttributesName
    class(type_value), intent(in) :: self

    Return Value class(type_settings), pointer

procedure(setting_as_string), public, deferred :: as_string

  • function setting_as_string(self, use_default) result(string) Prototype

    Arguments

    Type IntentOptional AttributesName
    class(type_scalar_setting), intent(in) :: self
    logical, intent(in) :: use_default

    Return Value character(len=:), allocatable

procedure, public :: write_yaml => setting_write_yaml

  • private recursive subroutine setting_write_yaml(self, unit, indent, comment_depth, header)

    Arguments

    Type IntentOptional AttributesName
    class(type_scalar_setting), intent(in) :: self
    integer, intent(in) :: unit
    integer, intent(in) :: indent
    integer, intent(in) :: comment_depth
    logical, intent(in) :: header

procedure, public :: get_comment => setting_get_comment

  • private recursive subroutine setting_get_comment(self, comment)

    Arguments

    Type IntentOptional AttributesName
    class(type_scalar_setting), intent(in) :: self
    character(len=:), intent(inout), allocatable:: comment

procedure, public :: get_maximum_depth => setting_get_maximum_depth

  • private recursive function setting_get_maximum_depth(self, name) result(maxdepth)

    Arguments

    Type IntentOptional AttributesName
    class(type_scalar_setting), intent(in) :: self
    character(len=*), intent(in) :: name

    Return Value integer