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 string_to_esmf_time(input_string,unusable,rc)result(time)character(len=*),intent(in)::input_stringclass(KeywordEnforcer),optional,intent(in)::unusableinteger,optional,intent(out)::rctype(ESMF_Time)::timeinteger::statusinteger::tposinteger year,month,day,hour,min,secinteger::int_time,int_datecharacter(len=:),allocatable::date_string,time_stringlogical::have_time_UNUSED_DUMMY(unusable)tpos=index(input_string,'T')if(tpos<=0)thenhave_time=.false.elsehave_time=.true.end if if(have_time)thentime_string=input_string(tpos+1:)date_string=input_string(:tpos-1)int_time=string_to_integer_time(time_string,_RC)elsedate_string=trim(input_string)int_time=0end ifint_date=string_to_integer_date(date_string,_RC)year=int_date/10000month=mod(int_date/100,100)day=mod(int_date,100)hour=int_time/10000min=mod(int_time/100,100)sec=mod(int_time,100)call ESMF_TimeSet(time,yy=year,mm=month,dd=day,h=hour,m=min,s=sec,_RC)_RETURN(_SUCCESS)end function string_to_esmf_time