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 MAPL_DestroyStateSave(gc,rc)type(ESMF_GridComp),intent(inout)::GCinteger,optional,intent(out)::rctype(MAPL_MetaComp),pointer::stateinteger::unit,i,statustype(ESMF_GridComp),pointer::gridcompcall MAPL_InternalStateRetrieve(GC,STATE,RC=status)_VERIFY(status)do I=1,STATE%get_num_children()gridcomp=>STATE%GET_CHILD_GRIDCOMP(I)call MAPL_DestroyStateSave(gridcomp,RC=status)_VERIFY(status)enddo if(allocated(STATE%initial_state%imp_fname))thenUNIT=GETFILE(STATE%initial_state%IMP_FNAME,RC=status)_VERIFY(status)call MAPL_DestroyFile(unit=UNIT,rc=status)_VERIFY(status)deallocate(STATE%initial_state%imp_fname)end if if(allocated(state%initial_state%int_fname))thenUNIT=GETFILE(STATE%initial_state%INT_FNAME,RC=status)_VERIFY(status)call MAPL_DestroyFile(unit=UNIT,rc=status)_VERIFY(status)deallocate(state%initial_state%int_fname)end if end subroutine MAPL_DestroyStateSave