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.
subroutine cli_reserve(this)!! Make room for one more entry, doubling the store when it is full.class(cli_t),intent(inout)::thistype(entry_t),allocatable::bigger(:)integer(default_int)::capacityif(.not.allocated(this%entries))then allocate(this%entries(INITIAL_CAPACITY))return end ifcapacity=size(this%entries,kind=default_int)if(this%count<capacity)return allocate(bigger(2_default_int*capacity))bigger(1:this%count)=this%entries(1:this%count)call move_alloc(bigger,this%entries)end subroutine cli_reserve