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 FVector
cast(Object value)
static FVector
castOrNull(Object obj)
protected void
clearBuffer(int start, int count)
int
compareTo(Object obj)
void
consume(Consumer out)
void
consumePosRange(int iposStart, int iposEnd, Consumer out)
void
copyBuffer(int length)
void
copyFrom(int index, GVector<E> src, int start, int end)
boolean
equals(Object obj)
void
fill(int start, int end, E new_value)
E
get(int index)
See java.util.List.Object[]
getBuffer()
int
getBufferLength()
Get the allocated length of the data buffer.E
getRaw(int index)
Given an "effective index", return element as object.static FVector
make(Object... data)
static <E> FVector<E>
makeConstant(E... data)
protected FVector<E>
newInstance(int newLength)
void
replaceAll(E[] data)
protected void
setBuffer(Object buffer)
void
setRaw(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:
getBufferLength
in classSimpleVector<E>
-
copyBuffer
public void copyBuffer(int length)
- Specified by:
copyBuffer
in classSimpleVector<E>
-
getBuffer
public Object[] getBuffer()
- Specified by:
getBuffer
in classSimpleVector<E>
-
setBuffer
protected void setBuffer(Object buffer)
- Specified by:
setBuffer
in classSimpleVector<E>
-
getRaw
public final E getRaw(int index)
Description copied from interface:Array
Given an "effective index", return element as object.
-
setRaw
public final void setRaw(int index, Object value)
Description copied from class:AbstractSequence
Given an "effective index", set selected element.
-
clearBuffer
protected void clearBuffer(int start, int count)
- Specified by:
clearBuffer
in classSimpleVector<E>
-
newInstance
protected FVector<E> newInstance(int newLength)
- Specified by:
newInstance
in classSimpleVector<E>
-
fill
public final void fill(int start, int end, E new_value)
- Overrides:
fill
in classAbstractSequence<E>
-
consumePosRange
public void consumePosRange(int iposStart, int iposEnd, Consumer out)
- Overrides:
consumePosRange
in classAbstractSequence<E>
-
consume
public void consume(Consumer out)
- Specified by:
consume
in interfaceConsumable
- Overrides:
consume
in classAbstractSequence<E>
-
equals
public boolean equals(Object obj)
- Specified by:
equals
in interfaceCollection<E>
- Specified by:
equals
in interfaceList<E>
- Overrides:
equals
in classAbstractSequence<E>
-
compareTo
public int compareTo(Object obj)
- Specified by:
compareTo
in interfaceComparable<E>
-
-