common_dict.f90 File Reference

Go to the source code of this file.

Data Types

type  common_dict::dict_typ
 
type  common_dict::real_t
 
type  common_dict::int_t
 
type  common_dict::real_twod_t
 
type  common_dict::real_threed_t
 
type  common_dict::real_fourd_t
 
type  common_dict::real_fived_t
 

Modules

module  common_dict
 Dictionary for generic data types.
 

Functions/Subroutines

subroutine, public common_dict::initdict ()
 
subroutine, public common_dict::closedict ()
 
type(dict_typ) function, pointer common_dict::findpath (root, key, create)
 Search for the path in 'key' beginning at root and return a pointer to this node in 'res'. If create is set to true (default is false), the path is created if it is not existing. If create=false and the path does not exist, res is null(). More...
 
recursive subroutine common_dict::setattr0a (root, key, value)
 Set the dictionary 'value' as child at the path 'key' relative to 'root'. If a child at this path is already existing, it will be deleted. More...
 
subroutine common_dict::setattr0b (root, key, value, type)
 Create an empty node at path 'key' relative to 'root', if value and type are not defined. If they are defined, also fill the node with data. More...
 
subroutine common_dict::getattr0a (root, key, parent)
 Retrieve the node at path 'key' relative to 'root'. The result will be given as third argument 'parent'. If the path can not be found, the result is null(). More...
 
subroutine common_dict::getattr0b (root, key, type, value, default)
 Retrieve the data 'value' of kind 'type' at path 'key' relative to 'root'. If the path can not be found and default is not defined, an error is raised. If default is present, it is set and returned instead. More...
 
type(dict_typ) function, pointer common_dict::findchild (root, key)
 Find the direct child with key 'key' in a list of childs. 'root' points to the first child. If 'key' is not found, null() is returned. More...
 
type(dict_typ) function, pointer, public common_dict::getnext (root)
 Get the pointer to the next child. More...
 
type(dict_typ) function, pointer common_dict::getlast (root)
 Get the pointer to the last child. More...
 
type(dict_typ) function, pointer, public common_dict::getchild (root)
 Get the pointer to a direct child of the pointer 'root'. More...
 
function, public common_dict::getkey (root)
 Get the key of pointer 'root'. More...
 
integer function, public common_dict::getdatasize (root)
 Get the size of the data in node 'root'. If there is no data 0 is returned. note: This is also the byte size of the data. More...
 
integer function, public common_dict::getdatatype (root)
 Return the datatype of node 'root'. More...
 
pointer, public common_dict::getdata (root)
 Return the datatype of node 'root'. More...
 
logical function, public common_dict::haschild (root)
 Check if the node 'root' has one or more children. More...
 
logical function, public common_dict::hasdata (root)
 Checks if the node 'root' has data associated. More...
 
logical function, public common_dict::haskey (root, key)
 Checks if a node with key 'key' exists. More...
 
subroutine, public common_dict::setdata (node, val)
 Set data of 'node' ot 'val'. More...
 
function common_dict::tokenize (key, back)
 Cuts a path into two tokens, which is explained best with an example: back=.FALSE.: key = /sources/grav/mass => res = sources, key = /grav/mass back=.TRUE.: key = /sources/grav/mass => res = mass, key = /sources/grav. More...
 
type(dict_typ) function, pointer, public common_dict::dict (n1, n2, n3, n4, n5, n6, n7, n8, n9, n10, n11, n12, n13, n14, n15, n16, n17, n18, n19, n20)
 Construct a new dictionary from several key/value pairs. Together with the Assign subroutine and overloading the '/'-operator, this makes the syntactic sugar available to write the following syntax: physics => Dict( "problem" / EULER2D, & "gamma" / GAMMA) More...
 
subroutine common_dict::setattr1 (root, key, val)
 
subroutine common_dict::setattr2 (root, key, val)
 
subroutine common_dict::setattr3 (root, key, val)
 
subroutine common_dict::setattr4 (root, key, val)
 
