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
pure integer function read_whole_number_indexed(string,istart,istop)character(len=*),intent(in)::stringinteger,intent(in)::istartinteger,intent(in)::istopinteger,parameter::BASE=10integer::ninteger::iinteger::place_valueinteger::digit_valueread_whole_number_indexed=INVALID! Check indicesif((istart<1).or.(istart>istop).or.(istop>len(string)))return! Convert characters from string, last to first, to integers,! multiplies by place value, and addsplace_value=1n=0do i=istop,istart,-1digit_value=get_integer_digit_from_string(string,i)if(is_whole_number(digit_value))thenn=n+digit_value*place_valueplace_value=place_value*BASEelsen=INVALIDexit end if end doread_whole_number_indexed=nend function read_whole_number_indexed