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