Interface ObjectVector<COMPONENT_TYPE>

All Superinterfaces:
Iterable<COMPONENT_TYPE>, LongSizedDataStructure, Serializable, Vector<ObjectVector<COMPONENT_TYPE>>
All Known Implementing Classes:
InstantSsmSourceWrapper.ValueWrapper, ObjectRingBufferVectorWrapper, ObjectSegmentedSortedMultiset, ObjectSubVector, ObjectVector.Indirect, ObjectVectorColumnWrapper, ObjectVectorDirect, ObjectVectorSlice

public interface ObjectVector<COMPONENT_TYPE> extends Vector<ObjectVector<COMPONENT_TYPE>>, Iterable<COMPONENT_TYPE>
  • Field Details

  • Method Details

    • type

      static <T> GenericVectorType<ObjectVector<T>,T> type(GenericType<T> genericType)
    • get

      COMPONENT_TYPE get(long index)
      Get the element of this ObjectVector at offset index. If index is not within range [0, size()), will return null.
      Parameters:
      index - An offset into this ObjectVector
      Returns:
      The element at the specified offset, or null
    • subVector

      ObjectVector<COMPONENT_TYPE> subVector(long fromIndexInclusive, long toIndexExclusive)
      Description copied from interface: Vector
      Get a Vector that represents a slice of this Vector.
      Specified by:
      subVector in interface Vector<COMPONENT_TYPE>
      Parameters:
      fromIndexInclusive - The first offset into this Vector to include in the result; if negative, the result will have a range of null values at offsets in [0, -fromIndexInclusive)
      toIndexExclusive - The first offset into this Vector to not include in the result; if larger than size(), the result will have a range of null values at the corresponding offsets
      Returns:
      The sub-Vector specified by [fromIndexInclusive, toIndexExclusive)
    • subVectorByPositions

      ObjectVector<COMPONENT_TYPE> subVectorByPositions(long[] positions)
      Description copied from interface: Vector
      Get a Vector that represents a set of offset positions in this Vector.
      Specified by:
      subVectorByPositions in interface Vector<COMPONENT_TYPE>
      Parameters:
      positions - The offsets to include; if not within [0, size()), the corresponding offset in the result will contain the appropriate null value
      Returns:
      The sub-Vector specified by positions
    • toArray

      COMPONENT_TYPE[] toArray()
      Description copied from interface: Vector
      Get an array representation of the elements of this Vector. Callers must not mutate the result, as implementations may choose to return their backing array in some cases.
      Specified by:
      toArray in interface Vector<COMPONENT_TYPE>
      Returns:
      An array representation of the elements of this Vector that must not be mutated
    • copyToArray

      COMPONENT_TYPE[] copyToArray()
      Description copied from interface: Vector
      Get an array representation of the elements of this Vector. Callers may freely mutate the result, as it is guaranteed to be freshly-allocated and belongs to the caller upon return.
      Specified by:
      copyToArray in interface Vector<COMPONENT_TYPE>
      Returns:
      An array representation of the elements of this Vector that may be freely mutated
    • getDirect

      Specified by:
      getDirect in interface Vector<COMPONENT_TYPE>
      Returns:
      A version of this Vector that is flattened out to only reference memory
    • getComponentType

      Class<COMPONENT_TYPE> getComponentType()
      Specified by:
      getComponentType in interface Vector<COMPONENT_TYPE>
      Returns:
      The type of elements contained by this Vector
    • iterator

      Specified by:
      iterator in interface Iterable<COMPONENT_TYPE>
    • iterator

      default CloseableIterator<COMPONENT_TYPE> iterator(long fromIndexInclusive, long toIndexExclusive)
      Returns an iterator over a slice of this ObjectVector, with equivalent semantics to subVector(fromIndexInclusive, toIndexExclusive).iterator().
      Parameters:
      fromIndexInclusive - The first position to include
      toIndexExclusive - The first position after fromIndexInclusive to not include
      Returns:
      An iterator over the requested slice
    • toString

      @FinalDefault default String toString(int prefixLength)
      Description copied from interface: Vector
      Get a String representation of a prefix of this Vector.
      Specified by:
      toString in interface Vector<COMPONENT_TYPE>
      Parameters:
      prefixLength - The number of elements to include
      Returns:
      The specified prefix String representation
    • defaultValToString

      static String defaultValToString(Object val)
    • toString

      static String toString(@NotNull @NotNull ObjectVector<?> vector, int prefixLength)
      Helper method for implementing Object.toString().
      Parameters:
      vector - The ObjectVector to convert to a String
      prefixLength - The maximum prefix of vector to convert
      Returns:
      The String representation of vector
    • equals

      static boolean equals(@NotNull @NotNull ObjectVector<?> aVector, @Nullable @Nullable Object bObj)
      Helper method for implementing Object.equals(Object).
      Parameters:
      aVector - The LHS of the equality test (always an ObjectVector)
      bObj - The RHS of the equality test
      Returns:
      Whether the two inputs are equal
    • hashCode

      static int hashCode(@NotNull @NotNull ObjectVector<?> vector)
      Helper method for implementing Object.hashCode(). Follows the pattern in Arrays.hashCode(Object[]).
      Parameters:
      vector - The ObjectVector to hash
      Returns:
      The hash code