common_dict Module Reference

Dictionary for generic data types. More...

Data Types

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

Functions/Subroutines

subroutine, public initdict ()
 
subroutine, public closedict ()
 
type(dict_typ) function, pointer 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 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 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 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 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 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 getnext (root)
 Get the pointer to the next child. More...
 
type(dict_typ) function, pointer getlast (root)
 Get the pointer to the last child. More...
 
type(dict_typ) function, pointer, public getchild (root)
 Get the pointer to a direct child of the pointer 'root'. More...
 
function, public getkey (root)
 Get the key of pointer 'root'. More...
 
integer function, public 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 getdatatype (root)
 Return the datatype of node 'root'. More...
 
pointer, public getdata (root)
 Return the datatype of node 'root'. More...
 
logical function, public haschild (root)
 Check if the node 'root' has one or more children. More...
 
logical function, public hasdata (root)
 Checks if the node 'root' has data associated. More...
 
logical function, public haskey (root, key)
 Checks if a node with key 'key' exists. More...
 
subroutine, public setdata (node, val)
 Set data of 'node' ot 'val'. More...
 
function 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 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 setattr1 (root, key, val)
 
subroutine setattr2 (root, key, val)
 
subroutine setattr3 (root, key, val)
 
subroutine setattr4 (root, key, val)
 
subroutine setattr5 (root, key, val)
 
subroutine setattr6 (root, key, val)
 
subroutine setattr7 (root, key, val)
 
subroutine setattr8 (root, key, val)
 
subroutine setattr9 (root, key, val)
 
subroutine setattr10 (root, key, val)
 
subroutine setattr11 (root, key, val)
 
subroutine setattr12 (root, key, val)
 
recursive subroutine, public printdict (root, prefix)
 
recursive subroutine, public copydict (root, outdir)
 Copy complete Dictionary. More...
 
recursive subroutine, public copyhierarchy (root, outdir)
 Copy all nodes, which have children from 'root' to 'outdir'. More...
 
subroutine 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 getattr1 (root, key, res, default)
 
subroutine getattr2 (root, key, res, default)
 
subroutine getattr3 (root, key, res, default)
 
subroutine getattr4 (root, key, res, default)
 
subroutine getattr5 (root, key, res, default)
 
subroutine getattr6 (root, key, res, default)
 
subroutine getattr7 (root, key, res, default)
 
subroutine getattr8 (root, key, res, default)
 
subroutine getattr9 (root, key, res, default)
 
subroutine getattr10 (root, key, res, default)
 
subroutine getattr11 (root, key, res, default)
 
subroutine getattr12 (root, key, res, default)
 
subroutine deletenode (node, k)
 
recursive subroutine, public deletedict (root)
 Delete the dictionary 'root' and all subnodes. More...
 
type(dict_typ) function, pointer assign0 (key, val)
 
type(dict_typ) function, pointer assign1 (key, val)
 
type(dict_typ) function, pointer assign2 (key, val)
 
type(dict_typ) function, pointer assign3 (key, val)
 
type(dict_typ) function, pointer assign4 (key, val)
 
type(dict_typ) function, pointer assign5 (key, val)
 
type(dict_typ) function, pointer assign6 (key, val)
 
type(dict_typ) function, pointer assign7 (key, val)
 
type(dict_typ) function, pointer assign8 (key, val)
 
type(dict_typ) function, pointer assign9 (key, val)
 
type(dict_typ) function, pointer assign10 (key, val)
 
type(dict_typ) function, pointer assign11 (key, val)
 
type(dict_typ) function, pointer assign12 (key, val)
 
type(real_t) function ref1 (p)
 
type(int_t) function ref2 (p)
 

Variables

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

Detailed Description

Dictionary for generic data types.

Author
Manuel

This module defines a dictionary (key/value storage) of arbitrary data types. At the moment the following are defined:

  1. Integer
  2. Real
  3. Character(len=MAX_CHAR_LEN)
  4. Logical
  5. 1D Real array
  6. Pointer to 2D Real array
  7. Pointer to 3D Real array
  8. Pointer to 4D Real array
  9. 1D Integer array
  10. Pointer to Real
  11. Pointer to Integer
  12. Pointer to 5D Real array

