Class ByteGapList.ReadOnlyList
- java.lang.Object
-
- org.magicwerk.brownies.collections.primitive.IByteList
-
- org.magicwerk.brownies.collections.primitive.ByteGapList
-
- org.magicwerk.brownies.collections.primitive.ByteGapList.ReadOnlyList
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Cloneable
,IByteListable
- Enclosing class:
- ByteGapList
protected static class ByteGapList.ReadOnlyList extends ByteGapList
A read-only version ofByteGapList
. It is used to implement both unmodifiable and immutable lists. Note that the client cannot change the list, but the content may change if the underlying list is changed.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.magicwerk.brownies.collections.primitive.ByteGapList
ByteGapList.ReadOnlyList
-
Nested classes/interfaces inherited from class org.magicwerk.brownies.collections.primitive.IByteList
IByteList.IByteListableFromArray, IByteList.IByteListableFromCollection, IByteList.IByteListableFromList, IByteList.IByteListableFromMult
-
-
Field Summary
Fields Modifier and Type Field Description private static long
serialVersionUID
UID for serialization-
Fields inherited from class org.magicwerk.brownies.collections.primitive.ByteGapList
DEFAULT_CAPACITY
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
ReadOnlyList(ByteGapList that)
Private constructor used internally.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected boolean
doAdd(int index, byte elem)
Helper method for adding an element to the list.protected void
doClear()
protected void
doModify()
This method is called internally before elements are allocated or freed.protected byte
doRemove(int index)
Helper method to remove an element.protected void
doRemoveAll(int index, int len)
Remove specified range of elements from list.protected byte
doReSet(int index, byte elem)
Sets an element at specified position.protected byte
doSet(int index, byte elem)
Helper method for setting an element in the list.private void
error()
Throw exception if an attempt is made to change an immutable list.-
Methods inherited from class org.magicwerk.brownies.collections.primitive.ByteGapList
add, add, binarySearch, calculateNewCapacity, capacity, clone, copy, create, create, create, crop, doAssign, doClone, doCreate, doEnsureCapacity, doGet, doGetAll, doRemoveAllFast, EMPTY, ensureNormalized, get, getAll, getAll, getDefaultElem, immutable, immutable, immutableList, init, init, init, init, isNormalized, isReadOnly, map, prepareAddBuffer, releaseAddBuffer, remove, size, sort, trimToSize, unmodifiableList
-
Methods inherited from class org.magicwerk.brownies.collections.primitive.IByteList
addAll, addAll, addAll, addAll, addArray, addArray, addArray, addArray, addFirst, addIfAbsent, addLast, addMult, addMult, asIByteListable, binarySearch, checkIndex, checkIndexAdd, checkLength, checkLengths, checkNonNull, checkRange, clear, contains, containsAll, containsAny, containsIf, copy, count, countIf, doAddAll, doCreateArray, doIndexOf, doIndexOfIf, doInitAll, doLastIndexOf, doLastIndexOfIf, doPutAll, doReplace, doRotate, doTransfer, doTransferSwap, drag, element, ensureCapacity, equals, equalsElem, extract, extractIf, fill, filter, filterMap, flatMap, getDistinct, getFirst, getFirstOrNull, getIf, getLast, getLastOrNull, getSingle, getSingleOrNull, hashCode, hashCodeElem, indexOf, indexOf, indexOfIf, indexOfIf, initAll, initAll, initArray, initMult, isEmpty, lastIndexOf, lastIndexOf, lastIndexOfIf, lastIndexOfIf, mapFilter, move, offer, offerFirst, offerLast, peek, peekFirst, peekLast, poll, pollFirst, pollLast, pop, push, put, putAll, putAll, putArray, putMult, remove, remove, removeAll, removeAll, removeAll, removeElem, removeFirst, removeFirstOccurrence, removeIf, removeLast, removeLastOccurrence, replace, replaceAll, replaceAll, replaceArray, replaceMult, resize, retain, retainAll, retainAll, retainIf, reverse, reverse, rotate, rotate, set, setAll, setAll, setArray, setArray, setMult, sort, swap, toArray, toArray, toArray, toArray, toArray, toArray, toArray, toString, transferCopy, transferMove, transferRemove, transferSwap, transform, transformedList
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
UID for serialization- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ReadOnlyList
protected ReadOnlyList(ByteGapList that)
Private constructor used internally.- Parameters:
that
- list to create an immutable view of
-
-
Method Detail
-
doAdd
protected boolean doAdd(int index, byte elem)
Description copied from class:IByteList
Helper method for adding an element to the list. This is the only method which really adds an element. Override if you need to validity checks before adding.- Overrides:
doAdd
in classByteGapList
- Parameters:
index
- index where element should be added (-1 means it is up to the implementation to choose the index)elem
- element to add- Returns:
- true if element has been added, false otherwise
-
doSet
protected byte doSet(int index, byte elem)
Description copied from class:IByteList
Helper method for setting an element in the list. This is the only method which really sets an element. Override if you need to validity checks before setting.- Overrides:
doSet
in classByteGapList
- Parameters:
index
- index where element will be placedelem
- element to set- Returns:
- old element which was at the position
-
doReSet
protected byte doReSet(int index, byte elem)
Description copied from class:IByteList
Sets an element at specified position. This method is used internally if existing elements will be moved etc. Override if you need to validity checks.- Overrides:
doReSet
in classByteGapList
- Parameters:
index
- index where element will be placedelem
- element to set- Returns:
- old element which was at the position
-
doRemove
protected byte doRemove(int index)
Description copied from class:IByteList
Helper method to remove an element. This is the only method which really removes an element. Override if you need to validity checks before removing.- Overrides:
doRemove
in classByteGapList
- Parameters:
index
- index of element to remove- Returns:
- removed element
-
doRemoveAll
protected void doRemoveAll(int index, int len)
Description copied from class:IByteList
Remove specified range of elements from list.- Overrides:
doRemoveAll
in classByteGapList
- Parameters:
index
- index of first element to removelen
- number of elements to remove
-
doClear
protected void doClear()
- Overrides:
doClear
in classByteGapList
-
doModify
protected void doModify()
Description copied from class:IByteList
This method is called internally before elements are allocated or freed. Override if you need to validity checks.
-
error
private void error()
Throw exception if an attempt is made to change an immutable list.
-
-