Package gnu.lists
Class FVector<E>
- java.lang.Object
-
- gnu.lists.AbstractSequence<E>
-
- gnu.lists.SimpleVector<E>
-
- gnu.lists.FVector<E>
-
- All Implemented Interfaces:
BoundedHashable,Array<E>,AVector<E>,Consumable,GVector<E>,Sequence<E>,Externalizable,Serializable,Comparable,Iterable<E>,Collection<E>,List<E>,RandomAccess
- Direct Known Subclasses:
ArgListVector
public class FVector<E> extends SimpleVector<E> implements Consumable, Comparable, GVector<E>
Simple adjustable-length vector of objects.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected static Object[]empty-
Fields inherited from class gnu.lists.SimpleVector
COPY_ON_WRITE, GAP_FLAG, info, MAX_GAP_SIZE, READ_ONLY_FLAG, SHARED_FLAG, SUBRANGE_FLAG, VERY_SIMPLE_FLAG
-
Fields inherited from class gnu.lists.AbstractSequence
noInts
-
Fields inherited from interface gnu.lists.Sequence
ATTRIBUTE_VALUE, BOOLEAN_VALUE, CDATA_VALUE, CHAR_VALUE, COMMENT_VALUE, DOCUMENT_VALUE, DOUBLE_VALUE, ELEMENT_VALUE, EOF_VALUE, eofValue, FLOAT_VALUE, INT_S16_VALUE, INT_S32_VALUE, INT_S64_VALUE, INT_S8_VALUE, INT_U16_VALUE, INT_U32_VALUE, INT_U64_VALUE, INT_U8_VALUE, OBJECT_VALUE, PRIM_VALUE, PROCESSING_INSTRUCTION_VALUE, TEXT_BYTE_VALUE
-
-
Constructor Summary
Constructors Constructor Description FVector()FVector(int size)FVector(int size, Object value)FVector(Object[] data)Reuses the argument without making a copy.FVector(Object[] values, int offset, int length)Makes a copy of (part of) the argument array.FVector(List seq)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static FVectorcast(Object value)static FVectorcastOrNull(Object obj)protected voidclearBuffer(int start, int count)intcompareTo(Object obj)voidconsume(Consumer out)voidconsumePosRange(int iposStart, int iposEnd, Consumer out)voidcopyBuffer(int length)voidcopyFrom(int index, GVector<E> src, int start, int end)booleanequals(Object obj)voidfill(int start, int end, E new_value)Eget(int index)See java.util.List.Object[]getBuffer()intgetBufferLength()Get the allocated length of the data buffer.EgetRaw(int index)Given an "effective index", return element as object.static FVectormake(Object... data)static <E> FVector<E>makeConstant(E... data)protected FVector<E>newInstance(int newLength)voidreplaceAll(E[] data)protected voidsetBuffer(Object buffer)voidsetRaw(int index, Object value)Given an "effective index", set selected element.-
Methods inherited from class gnu.lists.SimpleVector
add, add, addPos, addSpace, asImmutable, checkCanWrite, delete, doCopyOnWrite, effectiveIndex, fill, forEach, gapReserve, gapReserveGeneric, getGapEnd, getGapSize, getGapStart, getOffsetBits, getRowMajor, getSegment, getSegment, getSegmentReadOnly, getSizeBits, getTag, isAfterPos, isGapBuffer, isReadOnly, isSubRange, isVerySimple, readExternal, setGapBounds, setGapBounds, setInfoField, setReadOnly, shift, size, toDataArray, vsize, writeExternal
-
Methods inherited from class gnu.lists.AbstractSequence
addAll, addAll, badRank, boundedHash, checkRank, clear, compare, compare, compare, consume, consumeNext, contains, containsAll, copyPos, createPos, createRelativePos, effectiveIndex, effectiveIndex, effectiveIndex, effectiveIndex, elements, endPos, equals, fillPosRange, firstAttributePos, firstChildPos, firstChildPos, fromEndIndex, get, get, get, get, getAttribute, getAttributeLength, getBooleanRaw, getByteRaw, getCharRaw, getContainingSequenceSize, getDoubleRaw, getElementKind, getFloatRaw, getIndexDifference, getInt, getInt, getInt, getInt, getInt, getIntRaw, getIterator, getIterator, getIteratorAtPos, getLongRaw, getLowBound, getNextKind, getNextTypeName, getNextTypeObject, getPosNext, getPosPrevious, getShortRaw, getSize, getSize, gotoAttributesStart, gotoChildrenStart, gotoParent, hashCode, hasNext, hasPrevious, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, nextIndex, nextIndex, nextMatching, nextPos, parentPos, previousPos, rank, releasePos, remove, remove, removeAll, removePos, removePosRange, retainAll, set, set, setAt, setPosNext, setPosPrevious, stableCompare, startPos, subList, subSequence, subSequencePos, toArray, toArray, toString, toString, unsupported, unsupportedException
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface gnu.lists.Array
asImmutable, effectiveIndex, effectiveIndex, effectiveIndex, effectiveIndex, effectiveIndex, get, get, get, get, getBooleanRaw, getByteRaw, getCharRaw, getDoubleRaw, getElementKind, getFloatRaw, getInt, getInt, getInt, getInt, getInt, getIntRaw, getLongRaw, getLowBound, getRowMajor, getShortRaw, getSize, getSize, isEmpty, rank, set
-
Methods inherited from interface gnu.kawa.util.BoundedHashable
boundedHash
-
Methods inherited from interface java.util.Collection
parallelStream, removeIf, stream, toArray
-
Methods inherited from interface java.util.List
add, add, addAll, addAll, clear, contains, containsAll, hashCode, indexOf, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, replaceAll, retainAll, sort, spliterator, subList, toArray, toArray
-
-
-
-
Field Detail
-
empty
protected static Object[] empty
-
-
Constructor Detail
-
FVector
public FVector()
-
FVector
public FVector(int size, Object value)
-
FVector
public FVector(int size)
-
FVector
public FVector(Object[] data)
Reuses the argument without making a copy.
-
FVector
public FVector(Object[] values, int offset, int length)
Makes a copy of (part of) the argument array.
-
FVector
public FVector(List seq)
-
-
Method Detail
-
makeConstant
public static <E> FVector<E> makeConstant(E... data)
-
replaceAll
public void replaceAll(E[] data)
-
getBufferLength
public int getBufferLength()
Get the allocated length of the data buffer.- Specified by:
getBufferLengthin classSimpleVector<E>
-
copyBuffer
public void copyBuffer(int length)
- Specified by:
copyBufferin classSimpleVector<E>
-
getBuffer
public Object[] getBuffer()
- Specified by:
getBufferin classSimpleVector<E>
-
setBuffer
protected void setBuffer(Object buffer)
- Specified by:
setBufferin classSimpleVector<E>
-
getRaw
public final E getRaw(int index)
Description copied from interface:ArrayGiven an "effective index", return element as object.
-
setRaw
public final void setRaw(int index, Object value)Description copied from class:AbstractSequenceGiven an "effective index", set selected element.
-
clearBuffer
protected void clearBuffer(int start, int count)- Specified by:
clearBufferin classSimpleVector<E>
-
newInstance
protected FVector<E> newInstance(int newLength)
- Specified by:
newInstancein classSimpleVector<E>
-
fill
public final void fill(int start, int end, E new_value)- Overrides:
fillin classAbstractSequence<E>
-
consumePosRange
public void consumePosRange(int iposStart, int iposEnd, Consumer out)- Overrides:
consumePosRangein classAbstractSequence<E>
-
consume
public void consume(Consumer out)
- Specified by:
consumein interfaceConsumable- Overrides:
consumein classAbstractSequence<E>
-
equals
public boolean equals(Object obj)
- Specified by:
equalsin interfaceCollection<E>- Specified by:
equalsin interfaceList<E>- Overrides:
equalsin classAbstractSequence<E>
-
compareTo
public int compareTo(Object obj)
- Specified by:
compareToin interfaceComparable<E>
-
-