The dictionary is implemented as Trie(1) with comprepressed keys, which is called radix tree(2). Each node can hold data with a defined type, which is stored in a generic container with the TRANSFER intrinsic(3). This technique has been explained in (4), see also (5). Each node can have severall children. 'child' points to the first child and other can be found by iterating to the 'next' one.

References

Function/Subroutine Documentation

◆ assign0()

type(dict_typ) function, pointer common_dict::assign0 ( character(len=*), intent(in)  key,
type(dict_typ), intent(in), target  val 
)
private

Definition at line 1161 of file common_dict.f90.

◆ assign1()

type(dict_typ) function, pointer common_dict::assign1 ( character(len=*), intent(in)  key,
intent(in)  val 
)
private

Definition at line 1174 of file common_dict.f90.

◆ assign10()

type(dict_typ) function, pointer common_dict::assign10 ( character(len=*), intent(in)  key,
type(real_t), intent(in)  val 
)
private

Definition at line 1290 of file common_dict.f90.

◆ assign11()

type(dict_typ) function, pointer common_dict::assign11 ( character(len=*), intent(in)  key,
type(int_t), intent(in)  val 
)
private

Definition at line 1303 of file common_dict.f90.

◆ assign12()

type(dict_typ) function, pointer common_dict::assign12 ( character(len=*), intent(in)  key,
real, dimension(:,:,:,:,:), intent(in), target  val 
)
private

Definition at line 1316 of file common_dict.f90.

◆ assign2()

type(dict_typ) function, pointer common_dict::assign2 ( character(len=*), intent(in)  key,
intent(in)  val 
)
private

Definition at line 1187 of file common_dict.f90.

◆ assign3()

type(dict_typ) function, pointer common_dict::assign3 ( character(len=*), intent(in)  key,
character(len=*), intent(in)  val 
)
private

Definition at line 1200 of file common_dict.f90.

◆ assign4()

type(dict_typ) function, pointer common_dict::assign4 ( character(len=*), intent(in)  key,
intent(in)  val 
)
private

Definition at line 1212 of file common_dict.f90.

◆ assign5()

type(dict_typ) function, pointer common_dict::assign5 ( character(len=*), intent(in)  key,
intent(in)  val 
)
private

Definition at line 1225 of file common_dict.f90.

◆ assign6()

type(dict_typ) function, pointer common_dict::assign6 ( character(len=*), intent(in)  key,
real, dimension(:,:), intent(in), target  val 
)
private

Definition at line 1238 of file common_dict.f90.

◆ assign7()

type(dict_typ) function, pointer common_dict::assign7 ( character(len=*), intent(in)  key,
real, dimension(:,:,:), intent(in), target  val 
)
private

Definition at line 1251 of file common_dict.f90.

◆ assign8()

type(dict_typ) function, pointer common_dict::assign8 ( character(len=*), intent(in)  key,
real, dimension(:,:,:,:), intent(in), target  val 
)
private

Definition at line 1264 of file common_dict.f90.

◆ assign9()

type(dict_typ) function, pointer common_dict::assign9 ( character(len=*), intent(in)  key,
intent(in)  val 
)
private

Definition at line 1277 of file common_dict.f90.

◆ closedict()

subroutine, public common_dict::closedict

Definition at line 190 of file common_dict.f90.

Here is the caller graph for this function:

◆ copydict()

recursive subroutine, public common_dict::copydict ( type(dict_typ), pointer  root,
type(dict_typ), pointer  outdir 
)

Copy complete Dictionary.

Definition at line 773 of file common_dict.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ copyhierarchy()

recursive subroutine, public common_dict::copyhierarchy ( type(dict_typ), pointer  root,
type(dict_typ), pointer  outdir 
)

Copy all nodes, which have children from 'root' to 'outdir'.

Definition at line 805 of file common_dict.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ deletedict()

recursive subroutine, public common_dict::deletedict ( type(dict_typ), pointer  root)

Delete the dictionary 'root' and all subnodes.

Definition at line 1141 of file common_dict.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ deletenode()

