Package org.apache.uima.jcas.cas

# Class FSList<T extends TOP>

java.lang.Object
org.apache.uima.cas.impl.FeatureStructureImplC
org.apache.uima.jcas.cas.TOP
org.apache.uima.jcas.cas.FSList<T>

Type Parameters:
  `T` - the type of the elements in the list

All Implemented Interfaces:
  `Cloneable`, `Iterable<T>`, `FeatureStructure`, `FeatureStructureImpl`, `CommonList`

Direct Known Subclasses:
  `EmptyFSList`, `NonEmptyFSList`

public abstract class FSList<T extends TOP> extends TOP implements CommonList, Iterable<T>
T extends TOP, v2 already mandated TOP for set/get

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class org.apache.uima.cas.impl.FeatureStructureImplC

  `FeatureStructureImplC.PrintReferences`

- ## Field Summary

  ### Fields inherited from class org.apache.uima.jcas.cas.TOP

  `_singleton, _TypeName, type, typeIndexID`

  ### Fields inherited from class org.apache.uima.cas.impl.FeatureStructureImplC

  `_casView, _id, DISABLE_RUNTIME_FEATURE_VALIDATION, DISABLE_RUNTIME_FEATURE_VALUE_VALIDATION, IS_ENABLE_RUNTIME_FEATURE_VALIDATION, IS_ENABLE_RUNTIME_FEATURE_VALUE_VALIDATION, IS_V2_PRETTY_PRINT, V2_PRETTY_PRINT`

  ### Fields inherited from interface org.apache.uima.jcas.cas.CommonList

  `_FeatName_head, _FeatName_tail, EMPTY_LIST_STRING`

