Package com.strobel.core
Class ReadOnlyList<T>
- java.lang.Object
-
- com.strobel.core.ReadOnlyList<T>
-
- All Implemented Interfaces:
IReadOnlyList<T>
,java.lang.Iterable<T>
,java.util.Collection<T>
,java.util.List<T>
,java.util.RandomAccess
- Direct Known Subclasses:
MemberList
,ParameterList
public class ReadOnlyList<T> extends java.lang.Object implements IReadOnlyList<T>, java.util.List<T>, java.util.RandomAccess
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
ReadOnlyList.ReadOnlyCollectionIterator<T>
-
Field Summary
Fields Modifier and Type Field Description private T[]
_elements
private int
_length
private int
_offset
private static ReadOnlyList<?>
EMPTY
private static ReadOnlyList.ReadOnlyCollectionIterator<?>
EMPTY_ITERATOR
-
Constructor Summary
Constructors Modifier Constructor Description private
ReadOnlyList(ReadOnlyList<T> baseList, int offset, int length)
ReadOnlyList(java.lang.Class<? extends T> elementType, java.util.Collection<? extends T> elements)
ReadOnlyList(T... elements)
ReadOnlyList(T[] elements, int offset, int length)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
add(int index, T element)
boolean
add(T T)
boolean
addAll(int index, java.util.Collection<? extends T> c)
boolean
addAll(java.util.Collection<? extends T> c)
void
clear()
boolean
contains(java.lang.Object o)
boolean
containsAll(java.lang.Iterable<? extends T> c)
boolean
containsAll(java.util.Collection<?> c)
static <T> ReadOnlyList<T>
emptyList()
boolean
equals(java.lang.Object obj)
T
get(int index)
protected T[]
getElements()
protected int
getOffset()
int
hashCode()
int
indexOf(java.lang.Object o)
boolean
isEmpty()
java.util.Iterator<T>
iterator()
int
lastIndexOf(java.lang.Object o)
java.util.ListIterator<T>
listIterator()
java.util.ListIterator<T>
listIterator(int index)
protected ReadOnlyList<T>
newInstance()
T
remove(int index)
boolean
remove(java.lang.Object o)
boolean
removeAll(java.util.Collection<?> c)
boolean
retainAll(java.util.Collection<?> c)
T
set(int index, T element)
int
size()
ReadOnlyList<T>
subList(int fromIndex, int toIndex)
protected static void
subListRangeCheck(int fromIndex, int toIndex, int size)
T[]
toArray()
<U> U[]
toArray(U[] a)
java.lang.String
toString()
-
-
-
Field Detail
-
EMPTY
private static final ReadOnlyList<?> EMPTY
-
EMPTY_ITERATOR
private static final ReadOnlyList.ReadOnlyCollectionIterator<?> EMPTY_ITERATOR
-
_offset
private final int _offset
-
_length
private final int _length
-
_elements
private final T[] _elements
-
-
Constructor Detail
-
ReadOnlyList
@SafeVarargs public ReadOnlyList(T... elements)
-
ReadOnlyList
public ReadOnlyList(java.lang.Class<? extends T> elementType, java.util.Collection<? extends T> elements)
-
ReadOnlyList
public ReadOnlyList(T[] elements, int offset, int length)
-
ReadOnlyList
private ReadOnlyList(ReadOnlyList<T> baseList, int offset, int length)
-
-
Method Detail
-
emptyList
public static <T> ReadOnlyList<T> emptyList()
-
newInstance
protected ReadOnlyList<T> newInstance()
-
getOffset
protected final int getOffset()
-
getElements
protected final T[] getElements()
-
size
public final int size()
- Specified by:
size
in interfacejava.util.Collection<T>
- Specified by:
size
in interfaceIReadOnlyList<T>
- Specified by:
size
in interfacejava.util.List<T>
-
isEmpty
public final boolean isEmpty()
- Specified by:
isEmpty
in interfacejava.util.Collection<T>
- Specified by:
isEmpty
in interfaceIReadOnlyList<T>
- Specified by:
isEmpty
in interfacejava.util.List<T>
-
containsAll
public boolean containsAll(java.lang.Iterable<? extends T> c)
- Specified by:
containsAll
in interfaceIReadOnlyList<T>
-
contains
public final boolean contains(java.lang.Object o)
- Specified by:
contains
in interfacejava.util.Collection<T>
- Specified by:
contains
in interfaceIReadOnlyList<T>
- Specified by:
contains
in interfacejava.util.List<T>
-
toArray
@NotNull public final T[] toArray()
- Specified by:
toArray
in interfacejava.util.Collection<T>
- Specified by:
toArray
in interfaceIReadOnlyList<T>
- Specified by:
toArray
in interfacejava.util.List<T>
-
toArray
@NotNull public final <U> U[] toArray(@NotNull U[] a)
- Specified by:
toArray
in interfacejava.util.Collection<T>
- Specified by:
toArray
in interfaceIReadOnlyList<T>
- Specified by:
toArray
in interfacejava.util.List<T>
-
add
public final boolean add(T T)
-
remove
public final boolean remove(java.lang.Object o)
-
containsAll
public final boolean containsAll(@NotNull java.util.Collection<?> c)
-
addAll
public final boolean addAll(int index, @NotNull java.util.Collection<? extends T> c)
- Specified by:
addAll
in interfacejava.util.List<T>
-
removeAll
public final boolean removeAll(@NotNull java.util.Collection<?> c)
-
retainAll
public final boolean retainAll(@NotNull java.util.Collection<?> c)
-
clear
public final void clear()
-
get
public final T get(int index)
- Specified by:
get
in interfaceIReadOnlyList<T>
- Specified by:
get
in interfacejava.util.List<T>
-
hashCode
public int hashCode()
-
equals
public boolean equals(java.lang.Object obj)
-
indexOf
public final int indexOf(java.lang.Object o)
- Specified by:
indexOf
in interfaceIReadOnlyList<T>
- Specified by:
indexOf
in interfacejava.util.List<T>
-
lastIndexOf
public final int lastIndexOf(java.lang.Object o)
- Specified by:
lastIndexOf
in interfaceIReadOnlyList<T>
- Specified by:
lastIndexOf
in interfacejava.util.List<T>
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
listIterator
@NotNull public final java.util.ListIterator<T> listIterator()
- Specified by:
listIterator
in interfaceIReadOnlyList<T>
- Specified by:
listIterator
in interfacejava.util.List<T>
-
listIterator
@NotNull public final java.util.ListIterator<T> listIterator(int index)
- Specified by:
listIterator
in interfaceIReadOnlyList<T>
- Specified by:
listIterator
in interfacejava.util.List<T>
-
subListRangeCheck
protected static void subListRangeCheck(int fromIndex, int toIndex, int size)
-
subList
@NotNull public ReadOnlyList<T> subList(int fromIndex, int toIndex)
- Specified by:
subList
in interfacejava.util.List<T>
-
-