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 test_parse_item_common()type(ESMF_HConfig)::hconfigtype(ESMF_HConfigIter)::hc_iter,hc_iter_begin,hc_iter_endcharacter(len=:),allocatable::expression,item_name,content,expected_name,expected_expressioninteger::statusexpected_name='A_1'expected_expression='GC1.F1+GC2.F2'content='{'//expected_name//': {expr: '//expected_expression//'}}'! content = '{A_1: {expr: GC1.F1+GC2.F2}}' hconfig=ESMF_HConfigCreate(content=content,_RC)hc_iter_begin=ESMF_HConfigIterBegin(hconfig,_RC)hc_iter_end=ESMF_HConfigIterEnd(hconfig,_RC)hc_iter=hc_iter_begindo while(ESMF_HConfigIterLoop(hc_iter,hc_iter_begin,hc_iter_end,rc=status))@assertEqual(0,status,'Nonzero status returned.')call parse_item_common(hc_iter,item_name,expression)@assertEqual(expected_name,item_name,'Actual item_name does not match actual item_name.')@assertEqual(expected_expression,expression,'Actual expression does not match actual expression')end do end subroutine test_parse_item_common