Nodes of different colours represent the following:
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.
Where possible, edges connecting nodes are
given different colours to make them easier to distinguish in
large graphs.
Nodes of different colours represent the following:
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.
Where possible, edges connecting nodes are
given different colours to make them easier to distinguish in
large graphs.
Source Code
function make_coupler(action,source,rc)result(coupler_gridcomp)type(ESMF_GridComp)::coupler_gridcompclass(ExtensionAction),intent(in)::actiontype(GriddedComponentDriver),target,optional,intent(in)::sourceinteger,optional,intent(out)::rcinteger::statustype(CouplerMetaComponent),pointer::coupler_metacoupler_gridcomp=ESMF_GridCompCreate(name='coupler',contextFlag=ESMF_CONTEXT_PARENT_VM,_RC)call attach_coupler_meta(coupler_gridcomp,_RC)coupler_meta=>get_coupler_meta(coupler_gridcomp,_RC)#ifndef __GFORTRAN__coupler_meta=CouplerMetaComponent(action,source)#elsecall ridiculous(coupler_meta,CouplerMetaComponent(action,source))#endifcall ESMF_GridCompSetServices(coupler_gridComp,setServices,_RC)_RETURN(_SUCCESS)contains#ifdef __GFORTRAN__subroutine ridiculous(a,b)type(CouplerMetaComponent),intent(out)::atype(CouplerMetaComponent),intent(in)::ba=bend subroutine ridiculous#endifend function make_coupler