subroutine common_dict::deletenode ( type(dict_typ), pointer  node,
character(len=*)  k 
)
private

Definition at line 1109 of file common_dict.f90.

Here is the caller graph for this function:

◆ dict()

type(dict_typ) function, pointer, public common_dict::dict ( type(dict_typ), pointer  n1,
type(dict_typ), optional, pointer  n2,
type(dict_typ), optional, pointer  n3,
type(dict_typ), optional, pointer  n4,
type(dict_typ), optional, pointer  n5,
type(dict_typ), optional, pointer  n6,
type(dict_typ), optional, pointer  n7,
type(dict_typ), optional, pointer  n8,
type(dict_typ), optional, pointer  n9,
type(dict_typ), optional, pointer  n10,
type(dict_typ), optional, pointer  n11,
type(dict_typ), optional, pointer  n12,
type(dict_typ), optional, pointer  n13,
type(dict_typ), optional, pointer  n14,
type(dict_typ), optional, pointer  n15,
type(dict_typ), optional, pointer  n16,
type(dict_typ), optional, pointer  n17,
type(dict_typ), optional, pointer  n18,
type(dict_typ), optional, pointer  n19,
type(dict_typ), optional, pointer  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)

Definition at line 559 of file common_dict.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ findchild()

type(dict_typ) function, pointer common_dict::findchild ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key 
)
private

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.

Definition at line 377 of file common_dict.f90.

Here is the caller graph for this function:

◆ findpath()

type(dict_typ) function, pointer common_dict::findpath ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
logical, intent(in), optional  create 
)
private

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().

Definition at line 201 of file common_dict.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getattr0()

subroutine common_dict::getattr0 ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
type(dict_typ), pointer  res 
)
private

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.

Definition at line 831 of file common_dict.f90.

Here is the call graph for this function:

◆ getattr0a()

subroutine common_dict::getattr0a ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
type(dict_typ), pointer  parent 
)
private

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().

Definition at line 314 of file common_dict.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getattr0b()

subroutine common_dict::getattr0b ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
integer, intent(in)  type,
pointer  value,
intent(in), optional  default 
)
private

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.

Definition at line 341 of file common_dict.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getattr1()

subroutine common_dict::getattr1 ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
intent(inout)  res,
intent(in), optional  default 
)
private

Definition at line 847 of file common_dict.f90.

Here is the call graph for this function:

◆ getattr10()

subroutine common_dict::getattr10 ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
type(real_t res,
type(real_t), optional  default 
)
private

Definition at line 1046 of file common_dict.f90.

Here is the call graph for this function:

◆ getattr11()

subroutine common_dict::getattr11 ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
type(int_t res,
type(int_t), optional  default 
)
private

Definition at line 1066 of file common_dict.f90.

Here is the call graph for this function:

◆ getattr12()

subroutine common_dict::getattr12 ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
  res,
optional  default 
)
private

Definition at line 1086 of file common_dict.f90.

Here is the call graph for this function:

◆ getattr2()

subroutine common_dict::getattr2 ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
intent(inout)  res,
intent(in), optional  default 
)
private

Definition at line 868 of file common_dict.f90.

Here is the call graph for this function:

◆ getattr3()

subroutine common_dict::getattr3 ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
intent(inout)  res,
optional  default 
)
private

Definition at line 889 of file common_dict.f90.

Here is the call graph for this function:

◆ getattr4()

subroutine common_dict::getattr4 ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
intent(inout)  res,
optional  default 
)
private

Definition at line 910 of file common_dict.f90.

Here is the call graph for this function:

◆ getattr5()

subroutine common_dict::getattr5 ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
intent(inout)  res,
optional  default 
)
private

Definition at line 931 of file common_dict.f90.

Here is the call graph for this function:

◆ getattr6()

subroutine common_dict::getattr6 ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
  res,
optional  default 
)
private

Definition at line 956 of file common_dict.f90.

Here is the call graph for this function:

◆ getattr7()

subroutine common_dict::getattr7 ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
  res,
optional  default 
)
private

Definition at line 979 of file common_dict.f90.

Here is the call graph for this function:

◆ getattr8()

