yaml_types Module


Used by

  • module~~yaml_types~~UsedByGraph module~yaml_types yaml_types module~yaml yaml module~yaml->module~yaml_types module~yaml_settings yaml_settings module~yaml_settings->module~yaml_types module~yaml_settings->module~yaml program~test_yaml test_yaml program~test_yaml->module~yaml_types program~test_yaml->module~yaml

Contents


Variables

TypeVisibility AttributesNameInitial
integer, private, parameter:: string_length =1024
integer, public, parameter:: real_kind =kind(1.0d0)

Abstract Interfaces

abstract interface

  • private subroutine node_dump(self, unit, indent)

    Arguments

    Type IntentOptional AttributesName
    class(type_node), intent(in) :: self
    integer, intent(in) :: unit
    integer, intent(in) :: indent

Derived Types

type, public, abstract :: type_node

Components

TypeVisibility AttributesNameInitial
character(len=string_length), public :: path =''

Type-Bound Procedures

procedure(node_dump), public :: dump
procedure, public :: set_path => node_set_path
procedure, public :: finalize => node_finalize

type, public, extends(type_node) :: type_scalar

Components

TypeVisibility AttributesNameInitial
character(len=string_length), public :: path =''
character(len=string_length), public :: string =''

Type-Bound Procedures

procedure, public :: set_path => node_set_path
procedure, public :: finalize => node_finalize
procedure, public :: dump => value_dump
procedure, public :: to_logical => scalar_to_logical
procedure, public :: to_integer => scalar_to_integer
procedure, public :: to_real => scalar_to_real

type, public, extends(type_node) :: type_null

Components

TypeVisibility AttributesNameInitial
character(len=string_length), public :: path =''

Type-Bound Procedures

procedure, public :: set_path => node_set_path
procedure, public :: finalize => node_finalize
procedure, public :: dump => null_dump

type, public :: type_key_value_pair

Components

TypeVisibility AttributesNameInitial
character(len=string_length), public :: key =''
class(type_node), public, pointer:: value=> null()
logical, public :: accessed =.false.
type(type_key_value_pair), public, pointer:: next=> null()

type, public, extends(type_node) :: type_dictionary

Components

TypeVisibility AttributesNameInitial
character(len=string_length), public :: path =''
type(type_key_value_pair), public, pointer:: first=> null()

Type-Bound Procedures

procedure, public :: get => dictionary_get
procedure, public :: get_scalar => dictionary_get_scalar
procedure, public :: get_dictionary => dictionary_get_dictionary
procedure, public :: get_list => dictionary_get_list
procedure, public :: get_string => dictionary_get_string
procedure, public :: get_logical => dictionary_get_logical
procedure, public :: get_integer => dictionary_get_integer
procedure, public :: get_real => dictionary_get_real
procedure, public :: set => dictionary_set
procedure, public :: set_string => dictionary_set_string
procedure, public :: dump => dictionary_dump
procedure, public :: flatten => dictionary_flatten
procedure, public :: reset_accessed => dictionary_reset_accessed
procedure, public :: set_path => dictionary_set_path
procedure, public :: finalize => dictionary_finalize

type, public :: type_list_item

Components

TypeVisibility AttributesNameInitial
class(type_node), public, pointer:: node=> null()
type(type_list_item), public, pointer:: next=> null()

type, public, extends(type_node) :: type_list

Components

TypeVisibility AttributesNameInitial
character(len=string_length), public :: path =''
type(type_list_item), public, pointer:: first=> null()

Type-Bound Procedures

procedure, public :: finalize => node_finalize
procedure, public :: append => list_append
procedure, public :: dump => list_dump
procedure, public :: set_path => list_set_path

type, public :: type_error

Components

TypeVisibility AttributesNameInitial
character(len=string_length), public :: message

Functions

private function dictionary_get(self, key) result(value)

Arguments

Type IntentOptional AttributesName
class(type_dictionary), intent(in) :: self
character(len=*), intent(in) :: key

Return Value class(type_node), pointer

private function scalar_to_logical(self, default, success) result(value)

Arguments

Type IntentOptional AttributesName
class(type_scalar), intent(in) :: self
logical, intent(in) :: default
logical, intent(out), optional :: success

Return Value logical

private function scalar_to_integer(self, default, success) result(value)

Arguments

Type IntentOptional AttributesName
class(type_scalar), intent(in) :: self
integer, intent(in) :: default
logical, intent(out), optional :: success

Return Value integer

private function scalar_to_real(self, default, success) result(value)

Arguments

Type IntentOptional AttributesName
class(type_scalar), intent(in) :: self
real(kind=real_kind), intent(in) :: default
logical, intent(out), optional :: success

