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 type_variable_shift(self,reverse)class(type_variable),intent(inout)::selflogical,intent(in),optional::reverselogical::do_reversedo_reverse=.false.if(present(reverse))thendo_reverse=reverseend if if(do_reverse)then if(self%rank>0)thenself%pre(:)=self%old(:,1)! 履歴を左にシフト (old(:,1) <--- old(:,2), ...)if(self%rank>1)thenself%old(:,1:self%rank-1)=self%old(:,2:self%rank)end if! 空いた最後の履歴をクリアself%old(:,self%rank)=0.0d0end if elseself%pre(:)=self%new(:)if(self%rank>0)then! 履歴を右にシフト (old(:,2) <--- old(:,1), ...)if(self%rank>1)thenself%old(:,2:self%rank)=self%old(:,1:self%rank-1)end ifself%old(:,1)=self%pre(:)end if end if end subroutine type_variable_shift