subroutine common_dict::getattr8 ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
  res,
optional  default 
)
private

Definition at line 1002 of file common_dict.f90.

Here is the call graph for this function:

◆ getattr9()

subroutine common_dict::getattr9 ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
intent(inout)  res,
optional  default 
)
private

Definition at line 1025 of file common_dict.f90.

Here is the call graph for this function:

◆ getchild()

type(dict_typ) function, pointer, public common_dict::getchild ( type(dict_typ), pointer  root)

Get the pointer to a direct child of the pointer 'root'.

Definition at line 414 of file common_dict.f90.

Here is the caller graph for this function:

◆ getdata()

pointer, public common_dict::getdata ( type(dict_typ), pointer  root)

Return the datatype of node 'root'.

Definition at line 459 of file common_dict.f90.

Here is the caller graph for this function:

◆ getdatasize()

integer function, public common_dict::getdatasize ( type(dict_typ), pointer  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.

Definition at line 435 of file common_dict.f90.

◆ getdatatype()

integer function, public common_dict::getdatatype ( type(dict_typ), pointer  root)

Return the datatype of node 'root'.

Definition at line 449 of file common_dict.f90.

Here is the caller graph for this function:

◆ getkey()

function, public common_dict::getkey ( type(dict_typ), pointer  root)

Get the key of pointer 'root'.

Definition at line 423 of file common_dict.f90.

Here is the caller graph for this function:

◆ getlast()

type(dict_typ) function, pointer common_dict::getlast ( type(dict_typ), pointer  root)
private

Get the pointer to the last child.

Definition at line 400 of file common_dict.f90.

Here is the caller graph for this function:

◆ getnext()

type(dict_typ) function, pointer, public common_dict::getnext ( type(dict_typ), pointer  root)

Get the pointer to the next child.

Definition at line 391 of file common_dict.f90.

Here is the caller graph for this function:

◆ haschild()

logical function, public common_dict::haschild ( type(dict_typ), pointer  root)

Check if the node 'root' has one or more children.

Definition at line 469 of file common_dict.f90.

Here is the caller graph for this function:

◆ hasdata()

logical function, public common_dict::hasdata ( type(dict_typ), pointer  root)

Checks if the node 'root' has data associated.

Definition at line 479 of file common_dict.f90.

Here is the caller graph for this function:

◆ haskey()

logical function, public common_dict::haskey ( type(dict_typ), pointer  root,
character(len=*)  key 
)

Checks if a node with key 'key' exists.

Definition at line 489 of file common_dict.f90.

Here is the call graph for this function:

◆ initdict()

subroutine, public common_dict::initdict

Definition at line 183 of file common_dict.f90.

Here is the caller graph for this function:

◆ printdict()

recursive subroutine, public common_dict::printdict ( type(dict_typ), target  root,
character(len=*), optional  prefix 
)

Definition at line 743 of file common_dict.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ref1()

type(real_t) function common_dict::ref1 (   p)
private

Definition at line 1329 of file common_dict.f90.

◆ ref2()

type(int_t) function common_dict::ref2 (   p)
private

Definition at line 1338 of file common_dict.f90.

◆ setattr0a()

recursive subroutine common_dict::setattr0a ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
type(dict_typ), target  value 
)
private

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.

Definition at line 265 of file common_dict.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setattr0b()

subroutine common_dict::setattr0b ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
intent(in)  value,
integer, intent(in)  type 
)
private

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.

Definition at line 294 of file common_dict.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setattr1()

subroutine common_dict::setattr1 ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
intent(in)  val 
)
private

Definition at line 590 of file common_dict.f90.

Here is the call graph for this function:

◆ setattr10()

subroutine common_dict::setattr10 ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
type(real_t), intent(in)  val 
)
private

Definition at line 705 of file common_dict.f90.

Here is the call graph for this function:

◆ setattr11()

subroutine common_dict::setattr11 ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
type(int_t), intent(in)  val 
)
private

Definition at line 717 of file common_dict.f90.

Here is the call graph for this function:

◆ setattr12()

subroutine common_dict::setattr12 ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
real, dimension(:,:,:,:,:), intent(in), target  val 
)
private

