type_logical_setting Derived Type

type, public, extends(type_scalar_setting) :: type_logical_setting


Inherits

type~~type_logical_setting~~InheritsGraph type~type_logical_setting type_logical_setting type~type_scalar_setting type_scalar_setting type~type_logical_setting->type~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

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.
logical, public, pointer:: pvalue=> null()
logical, public :: value
logical, public :: default =.true.

Type-Bound Procedures

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, 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

procedure, public, nopass :: create => type_logical_setting_create

  • public function type_logical_setting_create(node, target, long_name, default, description, value) result(setting)

    Arguments

    Type IntentOptional AttributesName
    class(type_settings_node), intent(inout) :: node
    logical, target:: target
    character(len=*), intent(in) :: long_name
    logical, intent(in), optional :: default
    character(len=*), intent(in), optional :: description
    logical, intent(inout), optional :: value

    Return Value class(type_logical_setting), pointer

procedure, public :: as_string => logical_as_string

  • private function logical_as_string(self, use_default) result(string)

    Arguments

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

    Return Value character(len=:), allocatable

procedure, public :: write_schema => logical_write_schema

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

    Arguments

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