The main documentation of the Get_Name_Distributed_Vector Procedure contains additional explanation of this code listing.
function Get_Name_Distributed_Vector (DV) result(Name) ! Input variable. type(Distributed_Vector_type), intent(in) :: DV ! Variable to be queried. ! Output variable. type(character,name_length) :: Name ! Name of DV. !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ! Verify requirements. VERIFY(Valid_State(DV),5) ! DV is valid. ! Set the value. Name = DV%Name ! Verify guarantees - none. return end function Get_Name_Distributed_Vector