Definition at line 729 of file common_dict.f90.

Here is the call graph for this function:

◆ setattr2()

subroutine common_dict::setattr2 ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
intent(in)  val 
)
private

Definition at line 602 of file common_dict.f90.

Here is the call graph for this function:

◆ setattr3()

subroutine common_dict::setattr3 ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
character(len=*), intent(in)  val 
)
private

Definition at line 614 of file common_dict.f90.

Here is the call graph for this function:

◆ setattr4()

subroutine common_dict::setattr4 ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
intent(in)  val 
)
private

Definition at line 627 of file common_dict.f90.

Here is the call graph for this function:

◆ setattr5()

subroutine common_dict::setattr5 ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
intent(in)  val 
)
private

Definition at line 639 of file common_dict.f90.

Here is the call graph for this function:

◆ setattr6()

subroutine common_dict::setattr6 ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
real, dimension(:,:), intent(in), target  val 
)
private

Definition at line 651 of file common_dict.f90.

Here is the call graph for this function:

◆ setattr7()

subroutine common_dict::setattr7 ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
real, dimension(:,:,:), intent(in), target  val 
)
private

Definition at line 665 of file common_dict.f90.

Here is the call graph for this function:

◆ setattr8()

subroutine common_dict::setattr8 ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
real, dimension(:,:,:,:), intent(in), target  val 
)
private

Definition at line 679 of file common_dict.f90.

Here is the call graph for this function:

◆ setattr9()

subroutine common_dict::setattr9 ( type(dict_typ), pointer  root,
character(len=*), intent(in)  key,
intent(in)  val 
)
private

Definition at line 693 of file common_dict.f90.

Here is the call graph for this function:

◆ setdata()

subroutine, public common_dict::setdata ( type(dict_typ), pointer  node,
intent(in)  val 
)

Set data of 'node' ot 'val'.

Definition at line 500 of file common_dict.f90.

Here is the caller graph for this function:

◆ tokenize()

function common_dict::tokenize ( character(len=max_char_len), intent(inout)  key,
logical, intent(in), optional  back 
)
private

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.

Definition at line 519 of file common_dict.f90.

Here is the caller graph for this function:

Variable Documentation

◆ dict_bool

integer, parameter, public common_dict::dict_bool = 4

Definition at line 97 of file common_dict.f90.

◆ dict_char

integer, parameter, public common_dict::dict_char = 3

Definition at line 96 of file common_dict.f90.

◆ dict_int

integer, parameter, public common_dict::dict_int = 1

Definition at line 94 of file common_dict.f90.

◆ dict_int_oned

integer, parameter, public common_dict::dict_int_oned = 9

Definition at line 102 of file common_dict.f90.

◆ dict_int_p

integer, parameter, public common_dict::dict_int_p = 11

Definition at line 104 of file common_dict.f90.

◆ dict_none

integer, parameter, public common_dict::dict_none = 0

Definition at line 93 of file common_dict.f90.

◆ dict_real

integer, parameter, public common_dict::dict_real = 2

Definition at line 95 of file common_dict.f90.

◆ dict_real_fived

integer, parameter, public common_dict::dict_real_fived = 12

Definition at line 105 of file common_dict.f90.

◆ dict_real_fourd

integer, parameter, public common_dict::dict_real_fourd = 8

Definition at line 101 of file common_dict.f90.

◆ dict_real_oned

integer, parameter, public common_dict::dict_real_oned = 5

Definition at line 98 of file common_dict.f90.

◆ dict_real_p

integer, parameter, public common_dict::dict_real_p = 10

Definition at line 103 of file common_dict.f90.

◆ dict_real_threed

integer, parameter, public common_dict::dict_real_threed = 7

Definition at line 100 of file common_dict.f90.

◆ dict_real_twod

integer, parameter, public common_dict::dict_real_twod = 6

Definition at line 99 of file common_dict.f90.

◆ max_char_len

integer, parameter, public common_dict::max_char_len = 128

Definition at line 92 of file common_dict.f90.

◆ this

type(logging_base), save common_dict::this
private

Definition at line 149 of file common_dict.f90.