Nodes of different colours represent the following:
Module Graph
Solid arrows point from a parent (sub)module to the submodule which is
descended from it. Dashed arrows point from a module being used to the
module using it.
Type Graph
Solid arrows point from one derived type to another which extends
(inherits from) it. Dashed arrows point from a derived type to another
type containing it as a components, with a label listing the name(s) of
said component(s).
Call Graph
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Nodes of different colours represent the following:
Module Graph
Solid arrows point from a parent (sub)module to the submodule which is
descended from it. Dashed arrows point from a module being used to the
module using it.
Type Graph
Solid arrows point from one derived type to another which extends
(inherits from) it. Dashed arrows point from a derived type to another
type containing it as a components, with a label listing the name(s) of
said component(s).
Call Graph
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
subroutine json_update_string(p,name,val,found)implicit none type(json_value),pointer::pcharacter(kind=CK,len=*),intent(in)::namecharacter(kind=CK,len=*),intent(in)::vallogical(LK),intent(out)::foundtype(json_value),pointer::p_varinteger(IK)::var_typecall json_get(p,name,p_var,found)if(found)then call json_info(p_var,var_type)select case(var_type)case(json_null,json_logical,json_integer,json_double,json_string)call to_string(p_var,val)!update the valuecase defaultfound=.false.call throw_exception('Error in json_update_string: '//&'the variable is not a scalar value')end select else call json_add(p,name,val)!add the new elementend if end subroutine json_update_string