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