org.apache.uima.cas.impl

## Class CASImpl

- java.lang.Object
- - org.apache.uima.cas.AbstractCas_ImplBase
  - - org.apache.uima.cas.impl.CASImpl

- All Implemented Interfaces:
    AbstractCas, CASMgr, CAS, LowLevelCAS

      public class CASImpl
      extends AbstractCas_ImplBase
      implements CAS, CASMgr, LowLevelCAS

  Implements the CAS interfaces. This class must be public because we need to be able to create instance of it from outside the package. Use at your own risk. May change without notice.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `DEFAULT_INITIAL_HEAP_SIZE`
    `static int` | `DEFAULT_RESET_HEAP_SIZE`
    `static String` | `DISABLE_PROTECT_INDEXES` Set this JVM property to false for high performance, (no checking); insure you don't have the report flag (above) turned on - otherwise it will force this to "true".
    `static int` | `FALSE`
    `static boolean` | `IS_THROW_EXCEPTION_CORRUPT_INDEX`
    `static int` | `NULL`
    `static String` | `REPORT_FS_UPDATES_CORRUPTS` Define this JVM property to enable checking for invalid updates to features which are used as keys by any index.
    `static String` | `THROW_EXCEPTION_FS_UPDATES_CORRUPTS` The UIMA framework detects (unless disabled, for high performance) updates to indexed FS which update key values used as keys in indexes.
    `static boolean` | `traceFSs`
    `static int` | `TRUE`

    - ### Fields inherited from interface org.apache.uima.cas.CAS

      `DEFAULT_LANGUAGE_NAME, FEATURE_BASE_NAME_BEGIN, FEATURE_BASE_NAME_END, FEATURE_BASE_NAME_HEAD, FEATURE_BASE_NAME_LANGUAGE, FEATURE_BASE_NAME_SOFA, FEATURE_BASE_NAME_SOFAARRAY, FEATURE_BASE_NAME_SOFAID, FEATURE_BASE_NAME_SOFAMIME, FEATURE_BASE_NAME_SOFANUM, FEATURE_BASE_NAME_SOFASTRING, FEATURE_BASE_NAME_SOFAURI, FEATURE_BASE_NAME_TAIL, FEATURE_FULL_NAME_BEGIN, FEATURE_FULL_NAME_END, FEATURE_FULL_NAME_FLOAT_LIST_HEAD, FEATURE_FULL_NAME_FLOAT_LIST_TAIL, FEATURE_FULL_NAME_FS_LIST_HEAD, FEATURE_FULL_NAME_FS_LIST_TAIL, FEATURE_FULL_NAME_INTEGER_LIST_HEAD, FEATURE_FULL_NAME_INTEGER_LIST_TAIL, FEATURE_FULL_NAME_LANGUAGE, FEATURE_FULL_NAME_SOFA, FEATURE_FULL_NAME_SOFAARRAY, FEATURE_FULL_NAME_SOFAID, FEATURE_FULL_NAME_SOFAMIME, FEATURE_FULL_NAME_SOFANUM, FEATURE_FULL_NAME_SOFASTRING, FEATURE_FULL_NAME_SOFAURI, FEATURE_FULL_NAME_STRING_LIST_HEAD, FEATURE_FULL_NAME_STRING_LIST_TAIL, NAME_DEFAULT_SOFA, NAME_DEFAULT_TEXT_SOFA, NAME_SPACE_UIMA_CAS, NAME_SPACE_UIMA_TCAS, SOFA_INDEX_NAME, STD_ANNOTATION_INDEX, TYPE_NAME_ANNOTATION, TYPE_NAME_ANNOTATION_BASE, TYPE_NAME_ARRAY_BASE, TYPE_NAME_BOOLEAN, TYPE_NAME_BOOLEAN_ARRAY, TYPE_NAME_BYTE, TYPE_NAME_BYTE_ARRAY, TYPE_NAME_DOCUMENT_ANNOTATION, TYPE_NAME_DOUBLE, TYPE_NAME_DOUBLE_ARRAY, TYPE_NAME_EMPTY_FLOAT_LIST, TYPE_NAME_EMPTY_FS_LIST, TYPE_NAME_EMPTY_INTEGER_LIST, TYPE_NAME_EMPTY_STRING_LIST, TYPE_NAME_FLOAT, TYPE_NAME_FLOAT_ARRAY, TYPE_NAME_FLOAT_LIST, TYPE_NAME_FS_ARRAY, TYPE_NAME_FS_LIST, TYPE_NAME_INTEGER, TYPE_NAME_INTEGER_ARRAY, TYPE_NAME_INTEGER_LIST, TYPE_NAME_LIST_BASE, TYPE_NAME_LONG, TYPE_NAME_LONG_ARRAY, TYPE_NAME_NON_EMPTY_FLOAT_LIST, TYPE_NAME_NON_EMPTY_FS_LIST, TYPE_NAME_NON_EMPTY_INTEGER_LIST, TYPE_NAME_NON_EMPTY_STRING_LIST, TYPE_NAME_SHORT, TYPE_NAME_SHORT_ARRAY, TYPE_NAME_SOFA, TYPE_NAME_STRING, TYPE_NAME_STRING_ARRAY, TYPE_NAME_STRING_LIST, TYPE_NAME_TOP, UIMA_CAS_PREFIX`

    - ### Fields inherited from interface org.apache.uima.cas.impl.LowLevelCAS

      `NULL_FS_REF, TYPE_CLASS_BOOLEAN, TYPE_CLASS_BOOLEANARRAY, TYPE_CLASS_BYTE, TYPE_CLASS_BYTEARRAY, TYPE_CLASS_DOUBLE, TYPE_CLASS_DOUBLEARRAY, TYPE_CLASS_FLOAT, TYPE_CLASS_FLOATARRAY, TYPE_CLASS_FS, TYPE_CLASS_FSARRAY, TYPE_CLASS_INT, TYPE_CLASS_INTARRAY, TYPE_CLASS_INVALID, TYPE_CLASS_LONG, TYPE_CLASS_LONGARRAY, TYPE_CLASS_SHORT, TYPE_CLASS_SHORTARRAY, TYPE_CLASS_STRING, TYPE_CLASS_STRINGARRAY`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `CASImpl()` Constructor.
    `CASImpl(CASMgrSerializer ser)`
    `CASImpl(int initialHeapSize, boolean useJcasCache)`
    `CASImpl(TypeSystemImpl typeSystem, int initialHeapSize, boolean useJcasCache)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addFsToIndexes(FeatureStructure fs)` Add a feature structure to all appropriate indexes in the repository associated with this CAS View.
    `void` | `addSofa(FeatureStructure sofa, String sofaName, String mimeType)`
    `void` | `checkArrayBounds(int fsRef, int pos)`
    `void` | `checkArrayBounds(int fsRef, int pos, int length)`
    `void` | `checkArrayPreconditions(int len)`
    `void` | `checkTypingConditions(Type domType, Type ranType, Feature feat)` Check the range is appropriate for this type/feature.
    `boolean` | `clearCasState(CasState state)`
    `void` | `commitFS(FeatureStructure fs)` Deprecated.
    `void` | `commitTypeSystem()`
    `boolean` | `containsCasState(CasState state)`
    `AnnotationFS` | `createAnnotation(Type type, int begin, int end)` Create a new annotation.
    `ArrayFS` | `createArrayFS(int length)` Create a new feature structure array.
    `BooleanArrayFS` | `createBooleanArrayFS(int length)` Create a new Boolean array.
    `ByteArrayFS` | `createByteArrayFS(int length)` Create a new Byte array.
    `DoubleArrayFS` | `createDoubleArrayFS(int length)` Create a new Double array.
    `FeaturePath` | `createFeaturePath()` Create a feature path.
    `FeatureValuePath` | `createFeatureValuePath(String featureValuePath)` Create a feature-value path from a string.
    `<T extends FeatureStructure> FSIterator<T>` | `createFilteredIterator(FSIterator<T> it, FSMatchConstraint cons)` Create an iterator over structures satisfying a given constraint.
    `FloatArrayFS` | `createFloatArrayFS(int length)` Create a new int array.
    `<T extends FeatureStructure> T` | `createFS(int addr)` This is your link from the low-level API to the high-level API.
    `<T extends FeatureStructure> T` | `createFS(Type type)` Create a new FeatureStructure.
    `IntArrayFS` | `createIntArrayFS(int length)` Create a new int array.
    `LongArrayFS` | `createLongArrayFS(int length)` Create a new Long array.
    `Marker` | `createMarker()` The current implementation only supports 1 marker call per CAS.
    `ShortArrayFS` | `createShortArrayFS(int length)` Create a new Short array.
    `SofaFS` | `createSofa(SofaID sofaID, String mimeType)` Deprecated.
    `StringArrayFS` | `createStringArrayFS(int length)` Create a new String array.
    `int` | `createTempArray(int type, int len)` Create a temporary (i.e., per document) array FS on the heap.
    `CAS` | `createView(String aSofaID)` Create a view and its underlying Sofa (subject of analysis).
    `static long` | `double2long(double d)`
    `boolean` | `doUseJcasCache()`
    `void` | `enableReset(boolean flag)` Enable/disable resetting the CAS with `CAS.reset()`.
    `static int` | `float2int(float f)`
    `void` | `flush()` Deprecated. Use `reset()`instead.
    `<T extends FeatureStructure> ListIterator<T>` | `fs2listIterator(FSIterator<T> it)` Wrap a standard Java `ListIterator` around an FSListIterator.
    `<T extends AnnotationFS> AnnotationIndex<T>` | `getAnnotationIndex()` The generic spec T extends AnnotationFS (rather than AnnotationFS) allows the method JCasImpl getAnnotationIndex to return Annotation instead of AnnotationFS
    `<T extends AnnotationFS> AnnotationIndex<T>` | `getAnnotationIndex(Type type)` Get the standard annotation index restricted to a specific annotation type.
    `Type` | `getAnnotationType()` Get the type object for the annotation type.
    `int` | `getArrayStartAddress(int addr)` Get the heap address of the first cell of this array.
    `int` | `getArrayValue(int addr, int index)` Get a specific value out of an array.
    `CASImpl` | `getBaseCAS()`
    `Feature` | `getBeginFeature()` Get the feature object for the annotation begin feature.
    `boolean` | `getBooleanValue(int addr, int feat)`
    `byte` | `getByteValue(int addr, int feat)`
    `CAS` | `getCAS()` Return a non-admin version of the CAS.
    `int` | `getCasId()`
    `int` | `getCasResets()`
    `ConstraintFactory` | `getConstraintFactory()` Get a constraint factory.
    `MarkerImpl` | `getCurrentMark()`
    `CAS` | `getCurrentView()` Get the Cas view that the current component should use.
    `<T extends AnnotationFS> T` | `getDocumentAnnotation()` Generic issue: The returned document annotation could be either an instance of DocumentAnnotation or an instance of AnnotationImpl - the Java cover class used for annotations when JCas is not being used.
    `String` | `getDocumentLanguage()` Gets the language code for this document from the language feature of the special instance of the DocumentationAnnotation associated with this CAS.
    `String` | `getDocumentText()` Get the document text.
    `double` | `getDoubleValue(int addr, int feat)`
    `Feature` | `getEndFeature()` Get the feature object for the annotation end feature.
    `JCas` | `getExistingJCas()` Internal use only
    `int` | `getFeatureOffset(int feat)`
    `int` | `getFeatureValue(int addr, int feat)`
    `String` | `getFeatureValueAsString(int addr, int feat)`
    `float` | `getFloatValue(int addr)`
    `float` | `getFloatValue(int addr, int feat)`
    `FSClassRegistry` | `getFSClassRegistry()`
    `Heap` | `getHeap()`
    `int` | `getHeapValue(int addr)` Get the value of an address on the heap.
    `FSIndexRepository` | `getIndexRepository()` Get the index repository.
    `FSIndexRepositoryMgr` | `getIndexRepositoryMgr()`
    `JCas` | `getJCas()` Get the JCas for this CAS.
    `JCas` | `getJCas(SofaFS aSofa)` Create a JCas view for a Sofa.
    `JCas` | `getJCas(SofaID aSofaID)` Deprecated.
    `ClassLoader` | `getJCasClassLoader()` Gets the ClassLoader that should be used by the JCas to load the generated FS cover classes for this CAS.
    `long` | `getLongValue(int addr, int feat)`
    `LowLevelCAS` | `getLowLevelCAS()` Get an instance of the low-level CAS.
    `short` | `getShortValue(int addr, int feat)`
    `SofaFS` | `getSofa()` Get the Sofa feature structure associated with this CAS view.
    `SofaFS` | `getSofa(SofaID sofaID)` Deprecated.
    `FeatureStructure` | `getSofaDataArray()` Get the Sofa data array.
    `InputStream` | `getSofaDataStream()` Get the Sofa data as a byte stream.
    `InputStream` | `getSofaDataStream(SofaFS aSofa)`
    `String` | `getSofaDataString()` Get the Sofa Data String (a.k.a.
    `String` | `getSofaDataURI()` Get the Sofa data array.
    `int` | `getSofaFeat(int addr)`
    `FSIterator<SofaFS>` | `getSofaIterator()` Get iterator for all SofaFS in the CAS.
    `String` | `getSofaMimeType()` Get the mime type of the Sofa data being analyzed.
    `int` | `getSofaRef()`
    `String` | `getStringForCode(int stringCode)`
    `String` | `getStringValue(int addr, int feat)`
    `int` | `getTypeCode(int fsAddr)`
    `TypeSystem` | `getTypeSystem()` Return the type system of this CAS instance.
    `TypeSystemImpl` | `getTypeSystemImpl()`
    `TypeSystemMgr` | `getTypeSystemMgr()` Return a writable version of the type system.
    `CAS` | `getView(int sofaNum)`
    `CAS` | `getView(SofaFS aSofa)` Get the view for a Sofa (subject of analysis).
    `CAS` | `getView(String aSofaID)` Get the view for a Sofa (subject of analysis).
    `Iterator<CAS>` | `getViewIterator()` Get iterator over all views in this CAS.
    `Iterator<CAS>` | `getViewIterator(String localViewNamePrefix)` Get iterator over all views with the given name prefix.
    `String` | `getViewName()` Get the view name.
    `void` | `initCASIndexes()` Install the standard built-in indexes into the base CAS
    `static float` | `int2float(int i)`
    `boolean` | `isAbstractArrayType(int type)`
    `boolean` | `isAbstractArrayType(Type type)`
    `boolean` | `isAnnotationType(Type t)`
    `boolean` | `isArrayType(int type)`
    `boolean` | `isArrayType(Type type)`
    `boolean` | `isBackwardCompatibleCas()`
    `boolean` | `isBooleanArrayType(int type)`
    `boolean` | `isBooleanArrayType(Type type)`
    `boolean` | `isBooleanType(int type)`
    `boolean` | `isBooleanType(Type type)`
    `boolean` | `isByteArrayType(int type)`
    `boolean` | `isByteArrayType(Type type)`
    `boolean` | `isByteType(int type)`
    `boolean` | `isByteType(Type type)`
    `boolean` | `isCasLocked()`
    `boolean` | `isDoubleArrayType(int type)`
    `boolean` | `isDoubleArrayType(Type type)`
    `boolean` | `isDoubleType(int type)`
    `boolean` | `isDoubleType(Type type)`
    `boolean` | `isFloatArrayType(int type)`
    `boolean` | `isFloatArrayType(Type type)`
    `boolean` | `isFloatType(int type)`
    `boolean` | `isFloatType(Type type)`
    `boolean` | `isFSArrayType(int type)`
    `boolean` | `isFSArrayType(Type type)`
    `boolean` | `isIntArrayType(int type)`
    `boolean` | `isIntArrayType(Type type)`
    `boolean` | `isIntType(int type)`
    `boolean` | `isIntType(Type type)`
    `boolean` | `isLongArrayType(int type)`
    `boolean` | `isLongArrayType(Type type)`
    `boolean` | `isLongType(int type)`
    `boolean` | `isLongType(Type type)`
    `boolean` | `isShortArrayType(int type)`
    `boolean` | `isShortArrayType(Type type)`
    `boolean` | `isShortType(int type)`
    `boolean` | `isShortType(Type type)`
    `boolean` | `isStringArrayType(int type)`
    `boolean` | `isStringArrayType(Type type)`
    `boolean` | `isStringType(int type)`
    `boolean` | `isStringType(Type type)`
    `boolean` | `isSubtypeOfAnnotationBaseType(int t)`
    `int` | `ll_copyCharBufferValue(int fsRef, int featureCode, char[] buffer, int start)`
    `int` | `ll_createAnnotation(int typeCode, int begin, int end)`
    `int` | `ll_createArray(int typeCode, int arrayLength)` Create a new array.
    `int` | `ll_createArray(int typeCode, int arrayLength, boolean doChecks)` Create a new array.
    `int` | `ll_createAuxArray(int typeCode, int arrayLength)`
    `int` | `ll_createBooleanArray(int arrayLength)`
    `int` | `ll_createByteArray(int arrayLength)`
    `int` | `ll_createDocumentAnnotation(int length)`
    `int` | `ll_createDocumentAnnotationNoIndex(int begin, int end)`
    `int` | `ll_createDoubleArray(int arrayLength)`
    `int` | `ll_createFS(int typeCode)` Create a new FS on the heap.
    `int` | `ll_createFS(int typeCode, boolean doCheck)` Create a new FS on the heap.
    `int` | `ll_createFSAnnotCheck(int typeCode)`
    `int` | `ll_createLongArray(int arrayLength)`
    `int` | `ll_createShortArray(int arrayLength)`
    `int` | `ll_getAnnotBegin(int fsRef)`
    `int` | `ll_getAnnotEnd(int fsRef)`
    `int` | `ll_getArraySize(int arrayFsRef)` Get the size of an array.
    `boolean` | `ll_getBooleanArrayValue(int fsRef, int position)`
    `boolean` | `ll_getBooleanArrayValue(int fsRef, int position, boolean doTypeChecks)`
    `boolean` | `ll_getBooleanValue(int fsRef, int featureCode)`
    `boolean` | `ll_getBooleanValue(int fsRef, int featureCode, boolean doTypeChecks)`
    `byte` | `ll_getByteArrayValue(int fsRef, int position)`
    `byte` | `ll_getByteArrayValue(int fsRef, int position, boolean doTypeChecks)`
    `byte` | `ll_getByteValue(int fsRef, int featureCode)`
    `byte` | `ll_getByteValue(int fsRef, int featureCode, boolean doTypeChecks)`
    `int` | `ll_getCharBufferValueSize(int fsRef, int featureCode)`
    `int` | `ll_getDocumentAnnotation()`
    `double` | `ll_getDoubleArrayValue(int fsRef, int position)`
    `double` | `ll_getDoubleArrayValue(int fsRef, int position, boolean doTypeChecks)`
    `double` | `ll_getDoubleValue(int fsRef, int featureCode)`
    `double` | `ll_getDoubleValue(int fsRef, int featureCode, boolean doTypeChecks)`
    `double` | `ll_getDoubleValueFeatOffset(int fsRef, int featureOffset)`
    `float` | `ll_getFloatArrayValue(int fsRef, int position)` Get the value of a float array at a certain position.
    `float` | `ll_getFloatArrayValue(int fsRef, int position, boolean doTypeChecks)` Get the value of a float array at a certain position.
    `float` | `ll_getFloatValue(int fsRef, int featureCode)` Get the value of a float valued feature.
    `float` | `ll_getFloatValue(int fsRef, int featureCode, boolean doTypeChecks)` Get the value of a float valued feature.
    `<T extends FeatureStructure> T` | `ll_getFSForRef(int fsRef)` Return a FS object that corresponds to a low-level reference.
    `int` | `ll_getFSRef(FeatureStructure fsImpl)` Get the low-level reference from an existing FS object.
    `int` | `ll_getFSRefType(int fsRef)` Get the type code for a FS reference.
    `int` | `ll_getFSRefType(int fsRef, boolean doChecks)` Get the type code for a FS reference.
    `LowLevelIndexRepository` | `ll_getIndexRepository()` Get the low-level version of the index repository.
    `int` | `ll_getIntArrayValue(int fsRef, int position)` Get the value of an array at a certain position.
    `int` | `ll_getIntArrayValue(int fsRef, int position, boolean doTypeChecks)` Get the value of an integer array at a certain position.
    `int` | `ll_getIntValue(int fsRef, int featureCode)` Get the value of an integer valued feature.
    `int` | `ll_getIntValue(int fsRef, int featureCode, boolean doTypeChecks)` Get the value of an integer valued feature.
    `int` | `ll_getIntValueFeatOffset(int fsRef, int featureOffset)`
    `long` | `ll_getLongArrayValue(int fsRef, int position)`
    `long` | `ll_getLongArrayValue(int fsRef, int position, boolean doTypeChecks)`
    `long` | `ll_getLongValue(int offset)`
    `long` | `ll_getLongValue(int fsRef, int featureCode)`
    `long` | `ll_getLongValue(int fsRef, int featureCode, boolean doTypeChecks)`
    `long` | `ll_getLongValueFeatOffset(int fsRef, int featureOffset)`
    `int` | `ll_getRefArrayValue(int fsRef, int position)` Get the value of a FS reference array at a certain position.
    `int` | `ll_getRefArrayValue(int fsRef, int position, boolean doTypeChecks)` Get the value of a FS reference array at a certain position.
    `int` | `ll_getRefValue(int fsRef, int featureCode)` Get the value of a FS reference valued feature.
    `int` | `ll_getRefValue(int fsRef, int featureCode, boolean doTypeChecks)` Get the value of a FS reference valued feature.
    `int` | `ll_getRefValueFeatOffset(int fsRef, int featureOffset)`
    `short` | `ll_getShortArrayValue(int fsRef, int position)`
    `short` | `ll_getShortArrayValue(int fsRef, int position, boolean doTypeChecks)`
    `short` | `ll_getShortValue(int fsRef, int featureCode)`
    `short` | `ll_getShortValue(int fsRef, int featureCode, boolean doTypeChecks)`
    `int` | `ll_getSofa()`
    `CASImpl` | `ll_getSofaCasView(int addr)`
    `String` | `ll_getSofaDataString(int sofaAddr)`
    `String` | `ll_getSofaID(int sofaRef)`
    `int` | `ll_getSofaNum(int sofaRef)`
    `String` | `ll_getStringArrayValue(int fsRef, int position)` Get the value of a string array at a certain position.
    `String` | `ll_getStringArrayValue(int fsRef, int position, boolean doTypeChecks)` Get the value of a string array at a certain position.
    `String` | `ll_getStringValue(int fsRef, int featureCode)` Get the value of a string valued feature.
    `String` | `ll_getStringValue(int fsRef, int featureCode, boolean doTypeChecks)` Get the value of a string valued feature.
    `String` | `ll_getStringValueFeatOffset(int fsRef, int featureOffset)`
    `int` | `ll_getTypeClass(int typeCode)` Determine the type class of a type.
    `LowLevelTypeSystem` | `ll_getTypeSystem()` Get the low-level version of the type system object.
    `boolean` | `ll_isRefType(int typeCode)` Checks if the type code is that of a reference type (anything that's not a basic type, currently Integer, String and Float).
    `void` | `ll_setBooleanArrayValue(int fsRef, int position, boolean b)`
    `void` | `ll_setBooleanArrayValue(int fsRef, int position, boolean value, boolean doTypeChecks)`
    `void` | `ll_setBooleanValue(int fsRef, int featureCode, boolean value)`
    `void` | `ll_setBooleanValue(int fsRef, int featureCode, boolean value, boolean doTypeChecks)`
    `void` | `ll_setByteArrayValue(int fsRef, int position, byte value)`
    `void` | `ll_setByteArrayValue(int fsRef, int position, byte value, boolean doTypeChecks)`
    `void` | `ll_setByteValue(int fsRef, int featureCode, byte value)`
    `void` | `ll_setByteValue(int fsRef, int featureCode, byte value, boolean doTypeChecks)`
    `void` | `ll_setCharBufferValue(int fsRef, int featureCode, char[] buffer, int start, int length)`
    `void` | `ll_setCharBufferValue(int fsRef, int featureCode, char[] buffer, int start, int length, boolean doTypeChecks)`
    `void` | `ll_setDoubleArrayValue(int fsRef, int position, double d)`
    `void` | `ll_setDoubleArrayValue(int fsRef, int position, double value, boolean doTypeChecks)`
    `void` | `ll_setDoubleValue(int fsRef, int featureCode, double value)`
    `void` | `ll_setDoubleValue(int fsRef, int featureCode, double value, boolean doTypeChecks)`
    `void` | `ll_setFloatArrayValue(int fsRef, int position, float value)` Set the value of an integer array at a certain position.
    `void` | `ll_setFloatArrayValue(int fsRef, int position, float value, boolean doTypeChecks)` Set the value of an integer array at a certain position.
    `void` | `ll_setFloatValue(int fsRef, int featureCode, float value)` Set the value of a float feature.
    `void` | `ll_setFloatValue(int fsRef, int featureCode, float value, boolean doTypeChecks)` Set the value of a float feature.
    `void` | `ll_setIntArrayValue(int fsRef, int position, int value)` Set the value of an integer array at a certain position.
    `void` | `ll_setIntArrayValue(int fsRef, int position, int value, boolean doTypeChecks)` Set the value of an integer array at a certain position.
    `void` | `ll_setIntValue(int fsRef, int featureCode, int value)` Set the value of an integer feature.
    `void` | `ll_setIntValue(int fsRef, int featureCode, int value, boolean doTypeChecks)` Set the value of an integer feature.
    `void` | `ll_setLongArrayValue(int fsRef, int position, long value)`
    `void` | `ll_setLongArrayValue(int fsRef, int position, long value, boolean doTypeChecks)`
    `void` | `ll_setLongValue(int fsRef, int featureCode, long value)`
    `void` | `ll_setLongValue(int fsRef, int featureCode, long value, boolean doTypeChecks)`
    `void` | `ll_setRefArrayValue(int fsRef, int position, int value)` Set the value of an integer array at a certain position.
    `void` | `ll_setRefArrayValue(int fsRef, int position, int value, boolean doTypeChecks)` Set the value of an integer array at a certain position.
    `void` | `ll_setRefValue(int fsRef, int featureCode, int value)` Set the value of a FS reference feature.
    `void` | `ll_setRefValue(int fsRef, int featureCode, int value, boolean doTypeChecks)` Set the value of a FS reference feature.
    `void` | `ll_setShortArrayValue(int fsRef, int position, short value)`
    `void` | `ll_setShortArrayValue(int fsRef, int position, short value, boolean doTypeChecks)`
    `void` | `ll_setShortValue(int fsRef, int featureCode, short value)`
    `void` | `ll_setShortValue(int fsRef, int featureCode, short value, boolean doTypeChecks)`
    `void` | `ll_setStringArrayValue(int fsRef, int position, String value)` Set the value of an integer array at a certain position.
    `void` | `ll_setStringArrayValue(int fsRef, int position, String value, boolean doTypeChecks)` Set the value of an integer array at a certain position.
    `void` | `ll_setStringValue(int fsRef, int featureCode, String value)` Set the value of a string feature.
    `void` | `ll_setStringValue(int fsRef, int featureCode, String value, boolean doTypeChecks)` Set the value of a string feature.
    `static double` | `long2double(long l)`
    `AutoCloseable` | `protectIndexes()` protectIndexes Within the scope of protectIndexes, feature updates are checked, and if found to be a key, and the FS is in a corruptable index, then the FS is removed from the indexes (in all necessary views) (perhaps multiple times if the FS was added to the indexes multiple times), and this removal is recorded on an new instance of FSsTobeReindexed appended to fssTobeAddedback.
    `void` | `protectIndexes(Runnable r)` Runs the code in the runnable inside a protection block, where any modifications to features done while in this block will be done in a way to protect any indexes which otherwise might become corrupted by the update action; the protection is achieved by temporarily removing the FS (if it is in the indexes), before the update happens.
    `void` | `reinit(CASCompleteSerializer casCompSer)`
    `void` | `reinit(CASSerializer ser)`
    `SerialFormat` | `reinit(CommonSerDes.Header h, InputStream istream, CASMgrSerializer casMgrSerializer, CasLoadMode casLoadMode, BinaryCasSerDes6 f6, AllowPreexistingFS allowPreexistingFS, TypeSystemImpl ts)` --------------------------------------------------------------------- Deserialize a binary input stream, after reading the header, and optionally an externally provided type system and index spec used in compressed form 6 serialization previously This reads in and deserializes CAS data from a stream.
    `SerialFormat` | `reinit(InputStream istream)` --------------------------------------------------------------------- see Blob Format in CASSerializer This reads in and deserializes CAS data from a stream.
    `void` | `release()` Default implementation that returns this CAS to its CasManager by calling `CasOwner.releaseCas(AbstractCas)`.
    `void` | `removeFsFromIndexes(FeatureStructure fs)` Remove a feature structure from all indexes in the repository associated with this CAS View.
    `void` | `reset()` Reset the CAS, emptying it of all content.
    `void` | `resetNoQuestions()`
    `void` | `restoreClassLoaderUnlockCas()`
    `void` | `setCacheNotInIndex(int fsAddr)` Called by feature setters which know the FS is not in any index to bypass any index corruption checking, e.g., CasCopier Internal use only
    `void` | `setCAS(CAS cas)`
    `boolean` | `setCasState(CasState state)`
    `void` | `setCurrentComponentInfo(ComponentInfo info)` Informs the CAS of relevant information about the component that is currently processing it.
    `void` | `setDocumentLanguage(String languageCode)` Sets the language for this document.
    `void` | `setDocumentText(String text)` Set the document text.
    `void` | `setFeatureValue(int addr, int feat, boolean v)`
    `void` | `setFeatureValue(int addr, int feat, byte v)`
    `void` | `setFeatureValue(int addr, int feat, double s)`
    `void` | `setFeatureValue(int addr, int feat, float f)`
    `void` | `setFeatureValue(int addr, int feat, int val)` This is the common point where all sets of values in the heap come through It implements the check for invalid feature setting and potentially the addback.
    `void` | `setFeatureValue(int addr, int feat, long s)`
    `void` | `setFeatureValue(int addr, int feat, short s)`
    `void` | `setFeatureValueFromString(int fsref, int feat, String value)`
    `void` | `setFloatValue(int addr, int feat, float f)`
    `void` | `setJCasClassLoader(ClassLoader classLoader)` Sets the ClassLoader that should be used by the JCas to load the generated FS cover classes for this CAS.
    `void` | `setLocalFsGenerators(FSGenerator<? extends FeatureStructure>[] fsGenerators)`
    `void` | `setOwner(CasOwner aCasOwner)` Provides this CAS with a handle to the CASOwner that owns it.
    `void` | `setSofaDataArray(FeatureStructure array, String mime)` Set the Sofa data as an ArrayFS.
    `void` | `setSofaDataString(String text, String mime)` Set the document text.
    `void` | `setSofaDataURI(String uri, String mime)` Set the Sofa data as a URI.
    `void` | `setSofaFeat(int addr, int sofa)`
    `void` | `setStringValue(int addr, int feat, String s)`
    `CASImpl` | `setupCasFromCasMgrSerializer(CASMgrSerializer casMgrSerializer)`
    `static void` | `setupTSDefault(TypeSystemImpl ts)`
    `int` | `size()` Estimate the memory consumption of this CAS instance (in bytes).
    `void` | `switchClassLoader(ClassLoader newClassLoader, boolean wasLocked)`
    `void` | `switchClassLoaderLockCas(Object userCode)`
    `void` | `switchClassLoaderLockCasCL(ClassLoader newClassLoader)`
    `String` | `toString()`
    `void` | `updateDocumentAnnotation()`
    `boolean` | `usingBaseClassLoader()`

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

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### traceFSs

          public static final boolean traceFSs

    - #### NULL

          public static final int NULL

      See Also:
        Constant Field Values

    - #### TRUE

          public static final int TRUE

      See Also:
        Constant Field Values

    - #### FALSE

          public static final int FALSE

      See Also:
        Constant Field Values

    - #### DEFAULT_INITIAL_HEAP_SIZE

          public static final int DEFAULT_INITIAL_HEAP_SIZE

      See Also:
        Constant Field Values

    - #### DEFAULT_RESET_HEAP_SIZE

          public static final int DEFAULT_RESET_HEAP_SIZE

      See Also:
        Constant Field Values

    - #### THROW_EXCEPTION_FS_UPDATES_CORRUPTS

          public static final String THROW_EXCEPTION_FS_UPDATES_CORRUPTS

      The UIMA framework detects (unless disabled, for high performance) updates to indexed FS which update key values used as keys in indexes. Normally the framework will protect against index corruption by temporarily removing the FS from the indexes, then do the update to the feature value, and then addback the changed FS.

      Users can use the protectIndexes() methods to explicitly control this remove - add back cycle, for instance to "batch" together several updates to multiple features in a FS.

      Some build processes may want to FAIL if any unprotected updates of this kind occur, instead of having the framework silently recover them. This is enabled by having the framework throw an exception; this is controlled by this global JVM property, which, if defined, causes the framework to throw an exception rather than recover.

      See Also:
        Constant Field Values

    - #### IS_THROW_EXCEPTION_CORRUPT_INDEX

          public static final boolean IS_THROW_EXCEPTION_CORRUPT_INDEX

    - #### REPORT_FS_UPDATES_CORRUPTS

          public static final String REPORT_FS_UPDATES_CORRUPTS

      Define this JVM property to enable checking for invalid updates to features which are used as keys by any index.
      - The following are the same: -Duima.check_invalid_fs_updates and -Duima.check_invalid_fs_updates=true
      See Also:
        Constant Field Values

    - #### DISABLE_PROTECT_INDEXES

          public static final String DISABLE_PROTECT_INDEXES

      Set this JVM property to false for high performance, (no checking); insure you don't have the report flag (above) turned on - otherwise it will force this to "true".
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### CASImpl

          public CASImpl(TypeSystemImpl typeSystem,
                         int initialHeapSize,
                         boolean useJcasCache)

    - #### CASImpl

          public CASImpl()

      Constructor. Use only if you want to use the low-level APIs.

    - #### CASImpl

          public CASImpl(int initialHeapSize,
                         boolean useJcasCache)

    - #### CASImpl

          public CASImpl(CASMgrSerializer ser)

  - ### Method Detail

    - #### isCasLocked

          public boolean isCasLocked()

    - #### setCacheNotInIndex

          public void setCacheNotInIndex(int fsAddr)

      Called by feature setters which know the FS is not in any index to bypass any index corruption checking, e.g., CasCopier Internal use only
      Parameters:
        `fsAddr` - the address of the feature structure

    - #### setCasState

          public boolean setCasState(CasState state)

      Parameters:
        `state` - to add to the set
      Returns:
        true if the set changed as a result of this operation

    - #### containsCasState

          public boolean containsCasState(CasState state)

      Parameters:
        `state` - to see if it is among the items in this set
      Returns:
        true if the set contains that state

    - #### clearCasState

          public boolean clearCasState(CasState state)

      Parameters:
        `state` - to be removed
      Returns:
        true if it was present, and is now removed

    - #### setCAS

          public void setCAS(CAS cas)

      Specified by:
        `setCAS` in interface `CASMgr`

    - #### enableReset

          public void enableReset(boolean flag)

      Description copied from interface: `CASMgr`
      Enable/disable resetting the CAS with `CAS.reset()`.
      Specified by:
        `enableReset` in interface `CASMgr`
      Parameters:
        `flag` - true to enable reset

    - #### getTypeSystem

          public TypeSystem getTypeSystem()

      Description copied from interface: `CAS`
      Return the type system of this CAS instance.
      Specified by:
        `getTypeSystem` in interface `CAS`
      Returns:
        The type system, or `null` if none is available.

    - #### getConstraintFactory

          public ConstraintFactory getConstraintFactory()

      Description copied from interface: `CAS`
      Get a constraint factory. A constraint factory is a simple way of creating `FSMatchConstraints`.
      Specified by:
        `getConstraintFactory` in interface `CAS`
      Returns:
        A constraint factory to create new FS constraints.

    - #### createFS

          public <T extends FeatureStructure> T createFS(Type type)

      Description copied from interface: `CAS`
      Create a new FeatureStructure.
      Specified by:
        `createFS` in interface `CAS`
      Type Parameters:
        `T` - the Java cover class for the FS being created
      Parameters:
        `type` - The type of the FS.
      Returns:
        The new FS.

    - #### ll_createFSAnnotCheck

          public int ll_createFSAnnotCheck(int typeCode)

    - #### createArrayFS

          public ArrayFS createArrayFS(int length)

      Description copied from interface: `CAS`
      Create a new feature structure array.
      Specified by:
        `createArrayFS` in interface `CAS`
      Parameters:
        `length` - The length of the array.
      Returns:
        The new array.

    - #### createIntArrayFS

          public IntArrayFS createIntArrayFS(int length)

      Description copied from interface: `CAS`
      Create a new int array.
      Specified by:
        `createIntArrayFS` in interface `CAS`
      Parameters:
        `length` - The length of the array.
      Returns:
        The new array.

    - #### createFloatArrayFS

          public FloatArrayFS createFloatArrayFS(int length)

      Description copied from interface: `CAS`
      Create a new int array.
      Specified by:
        `createFloatArrayFS` in interface `CAS`
      Parameters:
        `length` - The length of the array.
      Returns:
        The new array.

    - #### createStringArrayFS

          public StringArrayFS createStringArrayFS(int length)

      Description copied from interface: `CAS`
      Create a new String array.
      Specified by:
        `createStringArrayFS` in interface `CAS`
      Parameters:
        `length` - The length of the array.
      Returns:
        The new array.

    - #### checkArrayPreconditions

          public final void checkArrayPreconditions(int len)
                                             throws CASRuntimeException

      Throws:
        `CASRuntimeException`

    - #### isBackwardCompatibleCas

          public boolean isBackwardCompatibleCas()

    - #### createSofa

          @Deprecated
          public SofaFS createSofa(SofaID sofaID,
                                               String mimeType)

      Deprecated.
      Description copied from interface: `CAS`
      Create a Subject of Analysis. The new sofaFS is automatically added to the SofaIndex.
      Specified by:
        `createSofa` in interface `CAS`
      Parameters:
        `sofaID` - -
        `mimeType` - -
      Returns:
        The sofaFS.

    - #### addSofa

          public void addSofa(FeatureStructure sofa,
                              String sofaName,
                              String mimeType)

    - #### getSofa

          @Deprecated
          public SofaFS getSofa(SofaID sofaID)

      Deprecated.
      Description copied from interface: `CAS`
      Get sofaFS for given Subject of Analysis ID.
      Specified by:
        `getSofa` in interface `CAS`
      Parameters:
        `sofaID` - -
      Returns:
        The sofaFS.

    - #### ll_getSofaNum

          public int ll_getSofaNum(int sofaRef)

    - #### ll_getSofaID

          public String ll_getSofaID(int sofaRef)

    - #### ll_getSofaDataString

          public String ll_getSofaDataString(int sofaAddr)

    - #### getBaseCAS

          public CASImpl getBaseCAS()

    - #### getSofaIterator

          public FSIterator<SofaFS> getSofaIterator()

      Description copied from interface: `CAS`
      Get iterator for all SofaFS in the CAS.
      Specified by:
        `getSofaIterator` in interface `CAS`
      Returns:
        an iterator over SofaFS.

    - #### setSofaFeat

          public void setSofaFeat(int addr,
                                  int sofa)

    - #### getSofaFeat

          public int getSofaFeat(int addr)

    - #### getSofaRef

          public int getSofaRef()

    - #### getSofaDataStream

          public InputStream getSofaDataStream(SofaFS aSofa)

    - #### createFilteredIterator

          public <T extends FeatureStructure> FSIterator<T> createFilteredIterator(FSIterator<T> it,
                                                                                   FSMatchConstraint cons)

      Description copied from interface: `CAS`
      Create an iterator over structures satisfying a given constraint. Constraints are described in the javadocs for `ConstraintFactory` and related classes.
      Specified by:
        `createFilteredIterator` in interface `CAS`
      Type Parameters:
        `T` - - the type of the Feature Structure
      Parameters:
        `it` - The input iterator.
        `cons` - The constraint specifying what structures should be returned.
      Returns:
        An iterator over FSs.

    - #### commitTypeSystem

          public void commitTypeSystem()

    - #### setLocalFsGenerators

          public void setLocalFsGenerators(FSGenerator<? extends FeatureStructure>[] fsGenerators)

    - #### getIndexRepositoryMgr

          public FSIndexRepositoryMgr getIndexRepositoryMgr()

      Specified by:
        `getIndexRepositoryMgr` in interface `CASMgr`
      Returns:
        a writable version of the index repository. Note that the type system must be committed before this method can be called.

    - #### commitFS

          @Deprecated
          public void commitFS(FeatureStructure fs)

      Deprecated.

    - #### createFeaturePath

          public FeaturePath createFeaturePath()

      Description copied from interface: `CAS`
      Create a feature path. This is mainly useful for creating `FSMatchConstraints`.
      Specified by:
        `createFeaturePath` in interface `CAS`
      Returns:
        A new, empty feature path.

    - #### getTypeSystemMgr

          public TypeSystemMgr getTypeSystemMgr()

      Description copied from interface: `CASMgr`
      Return a writable version of the type system. This may be used to add new types and features.
      Specified by:
        `getTypeSystemMgr` in interface `CASMgr`
      Returns:
        A writable version of the type system.
      See Also:
        `CASMgr.getTypeSystemMgr()`

    - #### reset

          public void reset()

      Description copied from interface: `CAS`
      Reset the CAS, emptying it of all content. Feature structures and iterators will no longer be valid. Note: this method may only be called from an application. Calling it from an annotator will trigger a runtime exception.
      Specified by:
        `reset` in interface `CASMgr`
      Specified by:
        `reset` in interface `CAS`
      See Also:
        `CASMgr`

    - #### resetNoQuestions

          public void resetNoQuestions()

    - #### flush

          @Deprecated
          public void flush()

      Deprecated. Use `reset()`instead.
      Description copied from interface: `CASMgr`
      Flush this CAS instance of all transient data. This will delete all feature structures, but not the type system, the indexes etc. Call before processing a new document.
      Specified by:
        `flush` in interface `CASMgr`

    - #### getIndexRepository

          public FSIndexRepository getIndexRepository()

      Description copied from interface: `CAS`
      Get the index repository.
      Specified by:
        `getIndexRepository` in interface `CAS`
      Returns:
        The index repository, or `null` if none is available.

    - #### reinit

          public void reinit(CASSerializer ser)

    - #### fs2listIterator

          public <T extends FeatureStructure> ListIterator<T> fs2listIterator(FSIterator<T> it)

      Description copied from interface: `CAS`
      Wrap a standard Java `ListIterator` around an FSListIterator. Use if you feel more comfortable with java style iterators.
      Specified by:
        `fs2listIterator` in interface `CAS`
      Type Parameters:
        `T` - The type of FeatureStructure
      Parameters:
        `it` - The `FSListIterator` to be wrapped.
      Returns:
        An equivalent `ListIterator`.
      See Also:
        `CAS.fs2listIterator(FSIterator)`

    - #### getCAS

          public CAS getCAS()

      Description copied from interface: `CASMgr`
      Return a non-admin version of the CAS.
      Specified by:
        `getCAS` in interface `CASMgr`
      Returns:
        The CAS corresponding to this CASMgr.
      See Also:
        `CASMgr.getCAS()`

    - #### getFSClassRegistry

          public FSClassRegistry getFSClassRegistry()

    - #### setupCasFromCasMgrSerializer

          public CASImpl setupCasFromCasMgrSerializer(CASMgrSerializer casMgrSerializer)

    - #### reinit

          public void reinit(CASCompleteSerializer casCompSer)

    - #### reinit

          public SerialFormat reinit(InputStream istream)
                              throws CASRuntimeException

      --------------------------------------------------------------------- see Blob Format in CASSerializer This reads in and deserializes CAS data from a stream. Byte swapping may be needed if the blob is from C++ -- C++ blob serialization writes data in native byte order.
      Parameters:
        `istream` - -
      Returns:
        -
      Throws:
        `CASRuntimeException` - wraps IOException

    - #### reinit

          public SerialFormat reinit(CommonSerDes.Header h,
                                     InputStream istream,
                                     CASMgrSerializer casMgrSerializer,
                                     CasLoadMode casLoadMode,
                                     BinaryCasSerDes6 f6,
                                     AllowPreexistingFS allowPreexistingFS,
                                     TypeSystemImpl ts)
                              throws CASRuntimeException

      --------------------------------------------------------------------- Deserialize a binary input stream, after reading the header, and optionally an externally provided type system and index spec used in compressed form 6 serialization previously This reads in and deserializes CAS data from a stream. Byte swapping may be needed if the blob is from C++ -- C++ blob serialization writes data in native byte order. The corresponding serialization code is in org.apache.uima.cas.impl.Serialization, also see CasIOUtils
      Parameters:
        `h` - -
        `istream` - -
        `casMgrSerializer` - null or the Java object representing the externally supplied type and maybe indexes definition (TSI)
        `casLoadMode` - DEFAULT or REINIT. REINIT required with compressed form 6 to reinitialize the cas's type system and index definition, for form 6.
        `f6` - only used for form 6 where an instance of BinaryCasSerDes6 has been initialized
        `allowPreexistingFS` - only used for form 6 delta deserialization
        `ts` - -
      Returns:
        -
      Throws:
        `CASRuntimeException` - wraps IOException

    - #### createFS

          public <T extends FeatureStructure> T createFS(int addr)

      This is your link from the low-level API to the high-level API. Use this method to create a FeatureStructure object from an address. Not that the reverse is not supported by public APIs (i.e., there is currently no way to get at the address of a FeatureStructure. Maybe we will need to change that.
      Type Parameters:
        `T` - The Java class associated with this feature structure
      Parameters:
        `addr` - The address of the feature structure to be created.
      Returns:
        A FeatureStructure object. Note that no checking whatsoever is done on the input address. There is really no way of finding out which addresses in the valid address space actually represent feature structures, and which don't.

    - #### ll_getArraySize

          public int ll_getArraySize(int arrayFsRef)

      Description copied from interface: `LowLevelCAS`
      Get the size of an array.
      Specified by:
        `ll_getArraySize` in interface `LowLevelCAS`
      Parameters:
        `arrayFsRef` - The array reference.
      Returns:
        The size of the array.

    - #### getArrayStartAddress

          public final int getArrayStartAddress(int addr)

      Get the heap address of the first cell of this array.
      Parameters:
        `addr` - The address of the array.
      Returns:
        The address where the first cell of the array is located.

    - #### getArrayValue

          public int getArrayValue(int addr,
                                   int index)

      Get a specific value out of an array.
      Parameters:
        `addr` - The address of the array.
        `index` - The index of the value we're interested in.
      Returns:
        The value at `index`.
      Throws:
        `ArrayIndexOutOfBoundsException` - -

    - #### getTypeCode

          public int getTypeCode(int fsAddr)

    - #### getHeapValue

          public int getHeapValue(int addr)

      Get the value of an address on the heap.
      Parameters:
        `addr` - The target address.
      Returns:
        The value at the address.

    - #### setFeatureValue

          public void setFeatureValue(int addr,
                                      int feat,
                                      int val)

      This is the common point where all sets of values in the heap come through It implements the check for invalid feature setting and potentially the addback. Set the value of a feature of a FS.
      Parameters:
        `addr` - The address of the FS.
        `feat` - The code of the feature.
        `val` - The new value for the feature.
      Throws:
        `ArrayIndexOutOfBoundsException` - If the feature is not a legal feature, or it is not appropriate for the type at the address.

    - #### setStringValue

          public void setStringValue(int addr,
                                     int feat,
                                     String s)

    - #### setFloatValue

          public void setFloatValue(int addr,
                                    int feat,
                                    float f)

    - #### getFeatureValue

          public int getFeatureValue(int addr,
                                     int feat)

    - #### getStringValue

          public String getStringValue(int addr,
                                       int feat)

    - #### getFloatValue

          public float getFloatValue(int addr,
                                     int feat)

    - #### getFloatValue

          public float getFloatValue(int addr)

    - #### setFeatureValue

          public void setFeatureValue(int addr,
                                      int feat,
                                      byte v)

    - #### getByteValue

          public byte getByteValue(int addr,
                                   int feat)

    - #### setFeatureValue

          public void setFeatureValue(int addr,
                                      int feat,
                                      boolean v)

    - #### getBooleanValue

          public boolean getBooleanValue(int addr,
                                         int feat)

    - #### setFeatureValue

          public void setFeatureValue(int addr,
                                      int feat,
                                      short s)

    - #### getShortValue

          public short getShortValue(int addr,
                                     int feat)

    - #### setFeatureValue

          public void setFeatureValue(int addr,
                                      int feat,
                                      long s)

    - #### getLongValue

          public long getLongValue(int addr,
                                   int feat)

    - #### setFeatureValue

          public void setFeatureValue(int addr,
                                      int feat,
                                      float f)

    - #### setFeatureValue

          public void setFeatureValue(int addr,
                                      int feat,
                                      double s)

    - #### getDoubleValue

          public double getDoubleValue(int addr,
                                       int feat)

    - #### getFeatureValueAsString

          public String getFeatureValueAsString(int addr,
                                                int feat)

    - #### setFeatureValueFromString

          public void setFeatureValueFromString(int fsref,
                                                int feat,
                                                String value)

    - #### int2float

          public static final float int2float(int i)

    - #### float2int

          public static final int float2int(float f)

    - #### long2double

          public static final double long2double(long l)

    - #### double2long

          public static final long double2long(double d)

    - #### getTypeSystemImpl

          public TypeSystemImpl getTypeSystemImpl()

    - #### getStringForCode

          public String getStringForCode(int stringCode)

    - #### isStringType

          public boolean isStringType(Type type)

    - #### isAbstractArrayType

          public boolean isAbstractArrayType(Type type)

    - #### isArrayType

          public boolean isArrayType(Type type)

    - #### isIntArrayType

          public boolean isIntArrayType(Type type)

    - #### isFloatArrayType

          public boolean isFloatArrayType(Type type)

    - #### isStringArrayType

          public boolean isStringArrayType(Type type)

    - #### isBooleanArrayType

          public boolean isBooleanArrayType(Type type)

    - #### isByteArrayType

          public boolean isByteArrayType(Type type)

    - #### isShortArrayType

          public boolean isShortArrayType(Type type)

    - #### isLongArrayType

          public boolean isLongArrayType(Type type)

    - #### isDoubleArrayType

          public boolean isDoubleArrayType(Type type)

    - #### isFSArrayType

          public boolean isFSArrayType(Type type)

    - #### isIntType

          public boolean isIntType(Type type)

    - #### isFloatType

          public boolean isFloatType(Type type)

    - #### isStringType

          public boolean isStringType(int type)

    - #### isByteType

          public boolean isByteType(Type type)

    - #### isBooleanType

          public boolean isBooleanType(Type type)

    - #### isShortType

          public boolean isShortType(Type type)

    - #### isLongType

          public boolean isLongType(Type type)

    - #### isDoubleType

          public boolean isDoubleType(Type type)

    - #### isAbstractArrayType

          public boolean isAbstractArrayType(int type)

    - #### isArrayType

          public boolean isArrayType(int type)

    - #### isIntArrayType

          public boolean isIntArrayType(int type)

    - #### isFloatArrayType

          public boolean isFloatArrayType(int type)

    - #### isStringArrayType

          public boolean isStringArrayType(int type)

    - #### isByteArrayType

          public boolean isByteArrayType(int type)

    - #### isBooleanArrayType

          public boolean isBooleanArrayType(int type)

    - #### isShortArrayType

          public boolean isShortArrayType(int type)

    - #### isLongArrayType

          public boolean isLongArrayType(int type)

    - #### isDoubleArrayType

          public boolean isDoubleArrayType(int type)

    - #### isFSArrayType

          public boolean isFSArrayType(int type)

    - #### isIntType

          public boolean isIntType(int type)

    - #### isFloatType

          public boolean isFloatType(int type)

    - #### isByteType

          public boolean isByteType(int type)

    - #### isBooleanType

          public boolean isBooleanType(int type)

    - #### isShortType

          public boolean isShortType(int type)

    - #### isLongType

          public boolean isLongType(int type)

    - #### isDoubleType

          public boolean isDoubleType(int type)

    - #### getHeap

          public Heap getHeap()

    - #### getFeatureOffset

          public int getFeatureOffset(int feat)

    - #### setupTSDefault

          public static void setupTSDefault(TypeSystemImpl ts)

    - #### initCASIndexes

          public void initCASIndexes()
                              throws CASException

      Description copied from interface: `CASMgr`
      Install the standard built-in indexes into the base CAS
      Specified by:
        `initCASIndexes` in interface `CASMgr`
      Throws:
        `CASException` - if an error occurs
      See Also:
        `CASMgr.initCASIndexes()`

    - #### getView

          public CAS getView(int sofaNum)

    - #### getCurrentView

          public CAS getCurrentView()

      Description copied from interface: `CAS`
      Get the Cas view that the current component should use. This should only be used by single-view components.
      Specified by:
        `getCurrentView` in interface `CAS`
      Returns:
        the Cas view specified for the current component by Sofa mapping. Defaults to _InitialView if there is no Sofa mapping.

    - #### getJCas

          public JCas getJCas()
                       throws CASException

      Description copied from interface: `CAS`
      Get the JCas for this CAS.
      Specified by:
        `getJCas` in interface `CAS`
      Returns:
        The JCas for this CAS.
      Throws:
        `CASException` - -

    - #### getExistingJCas

          public JCas getExistingJCas()

      Internal use only
      Returns:
        corresponding JCas, assuming it exists

    - #### getJCas

          public JCas getJCas(SofaFS aSofa)
                       throws CASException

      Description copied from interface: `CAS`
      Create a JCas view for a Sofa. Note: as of UIMA v2.0, can be replaced with getView(sofaFS).getJCas().
      Specified by:
        `getJCas` in interface `CAS`
      Parameters:
        `aSofa` - a Sofa feature structure in this CAS.
      Returns:
        The JCas view for the given Sofa.
      Throws:
        `CASException` - -

    - #### getJCas

          @Deprecated
          public JCas getJCas(SofaID aSofaID)
                                   throws CASException

      Deprecated.
      Description copied from interface: `CAS`
      Create a JCas view for a Sofa. Note: this is provided for convenience. It is equivalent to `getView(aSofaID).getJCas()`.
      Specified by:
        `getJCas` in interface `CAS`
      Parameters:
        `aSofaID` - the ID of a Sofa defined in this CAS
      Returns:
        The view for the Sofa with ID `aSofaID`.
      Throws:
        `CASException` - if no Sofa with the given ID exists in this CAS

    - #### createView

          public CAS createView(String aSofaID)

      Description copied from interface: `CAS`
      Create a view and its underlying Sofa (subject of analysis). The view provides access to the Sofa data and the index repository that contains metadata (annotations and other feature structures) pertaining to that Sofa.

      This method creates the underlying Sofa feature structure, but does not set the Sofa data. Setting ths Sofa data must be done by calling `CAS.setSofaDataArray(FeatureStructure, String)`, `CAS.setSofaDataString(String, String)` or `CAS.setSofaDataURI(String, String)` on the CAS view returned by this method.

      Specified by:
        `createView` in interface `CAS`
      Parameters:
        `aSofaID` - the local name, before any sofa name mapping is done, for this view (note: this is the same as the associated Sofa name).
      Returns:
        The view corresponding to this local name.

    - #### getView

          public CAS getView(String aSofaID)

      Description copied from interface: `CAS`
      Get the view for a Sofa (subject of analysis). The view provides access to the Sofa data and the index repository that contains metadata (annotations and other feature structures) pertaining to that Sofa.
      Specified by:
        `getView` in interface `CAS`
      Parameters:
        `aSofaID` - the local name, before any sofa name mapping is done, for this view (note: this is the same as the associated Sofa name).
      Returns:
        The view corresponding to this local name.

    - #### getView

          public CAS getView(SofaFS aSofa)

      Description copied from interface: `CAS`
      Get the view for a Sofa (subject of analysis). The view provides access to the Sofa data and the index repository that contains metadata (annotations and other feature structures) pertaining to that Sofa.
      Specified by:
        `getView` in interface `CAS`
      Parameters:
        `aSofa` - a Sofa feature structure in the CAS
      Returns:
        The view for the given Sofa

    - #### ll_getTypeSystem

          public LowLevelTypeSystem ll_getTypeSystem()

      Description copied from interface: `LowLevelCAS`
      Get the low-level version of the type system object. It provides access to the low-level type and feature codes you need to use the data creation and access APIs.
      Specified by:
        `ll_getTypeSystem` in interface `LowLevelCAS`
      Returns:
        The low-level type system.

    - #### ll_getIndexRepository

          public LowLevelIndexRepository ll_getIndexRepository()

      Description copied from interface: `LowLevelCAS`
      Get the low-level version of the index repository. Use it to gain access to low-level indexes, and thus, low-level iterators.
      Specified by:
        `ll_getIndexRepository` in interface `LowLevelCAS`
      Returns:
        A low-level version of the index repository.

    - #### checkTypingConditions

          public final void checkTypingConditions(Type domType,
                                                  Type ranType,
                                                  Feature feat)

      Check the range is appropriate for this type/feature. Throws LowLevelException if it isn't.
      Parameters:
        `domType` - domain type
        `ranType` - range type
        `feat` - feature

    - #### ll_isRefType

          public final boolean ll_isRefType(int typeCode)

      Description copied from interface: `LowLevelCAS`
      Checks if the type code is that of a reference type (anything that's not a basic type, currently Integer, String and Float).
      Specified by:
        `ll_isRefType` in interface `LowLevelCAS`
      Parameters:
        `typeCode` - The type code to check.
      Returns:
        `true` iff `typeCode` is the type code of a reference type.

    - #### ll_getTypeClass

          public final int ll_getTypeClass(int typeCode)

      Description copied from interface: `LowLevelCAS`
      Determine the type class of a type. This is useful for generic CAS exploiters to determine what kind of data they're looking at. The type classes currently defined are:
      - `TYPE_CLASS_INVALID` -- Not a valid type code.
      - `TYPE_CLASS_INT` -- Integer type.
      - `TYPE_CLASS_FLOAT` -- Float type.
      - `TYPE_CLASS_STRING` -- String type.
      - `TYPE_CLASS_BOOLEAN` -- Boolean type.
      - `TYPE_CLASS_BYTE` -- Byte type.
      - `TYPE_CLASS_SHORT` -- Short type.
      - `TYPE_CLASS_LONG` -- Long type.
      - `TYPE_CLASS_DOUBLE` -- Double type.
      - `TYPE_CLASS_INTARRAY` -- Integer array.
      - `TYPE_CLASS_FLOATARRAY` -- Float array.
      - `TYPE_CLASS_STRINGARRAY` -- String array.
      - `TYPE_CLASS_BOOLEANARRAY` -- Boolean array.
      - `TYPE_CLASS_BYTEARRAY` -- Byte array.
      - `TYPE_CLASS_SHORTARRAY` -- Short array.
      - `TYPE_CLASS_LONGARRAY` -- Long array.
      - `TYPE_CLASS_DOUBLEARRAY` -- Double array.
      - `TYPE_CLASS_FSARRAY` -- FS array.
      - `TYPE_CLASS_FS` -- FS type, i.e., all other types, including all user-defined types.
      This method is on the CAS, not the type system, since the specific properties of types are specific to the CAS. The type system does not know, for example, that the CAS treats arrays specially.
      Specified by:
        `ll_getTypeClass` in interface `LowLevelCAS`
      Parameters:
        `typeCode` - The type code.
      Returns:
        A type class for the type code. `TYPE_CLASS_INVALID` if the type code argument does not represent a valid type code.

    - #### ll_createFS

          public final int ll_createFS(int typeCode)

      Description copied from interface: `LowLevelCAS`
      Create a new FS on the heap.
      Specified by:
        `ll_createFS` in interface `LowLevelCAS`
      Parameters:
        `typeCode` - The low-level code of the type of the FS that should be created. If the `typeCode` is not a valid type code, the results of this call are undefined.
      Returns:
        The reference of the newly created FS.

    - #### ll_createFS

          public final int ll_createFS(int typeCode,
                                       boolean doCheck)

      Description copied from interface: `LowLevelCAS`
      Create a new FS on the heap.
      Specified by:
        `ll_createFS` in interface `LowLevelCAS`
      Parameters:
        `typeCode` - The low-level code of the type of the FS that should be created. If the `typeCode` is not a valid type code and the type check flag is not set, the results of this call are undefined.
        `doCheck` - -
      Returns:
        The reference of the newly created FS.

    - #### createTempArray

          public int createTempArray(int type,
                                     int len)

      Create a temporary (i.e., per document) array FS on the heap.
      Parameters:
        `type` - The type code of the array to be created.
        `len` - The length of the array to be created.
      Returns:
        -
      Throws:
        `ArrayIndexOutOfBoundsException` - If `type` is not a type.

    - #### ll_createArray

          public int ll_createArray(int typeCode,
                                    int arrayLength)

      Description copied from interface: `LowLevelCAS`
      Create a new array.
      Specified by:
        `ll_createArray` in interface `LowLevelCAS`
      Parameters:
        `typeCode` - The type code of the array type. If this is not a valid array type code, the behavior of this call is undefined. Only works for arrays where a value is kept in the main heap (use other ll_createXxxArray for boolean, byte, short, long, and double)
        `arrayLength` - The length of the array to be created.
      Returns:
        The address of the newly created array.

    - #### ll_createAuxArray

          public int ll_createAuxArray(int typeCode,
                                       int arrayLength)

    - #### ll_createByteArray

          public int ll_createByteArray(int arrayLength)

      Specified by:
        `ll_createByteArray` in interface `LowLevelCAS`

    - #### ll_createBooleanArray

          public int ll_createBooleanArray(int arrayLength)

      Specified by:
        `ll_createBooleanArray` in interface `LowLevelCAS`

    - #### ll_createShortArray

          public int ll_createShortArray(int arrayLength)

      Specified by:
        `ll_createShortArray` in interface `LowLevelCAS`

    - #### ll_createLongArray

          public int ll_createLongArray(int arrayLength)

      Specified by:
        `ll_createLongArray` in interface `LowLevelCAS`

    - #### ll_createDoubleArray

          public int ll_createDoubleArray(int arrayLength)

      Specified by:
        `ll_createDoubleArray` in interface `LowLevelCAS`

    - #### ll_createArray

          public int ll_createArray(int typeCode,
                                    int arrayLength,
                                    boolean doChecks)

      Description copied from interface: `LowLevelCAS`
      Create a new array.
      Specified by:
        `ll_createArray` in interface `LowLevelCAS`
      Parameters:
        `typeCode` - The type code of the array to be created.
        `arrayLength` - The length of the array to be created.
        `doChecks` - Switch to turn on various sanity checks.
      Returns:
        The address of the newly created array.

    - #### ll_getFSRef

          public final int ll_getFSRef(FeatureStructure fsImpl)

      Description copied from interface: `LowLevelCAS`
      Get the low-level reference from an existing FS object. Use this API if you already have a FS object from somewhere, and want to apply low-level APIs to it.
      Specified by:
        `ll_getFSRef` in interface `LowLevelCAS`
      Parameters:
        `fsImpl` - The FS object for which we want the reference.
      Returns:
        The low-level reference of the FS object parameter.

    - #### ll_getFSForRef

          public <T extends FeatureStructure> T ll_getFSForRef(int fsRef)

      Description copied from interface: `LowLevelCAS`
      Return a FS object that corresponds to a low-level reference. Note that this must be a valid reference that has been obtained from the low-level APIs. If the input reference parameter does not represent a valid reference, the results of this call are undefined.
      Specified by:
        `ll_getFSForRef` in interface `LowLevelCAS`
      Type Parameters:
        `T` - the Java class for the Feature Structure
      Parameters:
        `fsRef` - The FS reference.
      Returns:
        A FS object corresponding to the input reference.

    - #### ll_getIntValue

          public final int ll_getIntValue(int fsRef,
                                          int featureCode)

      Description copied from interface: `LowLevelCAS`
      Get the value of an integer valued feature.
      Specified by:
        `ll_getIntValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The reference to the FS from which to obtain the feature value.
        `featureCode` - The low-level code of the feature whose value is to be returned.
      Returns:
        The value of the feature.

    - #### ll_getIntValueFeatOffset

          public final int ll_getIntValueFeatOffset(int fsRef,
                                                    int featureOffset)

    - #### ll_getFloatValue

          public final float ll_getFloatValue(int fsRef,
                                              int featureCode)

      Description copied from interface: `LowLevelCAS`
      Get the value of a float valued feature.
      Specified by:
        `ll_getFloatValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The reference to the FS from which to obtain the feature value.
        `featureCode` - The low-level code of the feature whose value is to be returned.
      Returns:
        The value of the feature.

    - #### ll_getStringValue

          public final String ll_getStringValue(int fsRef,
                                                int featureCode)

      Description copied from interface: `LowLevelCAS`
      Get the value of a string valued feature.
      Specified by:
        `ll_getStringValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The reference to the FS from which to obtain the feature value.
        `featureCode` - The low-level code of the feature whose value is to be returned.
      Returns:
        The value of the feature.

    - #### ll_getStringValueFeatOffset

          public final String ll_getStringValueFeatOffset(int fsRef,
                                                          int featureOffset)

    - #### ll_getRefValue

          public final int ll_getRefValue(int fsRef,
                                          int featureCode)

      Description copied from interface: `LowLevelCAS`
      Get the value of a FS reference valued feature.
      Specified by:
        `ll_getRefValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The reference to the FS from which to obtain the feature value.
        `featureCode` - The low-level code of the feature whose value is to be returned.
      Returns:
        The value of the feature.

    - #### ll_getRefValueFeatOffset

          public final int ll_getRefValueFeatOffset(int fsRef,
                                                    int featureOffset)

    - #### ll_getIntValue

          public final int ll_getIntValue(int fsRef,
                                          int featureCode,
                                          boolean doTypeChecks)

      Description copied from interface: `LowLevelCAS`
      Get the value of an integer valued feature.
      Specified by:
        `ll_getIntValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The reference to the FS from which to obtain the feature value.
        `featureCode` - The low-level code of the feature whose value is to be returned.
        `doTypeChecks` - Switch to turn on type checking.
      Returns:
        The value of the feature.

    - #### ll_getFloatValue

          public final float ll_getFloatValue(int fsRef,
                                              int featureCode,
                                              boolean doTypeChecks)

      Description copied from interface: `LowLevelCAS`
      Get the value of a float valued feature.
      Specified by:
        `ll_getFloatValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The reference to the FS from which to obtain the feature value.
        `featureCode` - The low-level code of the feature whose value is to be returned.
        `doTypeChecks` - Switch to turn on type checking.
      Returns:
        The value of the feature.

    - #### ll_getStringValue

          public final String ll_getStringValue(int fsRef,
                                                int featureCode,
                                                boolean doTypeChecks)

      Description copied from interface: `LowLevelCAS`
      Get the value of a string valued feature.
      Specified by:
        `ll_getStringValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The reference to the FS from which to obtain the feature value.
        `featureCode` - The low-level code of the feature whose value is to be returned.
        `doTypeChecks` - Switch to turn on type checking.
      Returns:
        The value of the feature.

    - #### ll_getRefValue

          public final int ll_getRefValue(int fsRef,
                                          int featureCode,
                                          boolean doTypeChecks)

      Description copied from interface: `LowLevelCAS`
      Get the value of a FS reference valued feature.
      Specified by:
        `ll_getRefValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The reference to the FS from which to obtain the feature value.
        `featureCode` - The low-level code of the feature whose value is to be returned.
        `doTypeChecks` - Switch to turn on type checking.
      Returns:
        The value of the feature.

    - #### ll_getAnnotBegin

          public int ll_getAnnotBegin(int fsRef)

    - #### ll_getAnnotEnd

          public int ll_getAnnotEnd(int fsRef)

    - #### ll_setIntValue

          public final void ll_setIntValue(int fsRef,
                                           int featureCode,
                                           int value)

      Description copied from interface: `LowLevelCAS`
      Set the value of an integer feature.
      Specified by:
        `ll_setIntValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The reference of the FS on which the feature should be set.
        `featureCode` - The low-level feature code for the feature that should be set.
        `value` - The value to be assigned to the feature.

    - #### ll_setFloatValue

          public final void ll_setFloatValue(int fsRef,
                                             int featureCode,
                                             float value)

      Description copied from interface: `LowLevelCAS`
      Set the value of a float feature.
      Specified by:
        `ll_setFloatValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The reference of the FS on which the feature should be set.
        `featureCode` - The low-level feature code for the feature that should be set.
        `value` - The value to be assigned to the feature.

    - #### ll_setStringValue

          public final void ll_setStringValue(int fsRef,
                                              int featureCode,
                                              String value)

      Description copied from interface: `LowLevelCAS`
      Set the value of a string feature.
      Specified by:
        `ll_setStringValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The reference of the FS on which the feature should be set.
        `featureCode` - The low-level feature code for the feature that should be set.
        `value` - The value to be assigned to the feature.

    - #### ll_setRefValue

          public final void ll_setRefValue(int fsRef,
                                           int featureCode,
                                           int value)

      Description copied from interface: `LowLevelCAS`
      Set the value of a FS reference feature.
      Specified by:
        `ll_setRefValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The reference of the FS on which the feature should be set.
        `featureCode` - The low-level feature code for the feature that should be set.
        `value` - The value to be assigned to the feature.

    - #### ll_setIntValue

          public final void ll_setIntValue(int fsRef,
                                           int featureCode,
                                           int value,
                                           boolean doTypeChecks)

      Description copied from interface: `LowLevelCAS`
      Set the value of an integer feature.
      Specified by:
        `ll_setIntValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The reference of the FS on which the feature should be set.
        `featureCode` - The low-level feature code for the feature that should be set.
        `value` - The value to be assigned to the feature.
        `doTypeChecks` - Switch to turn on type checking.

    - #### ll_setFloatValue

          public final void ll_setFloatValue(int fsRef,
                                             int featureCode,
                                             float value,
                                             boolean doTypeChecks)

      Description copied from interface: `LowLevelCAS`
      Set the value of a float feature.
      Specified by:
        `ll_setFloatValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The reference of the FS on which the feature should be set.
        `featureCode` - The low-level feature code for the feature that should be set.
        `value` - The value to be assigned to the feature.
        `doTypeChecks` - Switch to turn on type checking.

    - #### ll_setStringValue

          public final void ll_setStringValue(int fsRef,
                                              int featureCode,
                                              String value,
                                              boolean doTypeChecks)

      Description copied from interface: `LowLevelCAS`
      Set the value of a string feature.
      Specified by:
        `ll_setStringValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The reference of the FS on which the feature should be set.
        `featureCode` - The low-level feature code for the feature that should be set.
        `value` - The value to be assigned to the feature.
        `doTypeChecks` - Switch to turn on type checking.

    - #### ll_setCharBufferValue

          public final void ll_setCharBufferValue(int fsRef,
                                                  int featureCode,
                                                  char[] buffer,
                                                  int start,
                                                  int length,
                                                  boolean doTypeChecks)

      Specified by:
        `ll_setCharBufferValue` in interface `LowLevelCAS`

    - #### ll_setCharBufferValue

          public final void ll_setCharBufferValue(int fsRef,
                                                  int featureCode,
                                                  char[] buffer,
                                                  int start,
                                                  int length)

      Specified by:
        `ll_setCharBufferValue` in interface `LowLevelCAS`

    - #### ll_copyCharBufferValue

          public int ll_copyCharBufferValue(int fsRef,
                                            int featureCode,
                                            char[] buffer,
                                            int start)

      Specified by:
        `ll_copyCharBufferValue` in interface `LowLevelCAS`

    - #### ll_getCharBufferValueSize

          public int ll_getCharBufferValueSize(int fsRef,
                                               int featureCode)

      Specified by:
        `ll_getCharBufferValueSize` in interface `LowLevelCAS`

    - #### ll_setRefValue

          public final void ll_setRefValue(int fsRef,
                                           int featureCode,
                                           int value,
                                           boolean doTypeChecks)

      Description copied from interface: `LowLevelCAS`
      Set the value of a FS reference feature.
      Specified by:
        `ll_setRefValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The reference of the FS on which the feature should be set.
        `featureCode` - The low-level feature code for the feature that should be set.
        `value` - The value to be assigned to the feature.
        `doTypeChecks` - Switch to turn on type checking.

    - #### ll_getIntArrayValue

          public final int ll_getIntArrayValue(int fsRef,
                                               int position)

      Description copied from interface: `LowLevelCAS`
      Get the value of an array at a certain position.
      Specified by:
        `ll_getIntArrayValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The reference to the array FS.
        `position` - The position whose value should be returned.
      Returns:
        The value at `position`.

    - #### ll_getFloatArrayValue

          public final float ll_getFloatArrayValue(int fsRef,
                                                   int position)

      Description copied from interface: `LowLevelCAS`
      Get the value of a float array at a certain position.
      Specified by:
        `ll_getFloatArrayValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The reference to the array FS.
        `position` - The position whose value should be returned.
      Returns:
        The value at `position`.

    - #### ll_getStringArrayValue

          public final String ll_getStringArrayValue(int fsRef,
                                                     int position)

      Description copied from interface: `LowLevelCAS`
      Get the value of a string array at a certain position.
      Specified by:
        `ll_getStringArrayValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The reference to the array FS.
        `position` - The position whose value should be returned.
      Returns:
        The value at `position`.

    - #### ll_getRefArrayValue

          public final int ll_getRefArrayValue(int fsRef,
                                               int position)

      Description copied from interface: `LowLevelCAS`
      Get the value of a FS reference array at a certain position.
      Specified by:
        `ll_getRefArrayValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The reference to the array FS.
        `position` - The position whose value should be returned.
      Returns:
        The value at `position`.

    - #### checkArrayBounds

          public final void checkArrayBounds(int fsRef,
                                             int pos)

    - #### checkArrayBounds

          public final void checkArrayBounds(int fsRef,
                                             int pos,
                                             int length)

    - #### ll_getIntArrayValue

          public final int ll_getIntArrayValue(int fsRef,
                                               int position,
                                               boolean doTypeChecks)

      Description copied from interface: `LowLevelCAS`
      Get the value of an integer array at a certain position.
      Specified by:
        `ll_getIntArrayValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The reference to the array FS.
        `position` - The position whose value should be returned.
        `doTypeChecks` - Switch to turn on type checking.
      Returns:
        The value at `position`.

    - #### ll_getFloatArrayValue

          public float ll_getFloatArrayValue(int fsRef,
                                             int position,
                                             boolean doTypeChecks)

      Description copied from interface: `LowLevelCAS`
      Get the value of a float array at a certain position.
      Specified by:
        `ll_getFloatArrayValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The reference to the array FS.
        `position` - The position whose value should be returned.
        `doTypeChecks` - Switch to turn on type checking.
      Returns:
        The value at `position`.

    - #### ll_getStringArrayValue

          public String ll_getStringArrayValue(int fsRef,
                                               int position,
                                               boolean doTypeChecks)

      Description copied from interface: `LowLevelCAS`
      Get the value of a string array at a certain position.
      Specified by:
        `ll_getStringArrayValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The reference to the array FS.
        `position` - The position whose value should be returned.
        `doTypeChecks` - Switch to turn on type checking.
      Returns:
        The value at `position`.

    - #### ll_getRefArrayValue

          public int ll_getRefArrayValue(int fsRef,
                                         int position,
                                         boolean doTypeChecks)

      Description copied from interface: `LowLevelCAS`
      Get the value of a FS reference array at a certain position.
      Specified by:
        `ll_getRefArrayValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The reference to the array FS.
        `position` - The position whose value should be returned.
        `doTypeChecks` - Switch to turn on type checking.
      Returns:
        The value at `position`.

    - #### ll_setIntArrayValue

          public void ll_setIntArrayValue(int fsRef,
                                          int position,
                                          int value,
                                          boolean doTypeChecks)

      Description copied from interface: `LowLevelCAS`
      Set the value of an integer array at a certain position.
      Specified by:
        `ll_setIntArrayValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The FS reference of the array.
        `position` - The position whose value will be changed.
        `value` - The new value.
        `doTypeChecks` - Switch to turn on type and bounds checking.

    - #### ll_setFloatArrayValue

          public void ll_setFloatArrayValue(int fsRef,
                                            int position,
                                            float value,
                                            boolean doTypeChecks)

      Description copied from interface: `LowLevelCAS`
      Set the value of an integer array at a certain position.
      Specified by:
        `ll_setFloatArrayValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The FS reference of the array.
        `position` - The position whose value will be changed.
        `value` - The new value.
        `doTypeChecks` - Switch to turn on type and bounds checking.

    - #### ll_setStringArrayValue

          public void ll_setStringArrayValue(int fsRef,
                                             int position,
                                             String value,
                                             boolean doTypeChecks)

      Description copied from interface: `LowLevelCAS`
      Set the value of an integer array at a certain position.
      Specified by:
        `ll_setStringArrayValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The FS reference of the array.
        `position` - The position whose value will be changed.
        `value` - The new value.
        `doTypeChecks` - Switch to turn on type and bounds checking.

    - #### ll_setRefArrayValue

          public void ll_setRefArrayValue(int fsRef,
                                          int position,
                                          int value,
                                          boolean doTypeChecks)

      Description copied from interface: `LowLevelCAS`
      Set the value of an integer array at a certain position.
      Specified by:
        `ll_setRefArrayValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The FS reference of the array.
        `position` - The position whose value will be changed.
        `value` - The new value.
        `doTypeChecks` - Switch to turn on type and bounds checking.

    - #### ll_setIntArrayValue

          public void ll_setIntArrayValue(int fsRef,
                                          int position,
                                          int value)

      Description copied from interface: `LowLevelCAS`
      Set the value of an integer array at a certain position.
      Specified by:
        `ll_setIntArrayValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The FS reference of the array.
        `position` - The position whose value will be changed.
        `value` - The new value.

    - #### ll_setFloatArrayValue

          public void ll_setFloatArrayValue(int fsRef,
                                            int position,
                                            float value)

      Description copied from interface: `LowLevelCAS`
      Set the value of an integer array at a certain position.
      Specified by:
        `ll_setFloatArrayValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The FS reference of the array.
        `position` - The position whose value will be changed.
        `value` - The new value.

    - #### ll_setStringArrayValue

          public void ll_setStringArrayValue(int fsRef,
                                             int position,
                                             String value)

      Description copied from interface: `LowLevelCAS`
      Set the value of an integer array at a certain position.
      Specified by:
        `ll_setStringArrayValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The FS reference of the array.
        `position` - The position whose value will be changed.
        `value` - The new value.

    - #### ll_setRefArrayValue

          public void ll_setRefArrayValue(int fsRef,
                                          int position,
                                          int value)

      Description copied from interface: `LowLevelCAS`
      Set the value of an integer array at a certain position.
      Specified by:
        `ll_setRefArrayValue` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The FS reference of the array.
        `position` - The position whose value will be changed.
        `value` - The new value.

    - #### ll_getFSRefType

          public int ll_getFSRefType(int fsRef)

      Description copied from interface: `LowLevelCAS`
      Get the type code for a FS reference. No bounds checks are performed. If `fsRef` is not a fs reference, the results are undefined. There is also a checked version of this call, which will give better error messages in case of problems.
      Specified by:
        `ll_getFSRefType` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The FS reference.
      Returns:
        The type code for the FS reference; a return value of `0` means that the fsRef is invalid, i.e., `NULL_FS_REF` (but see remarks on bounds checking for this method).

    - #### ll_getFSRefType

          public int ll_getFSRefType(int fsRef,
                                     boolean doChecks)

      Description copied from interface: `LowLevelCAS`
      Get the type code for a FS reference.
      Specified by:
        `ll_getFSRefType` in interface `LowLevelCAS`
      Parameters:
        `fsRef` - The FS reference.
        `doChecks` - Check fsRef for out-of-range errors. If this switch is not set, and the input reference is not a valid reference, the results are undefined.
      Returns:
        The type code for the FS reference; a return value of `0` means that the fsRef is invalid, i.e., `NULL_FS_REF` (but see remarks on bounds checking for this method).

    - #### getLowLevelCAS

          public LowLevelCAS getLowLevelCAS()

      Description copied from interface: `CAS`
      Get an instance of the low-level CAS. Low-level and regular CAS can be used in parallel, all data is always contained in both.

      Note: This is for internal use.

      Specified by:
        `getLowLevelCAS` in interface `CAS`
      Returns:
        A low-level CAS.
      See Also:
        `LowLevelCAS`

    - #### size

          public int size()

      Description copied from interface: `CAS`
      Estimate the memory consumption of this CAS instance (in bytes).
      Specified by:
        `size` in interface `CAS`
      Returns:
        The estimated memory used by this CAS instance.

    - #### getJCasClassLoader

          public ClassLoader getJCasClassLoader()

      Description copied from interface: `CASMgr`
      Gets the ClassLoader that should be used by the JCas to load the generated FS cover classes for this CAS.
      Specified by:
        `getJCasClassLoader` in interface `CASMgr`
      Returns:
        the JCas ClassLoder for this CAS

    - #### setJCasClassLoader

          public void setJCasClassLoader(ClassLoader classLoader)

      Description copied from interface: `CASMgr`
      Sets the ClassLoader that should be used by the JCas to load the generated FS cover classes for this CAS.
      Specified by:
        `setJCasClassLoader` in interface `CASMgr`
      Parameters:
        `classLoader` - the JCas ClassLoder for this CAS

    - #### switchClassLoaderLockCas

          public void switchClassLoaderLockCas(Object userCode)

    - #### switchClassLoaderLockCasCL

          public void switchClassLoaderLockCasCL(ClassLoader newClassLoader)

    - #### switchClassLoader

          public void switchClassLoader(ClassLoader newClassLoader,
                                        boolean wasLocked)

    - #### usingBaseClassLoader

          public boolean usingBaseClassLoader()

    - #### restoreClassLoaderUnlockCas

          public void restoreClassLoaderUnlockCas()

    - #### createFeatureValuePath

          public FeatureValuePath createFeatureValuePath(String featureValuePath)
                                                  throws CASRuntimeException

      Description copied from interface: `CAS`
      Create a feature-value path from a string.
      Specified by:
        `createFeatureValuePath` in interface `CAS`
      Parameters:
        `featureValuePath` - String representation of the feature-value path.
      Returns:
        Feature-value path object.
      Throws:
        `CASRuntimeException` - If the input string is not well-formed.

    - #### setOwner

          public void setOwner(CasOwner aCasOwner)

      Description copied from class: `AbstractCas_ImplBase`
      Provides this CAS with a handle to the CASOwner that owns it. This is called by the framework when a CAS instance is created. This handle is used to implement the release() method by returning the CAS to its CasOwner.
      Overrides:
        `setOwner` in class `AbstractCas_ImplBase`
      Parameters:
        `aCasOwner` - -

    - #### release

          public void release()

      Description copied from class: `AbstractCas_ImplBase`
      Default implementation that returns this CAS to its CasManager by calling `CasOwner.releaseCas(AbstractCas)`.
      Specified by:
        `release` in interface `AbstractCas`
      Overrides:
        `release` in class `AbstractCas_ImplBase`

    - #### createByteArrayFS

          public ByteArrayFS createByteArrayFS(int length)
                                        throws CASRuntimeException

      Description copied from interface: `CAS`
      Create a new Byte array.
      Specified by:
        `createByteArrayFS` in interface `CAS`
      Parameters:
        `length` - The length of the array.
      Returns:
        The new array.
      Throws:
        `CASRuntimeException`

    - #### createBooleanArrayFS

          public BooleanArrayFS createBooleanArrayFS(int length)
                                              throws CASRuntimeException

      Description copied from interface: `CAS`
      Create a new Boolean array.
      Specified by:
        `createBooleanArrayFS` in interface `CAS`
      Parameters:
        `length` - The length of the array.
      Returns:
        The new array.
      Throws:
        `CASRuntimeException`

    - #### createShortArrayFS

          public ShortArrayFS createShortArrayFS(int length)
                                          throws CASRuntimeException

      Description copied from interface: `CAS`
      Create a new Short array.
      Specified by:
        `createShortArrayFS` in interface `CAS`
      Parameters:
        `length` - The length of the array.
      Returns:
        The new array.
      Throws:
        `CASRuntimeException`

    - #### createLongArrayFS

          public LongArrayFS createLongArrayFS(int length)
                                        throws CASRuntimeException

      Description copied from interface: `CAS`
      Create a new Long array.
      Specified by:
        `createLongArrayFS` in interface `CAS`
      Parameters:
        `length` - The length of the array.
      Returns:
        The new array.
      Throws:
        `CASRuntimeException`

    - #### createDoubleArrayFS

          public DoubleArrayFS createDoubleArrayFS(int length)
                                            throws CASRuntimeException

      Description copied from interface: `CAS`
      Create a new Double array.
      Specified by:
        `createDoubleArrayFS` in interface `CAS`
      Parameters:
        `length` - The length of the array.
      Returns:
        The new array.
      Throws:
        `CASRuntimeException`

    - #### ll_getByteValue

          public byte ll_getByteValue(int fsRef,
                                      int featureCode)

      Specified by:
        `ll_getByteValue` in interface `LowLevelCAS`

    - #### ll_getByteValue

          public byte ll_getByteValue(int fsRef,
                                      int featureCode,
                                      boolean doTypeChecks)

      Specified by:
        `ll_getByteValue` in interface `LowLevelCAS`

    - #### ll_getBooleanValue

          public boolean ll_getBooleanValue(int fsRef,
                                            int featureCode)

      Specified by:
        `ll_getBooleanValue` in interface `LowLevelCAS`

    - #### ll_getBooleanValue

          public boolean ll_getBooleanValue(int fsRef,
                                            int featureCode,
                                            boolean doTypeChecks)

      Specified by:
        `ll_getBooleanValue` in interface `LowLevelCAS`

    - #### ll_getShortValue

          public short ll_getShortValue(int fsRef,
                                        int featureCode)

      Specified by:
        `ll_getShortValue` in interface `LowLevelCAS`

    - #### ll_getShortValue

          public short ll_getShortValue(int fsRef,
                                        int featureCode,
                                        boolean doTypeChecks)

      Specified by:
        `ll_getShortValue` in interface `LowLevelCAS`

    - #### ll_getLongValue

          public long ll_getLongValue(int offset)

    - #### ll_getLongValue

          public long ll_getLongValue(int fsRef,
                                      int featureCode)

      Specified by:
        `ll_getLongValue` in interface `LowLevelCAS`

    - #### ll_getLongValueFeatOffset

          public long ll_getLongValueFeatOffset(int fsRef,
                                                int featureOffset)

    - #### ll_getLongValue

          public long ll_getLongValue(int fsRef,
                                      int featureCode,
                                      boolean doTypeChecks)

      Specified by:
        `ll_getLongValue` in interface `LowLevelCAS`

    - #### ll_getDoubleValue

          public double ll_getDoubleValue(int fsRef,
                                          int featureCode)

      Specified by:
        `ll_getDoubleValue` in interface `LowLevelCAS`

    - #### ll_getDoubleValueFeatOffset

          public double ll_getDoubleValueFeatOffset(int fsRef,
                                                    int featureOffset)

    - #### ll_getDoubleValue

          public double ll_getDoubleValue(int fsRef,
                                          int featureCode,
                                          boolean doTypeChecks)

      Specified by:
        `ll_getDoubleValue` in interface `LowLevelCAS`

    - #### ll_setBooleanValue

          public void ll_setBooleanValue(int fsRef,
                                         int featureCode,
                                         boolean value)

      Specified by:
        `ll_setBooleanValue` in interface `LowLevelCAS`

    - #### ll_setBooleanValue

          public void ll_setBooleanValue(int fsRef,
                                         int featureCode,
                                         boolean value,
                                         boolean doTypeChecks)

      Specified by:
        `ll_setBooleanValue` in interface `LowLevelCAS`

    - #### ll_setByteValue

          public final void ll_setByteValue(int fsRef,
                                            int featureCode,
                                            byte value)

      Specified by:
        `ll_setByteValue` in interface `LowLevelCAS`

    - #### ll_setByteValue

          public void ll_setByteValue(int fsRef,
                                      int featureCode,
                                      byte value,
                                      boolean doTypeChecks)

      Specified by:
        `ll_setByteValue` in interface `LowLevelCAS`

    - #### ll_setShortValue

          public final void ll_setShortValue(int fsRef,
                                             int featureCode,
                                             short value)

      Specified by:
        `ll_setShortValue` in interface `LowLevelCAS`

    - #### ll_setShortValue

          public void ll_setShortValue(int fsRef,
                                       int featureCode,
                                       short value,
                                       boolean doTypeChecks)

      Specified by:
        `ll_setShortValue` in interface `LowLevelCAS`

    - #### ll_setLongValue

          public void ll_setLongValue(int fsRef,
                                      int featureCode,
                                      long value)

      Specified by:
        `ll_setLongValue` in interface `LowLevelCAS`

    - #### ll_setLongValue

          public void ll_setLongValue(int fsRef,
                                      int featureCode,
                                      long value,
                                      boolean doTypeChecks)

      Specified by:
        `ll_setLongValue` in interface `LowLevelCAS`

    - #### ll_setDoubleValue

          public void ll_setDoubleValue(int fsRef,
                                        int featureCode,
                                        double value)

      Specified by:
        `ll_setDoubleValue` in interface `LowLevelCAS`

    - #### ll_setDoubleValue

          public void ll_setDoubleValue(int fsRef,
                                        int featureCode,
                                        double value,
                                        boolean doTypeChecks)

      Specified by:
        `ll_setDoubleValue` in interface `LowLevelCAS`

    - #### ll_getByteArrayValue

          public byte ll_getByteArrayValue(int fsRef,
                                           int position)

      Specified by:
        `ll_getByteArrayValue` in interface `LowLevelCAS`

    - #### ll_getByteArrayValue

          public byte ll_getByteArrayValue(int fsRef,
                                           int position,
                                           boolean doTypeChecks)

      Specified by:
        `ll_getByteArrayValue` in interface `LowLevelCAS`

    - #### ll_getBooleanArrayValue

          public boolean ll_getBooleanArrayValue(int fsRef,
                                                 int position)

      Specified by:
        `ll_getBooleanArrayValue` in interface `LowLevelCAS`

    - #### ll_getBooleanArrayValue

          public boolean ll_getBooleanArrayValue(int fsRef,
                                                 int position,
                                                 boolean doTypeChecks)

      Specified by:
        `ll_getBooleanArrayValue` in interface `LowLevelCAS`

    - #### ll_getShortArrayValue

          public short ll_getShortArrayValue(int fsRef,
                                             int position)

      Specified by:
        `ll_getShortArrayValue` in interface `LowLevelCAS`

    - #### ll_getShortArrayValue

          public short ll_getShortArrayValue(int fsRef,
                                             int position,
                                             boolean doTypeChecks)

      Specified by:
        `ll_getShortArrayValue` in interface `LowLevelCAS`

    - #### ll_getLongArrayValue

          public long ll_getLongArrayValue(int fsRef,
                                           int position)

      Specified by:
        `ll_getLongArrayValue` in interface `LowLevelCAS`

    - #### ll_getLongArrayValue

          public long ll_getLongArrayValue(int fsRef,
                                           int position,
                                           boolean doTypeChecks)

      Specified by:
        `ll_getLongArrayValue` in interface `LowLevelCAS`

    - #### ll_getDoubleArrayValue

          public double ll_getDoubleArrayValue(int fsRef,
                                               int position)

      Specified by:
        `ll_getDoubleArrayValue` in interface `LowLevelCAS`

    - #### ll_getDoubleArrayValue

          public double ll_getDoubleArrayValue(int fsRef,
                                               int position,
                                               boolean doTypeChecks)

      Specified by:
        `ll_getDoubleArrayValue` in interface `LowLevelCAS`

    - #### ll_setByteArrayValue

          public void ll_setByteArrayValue(int fsRef,
                                           int position,
                                           byte value)

      Specified by:
        `ll_setByteArrayValue` in interface `LowLevelCAS`

    - #### ll_setByteArrayValue

          public void ll_setByteArrayValue(int fsRef,
                                           int position,
                                           byte value,
                                           boolean doTypeChecks)

      Specified by:
        `ll_setByteArrayValue` in interface `LowLevelCAS`

    - #### ll_setBooleanArrayValue

          public void ll_setBooleanArrayValue(int fsRef,
                                              int position,
                                              boolean b)

      Specified by:
        `ll_setBooleanArrayValue` in interface `LowLevelCAS`

    - #### ll_setBooleanArrayValue

          public void ll_setBooleanArrayValue(int fsRef,
                                              int position,
                                              boolean value,
                                              boolean doTypeChecks)

      Specified by:
        `ll_setBooleanArrayValue` in interface `LowLevelCAS`

    - #### ll_setShortArrayValue

          public void ll_setShortArrayValue(int fsRef,
                                            int position,
                                            short value)

      Specified by:
        `ll_setShortArrayValue` in interface `LowLevelCAS`

    - #### ll_setShortArrayValue

          public void ll_setShortArrayValue(int fsRef,
                                            int position,
                                            short value,
                                            boolean doTypeChecks)

      Specified by:
        `ll_setShortArrayValue` in interface `LowLevelCAS`

    - #### ll_setLongArrayValue

          public void ll_setLongArrayValue(int fsRef,
                                           int position,
                                           long value)

      Specified by:
        `ll_setLongArrayValue` in interface `LowLevelCAS`

    - #### ll_setLongArrayValue

          public void ll_setLongArrayValue(int fsRef,
                                           int position,
                                           long value,
                                           boolean doTypeChecks)

      Specified by:
        `ll_setLongArrayValue` in interface `LowLevelCAS`

    - #### ll_setDoubleArrayValue

          public void ll_setDoubleArrayValue(int fsRef,
                                             int position,
                                             double d)

      Specified by:
        `ll_setDoubleArrayValue` in interface `LowLevelCAS`

    - #### ll_setDoubleArrayValue

          public void ll_setDoubleArrayValue(int fsRef,
                                             int position,
                                             double value,
                                             boolean doTypeChecks)

      Specified by:
        `ll_setDoubleArrayValue` in interface `LowLevelCAS`

    - #### isAnnotationType

          public boolean isAnnotationType(Type t)

    - #### isSubtypeOfAnnotationBaseType

          public boolean isSubtypeOfAnnotationBaseType(int t)

      Parameters:
        `t` - the type code to test
      Returns:
        true if that type is subsumed by AnnotationBase type

    - #### createAnnotation

          public AnnotationFS createAnnotation(Type type,
                                               int begin,
                                               int end)

      Description copied from interface: `CAS`
      Create a new annotation. Note that you still need to insert the annotation into the index repository yourself.
      Specified by:
        `createAnnotation` in interface `CAS`
      Parameters:
        `type` - The type of the annotation.
        `begin` - The start of the annotation.
        `end` - The end of the annotation.
      Returns:
        A new annotation object.

    - #### ll_createAnnotation

          public int ll_createAnnotation(int typeCode,
                                         int begin,
                                         int end)

    - #### getAnnotationIndex

          public <T extends AnnotationFS> AnnotationIndex<T> getAnnotationIndex()

      The generic spec T extends AnnotationFS (rather than AnnotationFS) allows the method JCasImpl getAnnotationIndex to return Annotation instead of AnnotationFS
      Specified by:
        `getAnnotationIndex` in interface `CAS`
      Type Parameters:
        `T` - the Java class associated with the annotation index
      Returns:
        the annotation index

    - #### getAnnotationIndex

          public <T extends AnnotationFS> AnnotationIndex<T> getAnnotationIndex(Type type)

      Description copied from interface: `CAS`
      Get the standard annotation index restricted to a specific annotation type.
      Specified by:
        `getAnnotationIndex` in interface `CAS`
      Type Parameters:
        `T` - the topmost Java class corresponding to the type
      Parameters:
        `type` - The annotation type the index is restricted to.
      Returns:
        The standard annotation index, restricted to `type`.
      See Also:
        `CAS.getAnnotationIndex(Type)`

    - #### getAnnotationType

          public Type getAnnotationType()

      Description copied from interface: `CAS`
      Get the type object for the annotation type.
      Specified by:
        `getAnnotationType` in interface `CAS`
      Returns:
        The annotation type.
      See Also:
        `CAS.getAnnotationType()`

    - #### getEndFeature

          public Feature getEndFeature()

      Description copied from interface: `CAS`
      Get the feature object for the annotation end feature.
      Specified by:
        `getEndFeature` in interface `CAS`
      Returns:
        The annotation end feature.
      See Also:
        `CAS.getEndFeature()`

    - #### getBeginFeature

          public Feature getBeginFeature()

      Description copied from interface: `CAS`
      Get the feature object for the annotation begin feature.
      Specified by:
        `getBeginFeature` in interface `CAS`
      Returns:
        The annotation begin feature.
      See Also:
        `CAS.getBeginFeature()`

    - #### ll_createDocumentAnnotation

          public int ll_createDocumentAnnotation(int length)

    - #### ll_createDocumentAnnotationNoIndex

          public int ll_createDocumentAnnotationNoIndex(int begin,
                                                        int end)

    - #### updateDocumentAnnotation

          public void updateDocumentAnnotation()

    - #### getDocumentAnnotation

          public <T extends AnnotationFS> T getDocumentAnnotation()

      Generic issue: The returned document annotation could be either an instance of DocumentAnnotation or an instance of AnnotationImpl - the Java cover class used for annotations when JCas is not being used.
      Specified by:
        `getDocumentAnnotation` in interface `CAS`
      Type Parameters:
        `T` - the Java class for the document annotation. Could be the JCas cover class or FeatureStructure
      Returns:
        The document annotation, or `null` if there is none. The return value is the JCas cover class or the plain Java cover class for FeatureStructures if JCas is not in use.

    - #### ll_getDocumentAnnotation

          public int ll_getDocumentAnnotation()

      Returns:
        the fs addr of the document annotation found via the index, or 0 if not there

    - #### getDocumentLanguage

          public String getDocumentLanguage()

      Description copied from interface: `CAS`
      Gets the language code for this document from the language feature of the special instance of the DocumentationAnnotation associated with this CAS.
      Specified by:
        `getDocumentLanguage` in interface `CAS`
      Returns:
        language identifier

    - #### getDocumentText

          public String getDocumentText()

      Description copied from interface: `CAS`
      Get the document text.
      Specified by:
        `getDocumentText` in interface `CAS`
      Returns:
        The text being analyzed, or `null` if not set.

    - #### getSofaDataString

          public String getSofaDataString()

      Description copied from interface: `CAS`
      Get the Sofa Data String (a.k.a. the document text).
      Specified by:
        `getSofaDataString` in interface `CAS`
      Returns:
        The Sofa data string, or `null` if not set.

    - #### getSofaDataArray

          public FeatureStructure getSofaDataArray()

      Description copied from interface: `CAS`
      Get the Sofa data array.
      Specified by:
        `getSofaDataArray` in interface `CAS`
      Returns:
        The Sofa Data being analyzed, or `null` if not set.

    - #### getSofaDataURI

          public String getSofaDataURI()

      Description copied from interface: `CAS`
      Get the Sofa data array.
      Specified by:
        `getSofaDataURI` in interface `CAS`
      Returns:
        The Sofa URI being analyzed, or `null` if not set.

    - #### getSofaDataStream

          public InputStream getSofaDataStream()

      Description copied from interface: `CAS`
      Get the Sofa data as a byte stream.
      Specified by:
        `getSofaDataStream` in interface `CAS`
      Returns:
        A stream handle to the Sofa Data, or `null` if not set.

    - #### getSofaMimeType

          public String getSofaMimeType()

      Description copied from interface: `CAS`
      Get the mime type of the Sofa data being analyzed.
      Specified by:
        `getSofaMimeType` in interface `CAS`
      Returns:
        the mime type of the Sofa

    - #### getSofa

          public SofaFS getSofa()

      Description copied from interface: `CAS`
      Get the Sofa feature structure associated with this CAS view.
      Specified by:
        `getSofa` in interface `CAS`
      Returns:
        The SofaFS associated with this CAS view.

    - #### ll_getSofa

          public int ll_getSofa()

      Specified by:
        `ll_getSofa` in interface `LowLevelCAS`
      Returns:
        the addr of the sofaFS associated with this view, or 0

    - #### getViewName

          public String getViewName()

      Description copied from interface: `CAS`
      Get the view name. The view name is the same as the name of the view's Sofa, retrieved by getSofa().getSofaID(), except for the initial View before its Sofa has been created.
      Specified by:
        `getViewName` in interface `CAS`
      Returns:
        The name of the view

    - #### setDocumentLanguage

          public void setDocumentLanguage(String languageCode)

      Description copied from interface: `CAS`
      Sets the language for this document. This value sets the language feature of the special instance of DocumentAnnotation associated with this CAS.
      Specified by:
        `setDocumentLanguage` in interface `CAS`
      Parameters:
        `languageCode` - -

    - #### setDocumentText

          public void setDocumentText(String text)

      Description copied from interface: `CAS`
      Set the document text. Once set, Sofa data is immutable, and cannot be set again until the CAS has been reset.
      Specified by:
        `setDocumentText` in interface `CAS`
      Parameters:
        `text` - The text to be analyzed.

    - #### setSofaDataString

          public void setSofaDataString(String text,
                                        String mime)
                                 throws CASRuntimeException

      Description copied from interface: `CAS`
      Set the document text. Once set, Sofa data is immutable, and cannot be set again until the CAS has been reset.
      Specified by:
        `setSofaDataString` in interface `CAS`
      Parameters:
        `text` - The text to be analyzed.
        `mime` - The mime type of the data
      Throws:
        `CASRuntimeException` - If the Sofa data has already been set.

    - #### setSofaDataArray

          public void setSofaDataArray(FeatureStructure array,
                                       String mime)
                                throws CASRuntimeException

      Description copied from interface: `CAS`
      Set the Sofa data as an ArrayFS. Once set, Sofa data is immutable, and cannot be set again until the CAS has been reset.
      Specified by:
        `setSofaDataArray` in interface `CAS`
      Parameters:
        `array` - The ArrayFS to be analyzed.
        `mime` - The mime type of the data
      Throws:
        `CASRuntimeException` - If the Sofa data has already been set.

    - #### setSofaDataURI

          public void setSofaDataURI(String uri,
                                     String mime)
                              throws CASRuntimeException

      Description copied from interface: `CAS`
      Set the Sofa data as a URI. Once set, Sofa data is immutable, and cannot be set again until the CAS has been reset.
      Specified by:
        `setSofaDataURI` in interface `CAS`
      Parameters:
        `uri` - The URI of the data to be analyzed.
        `mime` - The mime type of the data
      Throws:
        `CASRuntimeException` - If the Sofa data has already been set.

    - #### setCurrentComponentInfo

          public void setCurrentComponentInfo(ComponentInfo info)

      Description copied from interface: `CAS`
      Informs the CAS of relevant information about the component that is currently processing it. This is called by the framework automatically; users do not need to call it.
      Specified by:
        `setCurrentComponentInfo` in interface `CAS`
      Parameters:
        `info` - information about the component that is currently processing this CAS.

    - #### addFsToIndexes

          public void addFsToIndexes(FeatureStructure fs)

      Description copied from interface: `CAS`
      Add a feature structure to all appropriate indexes in the repository associated with this CAS View. If no indexes exist for the type of FS that you are adding, then a bag (unsorted) index will be automatically created.

      Important: after you have called `addFsToIndexes(...)` on a FS, do not change the values of any features used for indexing. If you do, the index will become corrupted and may be unusable. If you need to change an index feature value, first call `removeFsFromIndexes(...)` on the FS, change the feature values, then call `addFsToIndexes(...)` again.

      Specified by:
        `addFsToIndexes` in interface `CAS`
      Parameters:
        `fs` - The Feature Structure to be added.
      See Also:
        `CAS.addFsToIndexes(FeatureStructure fs)`

    - #### removeFsFromIndexes

          public void removeFsFromIndexes(FeatureStructure fs)

      Description copied from interface: `CAS`
      Remove a feature structure from all indexes in the repository associated with this CAS View. The remove operation removes the exact fs from the indexes, unlike operations such as moveTo which use the fs argument as a template. It is not an error if the FS is not present in the indexes.
      Specified by:
        `removeFsFromIndexes` in interface `CAS`
      Parameters:
        `fs` - The Feature Structure to be removed.
      See Also:
        `CAS.removeFsFromIndexes(FeatureStructure fs)`

    - #### ll_getSofaCasView

          public CASImpl ll_getSofaCasView(int addr)

      Specified by:
        `ll_getSofaCasView` in interface `LowLevelCAS`
      Parameters:
        `addr` - the heap address of a feature structure which is a subtype of AnnotationBase
      Returns:
        the view associated with this FS where it could be indexed

    - #### getViewIterator

          public Iterator<CAS> getViewIterator()

      Description copied from interface: `CAS`
      Get iterator over all views in this CAS. Each view provides access to Sofa data and the index repository that contains metadata (annotations and other feature structures) pertaining to that Sofa.
      Specified by:
        `getViewIterator` in interface `CAS`
      Returns:
        an iterator which returns all views. Each object returned by the iterator is of type CAS.

    - #### getViewIterator

          public Iterator<CAS> getViewIterator(String localViewNamePrefix)

      Description copied from interface: `CAS`
      Get iterator over all views with the given name prefix. Each view provides access to Sofa data and the index repository that contains metadata (annotations and other feature structures) pertaining to that Sofa.

      When passed the prefix namePrefix, the iterator will return all views who name is either exactly equal to namePrefix or is of the form namePrefix`.`suffix, where suffix can be any String.

      Specified by:
        `getViewIterator` in interface `CAS`
      Parameters:
        `localViewNamePrefix` - the local name prefix, before any sofa name mapping is done, for this view (note: this is the same as the associated Sofa name prefix).
      Returns:
        an iterator which returns all views with the given name prefix. Each object returned by the iterator is of type CAS.

    - #### doUseJcasCache

          public final boolean doUseJcasCache()

    - #### protectIndexes

          public AutoCloseable protectIndexes()

      protectIndexes Within the scope of protectIndexes, feature updates are checked, and if found to be a key, and the FS is in a corruptable index, then the FS is removed from the indexes (in all necessary views) (perhaps multiple times if the FS was added to the indexes multiple times), and this removal is recorded on an new instance of FSsTobeReindexed appended to fssTobeAddedback. Later, when the protectIndexes is closed, the tobe items are added back to the indies.
      Specified by:
        `protectIndexes` in interface `CAS`
      Returns:
        an object used to record things that need adding back

    - #### protectIndexes

          public void protectIndexes(Runnable r)

      Description copied from interface: `CAS`
      Runs the code in the runnable inside a protection block, where any modifications to features done while in this block will be done in a way to protect any indexes which otherwise might become corrupted by the update action; the protection is achieved by temporarily removing the FS (if it is in the indexes), before the update happens. At the end of the block, affected indexes have any removed-under-the-covers FSs added back.
      Specified by:
        `protectIndexes` in interface `CAS`
      Parameters:
        `r` - an inner block of code to be run with

    - #### createMarker

          public Marker createMarker()

      The current implementation only supports 1 marker call per CAS. Subsequent calls will throw an error. The design is intended to support (at some future point) multiple markers; for this to work, the intent is to extend the MarkerImpl to keep track of indexes into these IntVectors specifying where that marker starts/ends.
      Specified by:
        `createMarker` in interface `CAS`
      Returns:
        a marker object.

    - #### getCurrentMark

          public MarkerImpl getCurrentMark()

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`

    - #### getCasResets

          public int getCasResets()

    - #### getCasId

          public int getCasId()

Copyright © 2006–2021 The Apache Software Foundation. All rights reserved.