subroutine common_dict::setattr5 (root, key, val)
 
subroutine common_dict::setattr6 (root, key, val)
 
subroutine common_dict::setattr7 (root, key, val)
 
subroutine common_dict::setattr8 (root, key, val)
 
subroutine common_dict::setattr9 (root, key, val)
 
subroutine common_dict::setattr10 (root, key, val)
 
subroutine common_dict::setattr11 (root, key, val)
 
subroutine common_dict::setattr12 (root, key, val)
 
recursive subroutine, public common_dict::printdict (root, prefix)
 
recursive subroutine, public common_dict::copydict (root, outdir)
 Copy complete Dictionary. More...
 
recursive subroutine, public common_dict::copyhierarchy (root, outdir)
 Copy all nodes, which have children from 'root' to 'outdir'. More...
 
subroutine common_dict::getattr0 (root, key, res)
 Return the node at path 'key' relative to 'root' in 'res'. If this node has no data, but a child (e.g. a directory), return the child instead. More...
 
subroutine common_dict::getattr1 (root, key, res, default)
 
subroutine common_dict::getattr2 (root, key, res, default)
 
subroutine common_dict::getattr3 (root, key, res, default)
 
subroutine common_dict::getattr4 (root, key, res, default)
 
subroutine common_dict::getattr5 (root, key, res, default)
 
subroutine common_dict::getattr6 (root, key, res, default)
 
subroutine common_dict::getattr7 (root, key, res, default)
 
subroutine common_dict::getattr8 (root, key, res, default)
 
subroutine common_dict::getattr9 (root, key, res, default)
 
subroutine common_dict::getattr10 (root, key, res, default)
 
subroutine common_dict::getattr11 (root, key, res, default)
 
subroutine common_dict::getattr12 (root, key, res, default)
 
subroutine common_dict::deletenode (node, k)
 
recursive subroutine, public common_dict::deletedict (root)
 Delete the dictionary 'root' and all subnodes. More...
 
type(dict_typ) function, pointer common_dict::assign0 (key, val)
 
type(dict_typ) function, pointer common_dict::assign1 (key, val)
 
type(dict_typ) function, pointer common_dict::assign2 (key, val)
 
type(dict_typ) function, pointer common_dict::assign3 (key, val)
 
type(dict_typ) function, pointer common_dict::assign4 (key, val)
 
type(dict_typ) function, pointer common_dict::assign5 (key, val)
 
type(dict_typ) function, pointer common_dict::assign6 (key, val)
 
type(dict_typ) function, pointer common_dict::assign7 (key, val)
 
type(dict_typ) function, pointer common_dict::assign8 (key, val)
 
type(dict_typ) function, pointer common_dict::assign9 (key, val)
 
type(dict_typ) function, pointer common_dict::assign10 (key, val)
 
type(dict_typ) function, pointer common_dict::assign11 (key, val)
 
type(dict_typ) function, pointer common_dict::assign12 (key, val)
 
type(real_t) function common_dict::ref1 (p)
 
type(int_t) function common_dict::ref2 (p)
 

Variables

integer, parameter, public common_dict::max_char_len = 128
 
integer, parameter, public common_dict::dict_none = 0
 
integer, parameter, public common_dict::dict_int = 1
 
integer, parameter, public common_dict::dict_real = 2
 
integer, parameter, public common_dict::dict_char = 3
 
integer, parameter, public common_dict::dict_bool = 4
 
integer, parameter, public common_dict::dict_real_oned = 5
 
integer, parameter, public common_dict::dict_real_twod = 6
 
integer, parameter, public common_dict::dict_real_threed = 7
 
integer, parameter, public common_dict::dict_real_fourd = 8
 
integer, parameter, public common_dict::dict_int_oned = 9
 
integer, parameter, public common_dict::dict_real_p = 10
 
integer, parameter, public common_dict::dict_int_p = 11
 
integer, parameter, public common_dict::dict_real_fived = 12
 
type(logging_base), save common_dict::this