Package gnu.mapping
Class Values<E>
java.lang.Object
gnu.lists.AbstractSequence<E>
gnu.mapping.Values<E>
- All Implemented Interfaces:
Consumable
,Externalizable
,Serializable
- Direct Known Subclasses:
Values.FromArray
,Values.FromList
,Values.FromTreeList
,Values.Values2
Encapsulate multiple values in a single object.
In Scheme and Lisp mainly used to return multiple values from a function.
In XQuery used to represent a non-singleton sequence.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
An implementation of Values that stores the values in an array.static class
An implementation of Values that uses a java.util.List.static class
An implementation of Values that uses a TreeList.static class
A specialization of Values for exactly 2 values. -
Field Summary
FieldsFields inherited from class gnu.lists.AbstractSequence
noInts
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionApply a Procedure with these values as the arguments.If a simple value, return that value.static void
checkFinalPos
(Object values, int pos) static int
countValues
(Object value) static Object
getFromPos
(Object values, int pos) static Object
getFromPosFinal
(Object values, int pos) Object[]
Get the values encapsulated.static int
static Values
make()
static <E> Object
make
(E[] vals) Create a value for each element of an array.static Object
Extract a value (single or Values) from a sub-range of a TreeList.static <E> Object
Create a value for each element of a list.static <E> Values
<E> makeFromArray
(E... vals) protected int
nextIndex
(int ipos) Get the offset from the beginning corresponding to a position cookie.static int
Helper method called by compiled code.static Object
Helper method called by compiled code.void
static Object
static <E,
V1 extends E, V2 extends E>
Values.Values2<E, V1, V2> values2
(V1 val1, V2 val2) void
static void
writeValues
(Object value, Consumer out) Methods inherited from class gnu.lists.AbstractSequence
add, add, addAll, addAll, addPos, asImmutable, badRank, boundedHash, checkCanWrite, checkRank, clear, compare, compare, compare, consume, consume, consumeNext, consumePosRange, contains, containsAll, copyPos, createPos, createRelativePos, effectiveIndex, effectiveIndex, effectiveIndex, effectiveIndex, effectiveIndex, elements, endPos, equals, equals, fill, fill, fillPosRange, firstAttributePos, firstChildPos, firstChildPos, fromEndIndex, get, 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, getRaw, getRowMajor, getShortRaw, getSize, getSize, gotoAttributesStart, gotoChildrenStart, gotoParent, hashCode, hasNext, hasPrevious, indexOf, isAfterPos, isEmpty, iterator, lastIndexOf, listIterator, listIterator, nextIndex, nextMatching, nextPos, parentPos, previousPos, rank, releasePos, remove, remove, removeAll, removePos, removePosRange, retainAll, set, set, setAt, setBuffer, setPosNext, setPosPrevious, setRaw, size, 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.Consumable
consume
Methods inherited from interface java.io.Externalizable
readExternal
-
Field Details
-
noArgs
-
empty
-
-
Constructor Details
-
Values
protected Values()
-
-
Method Details
-
getValues
Get the values encapsulated. -
values
-
values2
-
make
-
make
Create a value for each element of an array.- Parameters:
vals
- values to use. The array should be immutable, as may be re-used for the result.
-
makeFromArray
-
make
Create a value for each element of a list.- Parameters:
seq
- values to use. The list should be immutable, as may be re-used for the result.
-
make
Extract a value (single or Values) from a sub-range of a TreeList.- Parameters:
list
- the TreeList to copystartPosition
- start of range, as a raw index in dataendPosition
- end of range, as a raw index in data
-
canonicalize
If a simple value, return that value. Also, if no values, return empty. -
call_with
Apply a Procedure with these values as the arguments.- Throws:
Throwable
-
print
-
writeExternal
- Specified by:
writeExternal
in interfaceExternalizable
- Throws:
IOException
-
readResolve
- Throws:
ObjectStreamException
-
incrPos
-
getFromPos
-
getFromPosFinal
-
checkFinalPos
-
nextIndex
Helper method called by compiled code. The compiled code iterates through zero or more values. Return the index of the next value, or -1 if currently at eof. A non-Values object is treated as a singleton value, so in that case there is no next value. -
nextValue
Helper method called by compiled code. The compiled code iterates through zero or more values. Extract the object referenced by the curIndex. A non-Values object is treated as a singleton value. -
nextIndex
protected int nextIndex(int ipos) Description copied from class:AbstractSequence
Get the offset from the beginning corresponding to a position cookie.- Overrides:
nextIndex
in classAbstractSequence<E>
-
writeValues
-
countValues
-