Class FSArray<T extends FeatureStructure>

    • Field Detail

      • typeIndexID

        public static final int typeIndexID
        each cover class when loaded sets an index. used in the JCas typeArray to go from the cover class or class instance to the corresponding instance of the _Type class
      • type

        public static final int type
      • theArray

        private final TOP[] theArray
    • Constructor Detail

      • FSArray

        private FSArray()
      • FSArray

        public FSArray​(JCas jcas,
                       int length)
        Make a new FSArray of given size
        Parameters:
        jcas - The JCas
        length - The number of elements in the new array
      • FSArray

        public FSArray​(TypeImpl t,
                       CASImpl c,
                       int length)
        used by generator Make a new FSArray of given size
        Parameters:
        c - -
        t - -
        length - the length of the array
      • FSArray

        public FSArray​(java.lang.Class<? extends TOP> clazz,
                       JCas jcas,
                       int length)
        Constructs an instance of a subtype of FSArray having the component type clazz Note: the array with this component type must already be specified in the type system declaration as a feature whose range is FSArray with the specified elementType.
        Parameters:
        clazz - - the FSArray's element's class
        jcas - -
        length - -
    • Method Detail

      • getTypeIndexID

        public int getTypeIndexID()
        used to obtain reference to the _Type instance
        Overrides:
        getTypeIndexID in class TOP
        Returns:
        the type array index
      • get

        public <U extends FeatureStructure> U get​(int i)
        return the indexed value from the corresponding Cas FSArray as a Java Model object.
        Specified by:
        get in interface ArrayFS<T extends FeatureStructure>
        Type Parameters:
        U - The class of the item being obtained by the get
        Parameters:
        i - index
        Returns:
        The i-th feature structure.
      • get_without_PEAR_conversion

        TOP get_without_PEAR_conversion​(int i)
      • set

        public void set​(int i,
                        T av)
        updates the Cas, setting the indexed value with the corresponding Cas FeatureStructure.
        Specified by:
        set in interface ArrayFS<T extends FeatureStructure>
        Parameters:
        i - The index.
        av - The value.
      • set_without_PEAR_conversion

        void set_without_PEAR_conversion​(int i,
                                         TOP v)
      • copyFromArray

        public <U extends FeatureStructure> void copyFromArray​(U[] src,
                                                               int srcPos,
                                                               int destPos,
                                                               int length)
        Description copied from interface: ArrayFS
        Copy the contents of an external array into this array.
        Specified by:
        copyFromArray in interface ArrayFS<T extends FeatureStructure>
        Type Parameters:
        U - the class of the array being copied into
        Parameters:
        src - The source array.
        srcPos - Where to start copying in the source array.
        destPos - Where to start copying to in the destination array.
        length - The number of elements to copy.
        See Also:
        ArrayFS.copyFromArray(FeatureStructure[], int, int, int)
      • copyToArray

        public <U extends FeatureStructure> void copyToArray​(int srcPos,
                                                             U[] dest,
                                                             int destPos,
                                                             int length)
        Description copied from interface: ArrayFS
        Copy the contents of the array from start to end to the destination destArray with destination offset destOffset.
        Specified by:
        copyToArray in interface ArrayFS<T extends FeatureStructure>
        Type Parameters:
        U - the type of the array element
        Parameters:
        srcPos - The index of the first element to copy.
        dest - The array to copy to.
        destPos - Where to start copying into dest.
        length - The number of elements to copy.
        See Also:
        ArrayFS.copyToArray(int, FeatureStructure[], int, int)
      • copyFromArray

        public void copyFromArray​(java.lang.String[] src,
                                  int srcPos,
                                  int destPos,
                                  int length)
        Not supported, will throw UnsupportedOperationException
        Specified by:
        copyFromArray in interface CommonArrayFS<T extends FeatureStructure>
        Parameters:
        src - The source array.
        srcPos - Where to start copying in the source array.
        destPos - Where to start copying to in the destination array.
        length - The number of elements to copy.
      • copyToArray

        public void copyToArray​(int srcPos,
                                java.lang.String[] dest,
                                int destPos,
                                int length)
        Copies an array of Feature Structures to an Array of Strings. The strings are the "toString()" representation of the feature structures,
        Specified by:
        copyToArray in interface CommonArrayFS<T extends FeatureStructure>
        Parameters:
        srcPos - The index of the first element to copy.
        dest - The array to copy to.
        destPos - Where to start copying into dest.
        length - The number of elements to copy.
        Throws:
        java.lang.ArrayIndexOutOfBoundsException - If srcPos < 0 or length > size() or destPos + length > destArray.length.
      • _getTheArray

        public TOP[] _getTheArray()
      • create

        public static <U extends FeatureStructureFSArray<U> create​(JCas jcas,
                                                                     FeatureStructure[] a)
        Convenience - create a FSArray from an existing FeatureStructure[]
        Type Parameters:
        U - the element type of the FSArray, subtype of FeatureStructure
        Parameters:
        jcas - -
        a - -
        Returns:
        -
      • iterator

        public java.util.Iterator<T> iterator()
        Specified by:
        iterator in interface java.lang.Iterable<T extends FeatureStructure>
      • spliterator

        public java.util.Spliterator<T> spliterator()
        Specified by:
        spliterator in interface java.lang.Iterable<T extends FeatureStructure>
      • stream

        public java.util.stream.Stream<T> stream()
      • contains

        public boolean contains​(java.lang.Object o)
      • toArray

        public <U extends TOP> U[] toArray​(U[] a)
        Description copied from interface: ArrayFS
        Populates an existing array from this FS Array.
        Specified by:
        toArray in interface ArrayFS<T extends FeatureStructure>
        Type Parameters:
        U - the type of the element
        Parameters:
        a - the existing array
        Returns:
        the populated array