- ## Constructor Summary

  Constructors
  Modifier
  Constructor
  Description
  `protected`
  `FSList()`
  ``
  `FSList(TypeImpl t, CASImpl c)`
  used by generator Make a new AnnotationBase
  ``
  `FSList(JCas jcas)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `contains(T v)`
  `static <U extends TOP, E extends FeatureStructure>
  FSList<U>`
  `create(JCas jcas, E[] a)`
  Create an FSList from an existing array of Feature Structures
  `NonEmptyFSList<T>`
  `createNonEmptyNode()`
  Creates a non empty node
  `EmptyFSList`
  `emptyList()`
  `T`
  `getNthElement(int i)`
  `Iterator<T>`
  `iterator()`
  `NonEmptyFSList<T>`
  `push(T item)`
  pushes item onto front of this list
  `NonEmptyFSList<T>`
  `pushNode()`
  Creates a new node and pushes it onto the front of the existing node
  `<U extends T>
  SelectFSs<U>`
  `select()`
  Treat an FSArray as a source for SelectFSs.
  `<U extends T>
  SelectFSs<U>`
  `select(int filterByType)`
  Treat an FSArray as a source for SelectFSs.
  `<U extends T>
  SelectFSs<U>`
  `select(Class<U> filterByType)`
  Treat an FSArray as a source for SelectFSs.
  `<U extends T>
  SelectFSs<U>`
  `select(String filterByType)`
  Treat an FSArray as a source for SelectFSs.
  `<U extends T>
  SelectFSs<U>`
  `select(Type filterByType)`
  Treat an FSArray as a source for SelectFSs.
  `Stream<T>`
  `stream()`

  ### Methods inherited from class org.apache.uima.jcas.cas.TOP

  `_createJCasHashMapReserve, _createSearchKey, getTypeIndexID`

  ### Methods inherited from class org.apache.uima.cas.impl.FeatureStructureImplC

  `_copyIntAndRefArraysEqTypesFrom, _copyIntAndRefArraysFrom, _copyIntArrayEqTypesFrom, _getBooleanValueNc, _getBooleanValueNc, _getByteValueNc, _getByteValueNc, _getDoubleValueNc, _getDoubleValueNc, _getFeatFromAdjOffset, _getFeatureValueNc, _getFeatureValueNc, _getFloatValueNc, _getFloatValueNc, _getIntLikeValue, _getIntValueNc, _getIntValueNc, _getLongValueNc, _getLongValueNc, _getRefValueCommon, _getShortValueNc, _getShortValueNc, _getStringValueNc, _getStringValueNc, _getTypeCode, _getTypeImpl, _getView, _id, _inSetSortedIndex, _isJCasHashMapReserve, _isPearTrampoline, _maybeGetBaseForPearFs, _maybeGetBaseForPearFs, _maybeGetPearFs, _maybeGetPearFs, _resetInSetSortedIndex, _setBooleanValueNcNj, _setBooleanValueNcNj, _setBooleanValueNfc, _setByteValueNcNj, _setByteValueNcNj, _setByteValueNfc, _setDoubleValueNcNj, _setDoubleValueNcNj, _setDoubleValueNfc, _setFeatureValueNcNj, _setFeatureValueNcNj, _setFeatureValueNcWj, _setFloatValueNcNj, _setFloatValueNcNj, _setFloatValueNfc, _setInSetSortedIndexed, _setIntLikeValue, _setIntLikeValueNcNj, _setIntValueCJ, _setIntValueNcNj, _setIntValueNcNj, _setIntValueNfc, _setIntValueNfcCJ, _setJCasHashMapReserve, _setLongValueCJ, _setLongValueNcNj, _setLongValueNcNj, _setLongValueNfc, _setLongValueNfcCJ, _setPearTrampoline, _setRefValueCJ, _setRefValueCommon, _setRefValueCommonWj, _setRefValueNfcCJ, _setShortValueNcNj, _setShortValueNcNj, _setShortValueNfc, _setStringValueNcNj, _setStringValueNcWj, _setStringValueNfc, _setTypeImpl, addStringOrPrimitive, addToIndexes, addToIndexes, addToIndexes, clone, compare, equals, getAddress, getBooleanValue, getByteValue, getCAS, getCASImpl, getDoubleValue, getFeatureValue, getFeatureValueAsString, getFloatValue, getIntValue, getLongValue, getLowLevelCas, getShortValue, getStringValue, getType, hashCode, prettyPrint, prettyPrint, prettyPrint, prettyPrint, prettyPrint, prettyPrint, prettyPrintShort, removeFromIndexes, removeFromIndexes, removeFromIndexes, setBooleanValue, setByteValue, setDoubleValue, setFeatureValue, setFeatureValueFromString, setFloatValue, setIntValue, setLongValue, setShortValue, setStringValue, toShortString, toString, toString, wrapGetIntCatchException`

  ### Methods inherited from class java.lang.Object

  `finalize, getClass, notify, notifyAll, wait, wait, wait`

  ### Methods inherited from interface org.apache.uima.jcas.cas.CommonList

  `anyListToOutput, anyListToStringList, get_headAsString, getCommonTail, getLength, getNonEmptyNthNode, getNthNode, insertNode, isEmpty, set_headFromString, setTail, walkList, walkList_saxException`

  ### Methods inherited from interface org.apache.uima.cas.FeatureStructure

  `_getTypeCode, _id, clone, equals, getAddress, getBooleanValue, getByteValue, getCAS, getDoubleValue, getFeatureValue, getFeatureValueAsString, getFloatValue, getIntValue, getJCas, getLongValue, getShortValue, getStringValue, getType, hashCode, setBooleanValue, setByteValue, setDoubleValue, setFeatureValue, setFeatureValueFromString, setFloatValue, setIntValue, setLongValue, setShortValue, setStringValue`

  ### Methods inherited from interface java.lang.Iterable

  `forEach, spliterator`

- ## Constructor Details

  - ### FSList

    protected FSList()

  - ### FSList

    public FSList(JCas jcas)

  - ### FSList

    public FSList(TypeImpl t, CASImpl c)
    used by generator Make a new AnnotationBase
    Parameters:
      `c` - -
      `t` - -

- ## Method Details

  - ### getNthElement

    public T getNthElement(int i)

  - ### createNonEmptyNode

    public NonEmptyFSList<T> createNonEmptyNode()
    Description copied from interface: `CommonList`
    Creates a non empty node
    Specified by:
      `createNonEmptyNode` in interface `CommonList`
    Returns:
      a new non empty node

  - ### pushNode

    public NonEmptyFSList<T> pushNode()
    Description copied from interface: `CommonList`
    Creates a new node and pushes it onto the front of the existing node
    Specified by:
      `pushNode` in interface `CommonList`
    Returns:
      the new node

  - ### select

    public <U extends T> SelectFSs<U> select()
    Treat an FSArray as a source for SelectFSs.
    Type Parameters:
      `U` - generic type being selected
    Returns:
      a new instance of SelectFSs

  - ### select

    public <U extends T> SelectFSs<U> select(Type filterByType)
    Treat an FSArray as a source for SelectFSs.
    Type Parameters:
      `U` - generic type being selected
    Parameters:
      `filterByType` - only includes elements of this type
    Returns:
      a new instance of SelectFSs
    Throws:
      `IllegalArgumentException` - if no type is specified.

  - ### select

    public <U extends T> SelectFSs<U> select(Class<U> filterByType)
    Treat an FSArray as a source for SelectFSs.
    Type Parameters:
      `U` - generic type being selected
    Parameters:
      `filterByType` - only includes elements of this JCas class
    Returns:
      a new instance of SelectFSs
    Throws:
      `IllegalArgumentException` - if no type is specified.

  - ### select

    public <U extends T> SelectFSs<U> select(int filterByType)
    Treat an FSArray as a source for SelectFSs.
    Type Parameters:
      `U` - generic type being selected
    Parameters:
      `filterByType` - only includes elements of this JCas class's type
    Returns:
      a new instance of SelectFSs

  - ### select

    public <U extends T> SelectFSs<U> select(String filterByType)
    Treat an FSArray as a source for SelectFSs.
    Type Parameters:
      `U` - generic type being selected
    Parameters:
      `filterByType` - only includes elements of this type (fully qualified type name)
    Returns:
      a new instance of SelectFSs
    Throws:
      `IllegalArgumentException` - if no type is specified.

  - ### create

    public static <U extends TOP, E extends FeatureStructure> FSList<U> create(JCas jcas, E[] a)
    Create an FSList from an existing array of Feature Structures
    Type Parameters:
      `U` - the type of FeatureStructures being stored in the FSList being created
      `E` - the type of the array argument
    Parameters:
      `jcas` - the JCas to use
      `a` - the array of Feature Structures to populate the list with
    Returns:
      an FSList, with the elements from the array

  - ### iterator

    public Iterator<T> iterator()
    Specified by:
      `iterator` in interface `Iterable<T extends TOP>`

  - ### push

    public NonEmptyFSList<T> push(T item)
    pushes item onto front of this list
    Parameters:
      `item` - the item to push onto the list
    Returns:
      the new list, with this item as the head value of the first element

  - ### stream

    public Stream<T> stream()
    Returns:
      a stream over this FSList

  - ### emptyList

    public EmptyFSList emptyList()
    Specified by:
      `emptyList` in interface `CommonList`
    Returns:
      a shared instance of the empty node.

  - ### contains

    public boolean contains(T v)