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
recursive subroutine updateWithState(self,state,root_key,keywordEnforcer,rc)class(ESMF_InfoDescribe),intent(inout)::selftype(ESMF_State),intent(in)::statecharacter(*),intent(in)::root_keytype(ESMF_KeywordEnforcer),optional::keywordEnforcer! must use keywords belowinteger,intent(inout),optional::rccharacter(ESMF_MAXSTR)::nameinteger::localrccharacter(:),allocatable::unameif(present(rc))rc=ESMF_RC_NOT_IMPLcall ESMF_StateGet(state,name=name,rc=localrc)if(ESMF_LogFoundError(localrc,ESMF_ERR_PASSTHRU,ESMF_CONTEXT,rcToReturn=rc))return call self%updateGeneric(root_key,name,"State",state%statep%base,uname=uname,rc=localrc)if(ESMF_LogFoundError(localrc,ESMF_ERR_PASSTHRU,ESMF_CONTEXT,rcToReturn=rc))return if(self%createInfo)then call self%FillMembers(state,root_key//"/"//uname//"/members",rc=localrc)if(ESMF_LogFoundError(localrc,ESMF_ERR_PASSTHRU,ESMF_CONTEXT,rcToReturn=rc))return deallocate(uname)end if if(present(rc))rc=ESMF_SUCCESSend subroutine updateWithState