Return Value real(kind=real_kind)

private function dictionary_get_scalar(self, key, required, error) result(scalar)

Arguments

Type IntentOptional AttributesName
class(type_dictionary), intent(in) :: self
character(len=*), intent(in) :: key
logical, intent(in) :: required
type(type_error), pointer:: error

Return Value class(type_scalar), pointer

private function dictionary_get_dictionary(self, key, required, error) result(dictionary)

Arguments

Type IntentOptional AttributesName
class(type_dictionary), intent(in) :: self
character(len=*), intent(in) :: key
logical, intent(in) :: required
type(type_error), pointer:: error

Return Value class(type_dictionary), pointer

private function dictionary_get_list(self, key, required, error) result(list)

Arguments

Type IntentOptional AttributesName
class(type_dictionary), intent(in) :: self
character(len=*), intent(in) :: key
logical, intent(in) :: required
type(type_error), pointer:: error

Return Value class(type_list), pointer

private function dictionary_get_string(self, key, default, error) result(value)

Arguments

Type IntentOptional AttributesName
class(type_dictionary), intent(in) :: self
character(len=*), intent(in) :: key
character(len=*), intent(in), optional :: default
type(type_error), pointer:: error

Return Value character(len=string_length)

private function dictionary_get_logical(self, key, default, error) result(value)

Arguments

Type IntentOptional AttributesName
class(type_dictionary), intent(in) :: self
character(len=*), intent(in) :: key
logical, intent(in), optional :: default
type(type_error), pointer:: error

Return Value logical

private function dictionary_get_integer(self, key, default, error) result(value)

Arguments

Type IntentOptional AttributesName
class(type_dictionary), intent(in) :: self
character(len=*), intent(in) :: key
integer, intent(in), optional :: default
type(type_error), pointer:: error

Return Value integer

private function dictionary_get_real(self, key, default, error) result(value)

Arguments

Type IntentOptional AttributesName
class(type_dictionary), intent(in) :: self
character(len=*), intent(in) :: key
real(kind=real_kind), intent(in), optional :: default
type(type_error), pointer:: error

Return Value real(kind=real_kind)


Subroutines

private subroutine node_finalize(self)

Arguments

Type IntentOptional AttributesName
class(type_node), intent(inout) :: self

private subroutine dictionary_reset_accessed(self)

Arguments

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

private subroutine dictionary_set(self, key, value)

Arguments

Type IntentOptional AttributesName
class(type_dictionary), intent(inout) :: self
character(len=*), intent(in) :: key
class(type_node), pointer:: value

private subroutine dictionary_set_string(self, key, value)

Arguments

Type IntentOptional AttributesName
class(type_dictionary), intent(inout) :: self
character(len=*), intent(in) :: key
character(len=*), intent(in) :: value

private subroutine value_dump(self, unit, indent)

Arguments

Type IntentOptional AttributesName
class(type_scalar), intent(in) :: self
integer, intent(in) :: unit
integer, intent(in) :: indent

private subroutine null_dump(self, unit, indent)

Arguments

Type IntentOptional AttributesName
class(type_null), intent(in) :: self
integer, intent(in) :: unit
integer, intent(in) :: indent

private recursive subroutine dictionary_dump(self, unit, indent)

Arguments

Type IntentOptional AttributesName
class(type_dictionary), intent(in) :: self
integer, intent(in) :: unit
integer, intent(in) :: indent

private recursive subroutine dictionary_flatten(self, target, prefix)

Arguments

Type IntentOptional AttributesName
class(type_dictionary), intent(in) :: self
type(type_dictionary), intent(inout) :: target
character(len=*), intent(in) :: prefix

private recursive subroutine node_set_path(self, path)

Arguments

Type IntentOptional AttributesName
class(type_node), intent(inout) :: self
character(len=*), intent(in) :: path

private recursive subroutine dictionary_set_path(self, path)

Arguments

Type IntentOptional AttributesName
class(type_dictionary), intent(inout) :: self
character(len=*), intent(in) :: path

private subroutine dictionary_finalize(self)

Arguments

Type IntentOptional AttributesName
class(type_dictionary), intent(inout) :: self

private subroutine list_append(self, node)

Arguments

Type IntentOptional AttributesName
class(type_list), intent(inout) :: self
class(type_node), target:: node

private recursive subroutine list_dump(self, unit, indent)

Arguments

Type IntentOptional AttributesName
class(type_list), intent(in) :: self
integer, intent(in) :: unit
integer, intent(in) :: indent

private recursive subroutine list_set_path(self, path)

Arguments

Type IntentOptional AttributesName
class(type_list), intent(inout) :: self
character(len=*), intent(in) :: path