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
subroutine get_field(field,states,state_intent,unusable,field_name,substate_name,rc)type(ESMF_Field),intent(out)::fieldtype(MultiState),intent(in)::statesclass(KeywordEnforcer),optional,intent(in)::unusablecharacter(*),intent(in)::state_intentcharacter(*),intent(in)::field_namecharacter(*),optional,intent(in)::substate_nameinteger,intent(out)::rcinteger::statustype(ESMF_State)::state,substaterc=+1call states%get_state(state,state_intent,rc=status)if(status/=0)thenrc=+2return end if if(present(substate_name))then call ESMF_StateGet(state,substate_name,substate,rc=status)if(status/=0)thenrc=+3return end if elsesubstate=stateend if call ESMF_StateGet(substate,field_name,field,rc=status)if(status/=0)thenrc=4return end ifrc=0end subroutine get_field