D.8.8 Get_Locus_Collected_Array Procedure

The main documentation of the Get_Locus_Collected_Array Procedure contains additional explanation of this code listing.

  define([LOCUS_ROUTINE],[
    pushdef([Get_MANYORONE_Locus_CA], expand(Get_$1_Locus_CA))

    function Get_MANYORONE_Locus_CA (CA) result(Locus_CA)
  
      ! Input variable.
  
      type(Collected_Array_type), intent(in) :: CA   ! Variable to be queried.
  
      ! Output variable.
  
      type(character,name_length) :: Locus_CA        ! Locus of CA.
  
      !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  
      ! Verify requirements.
  
      VERIFY(Valid_State(CA),5)      ! CA is valid.
  
      ! Set the value.
  
      Locus_CA = Locus(CA%$1_Structure)
  
      ! Verify guarantees - none.
  
      return
    end function Get_MANYORONE_Locus_CA

    popdef([Get_MANYORONE_Locus_CA])
  ])

  LOCUS_ROUTINE(Many)
  LOCUS_ROUTINE(One)



Michael L. Hall