in uimaj-core/src/main/java/org/apache/uima/jcas/cas/FSArrayList.java [291:634]
private List<T> gl_read_pear(List<T> baseItems) {
return new List<T>() {
/*
* @see java.lang.Iterable#forEach(java.util.function.Consumer)
*/
public void forEach(Consumer<? super T> action) {
baseItems.forEach(item -> {
T pearedItem = _maybeGetPearFs((T) item);
action.accept(pearedItem);
});
}
/*
* @see java.util.List#size()
*/
public int size() {
return baseItems.size();
}
/*
* @see java.util.List#isEmpty()
*/
public boolean isEmpty() {
return baseItems.isEmpty();
}
/*
* @see java.util.List#contains(java.lang.Object)
*/
public boolean contains(Object o) {
return (o instanceof TOP)
? baseItems.contains(_maybeGetBaseForPearFs((TOP)o))
: false;
}
/*
* @see java.util.List#iterator()
*/
public Iterator<T> iterator() {
return new Iterator<T>() {
Iterator<T> outerIt = baseItems.iterator();
/*
* @see java.util.Iterator#hasNext()
*/
public boolean hasNext() {
return outerIt.hasNext();
}
/*
* @see java.util.Iterator#next()
*/
public T next() {
return _maybeGetPearFs(outerIt.next());
}
};
}
/*
* @see java.util.List#toArray()
*/
public Object[] toArray() {
Object[] a = baseItems.toArray();
FSArrayList.this._casView.swapInPearVersion(a);
return a;
}
/*
* @see java.util.List#toArray(java.lang.Object[])
*/
public <U> U[] toArray(U[] a) {
U[] aa = baseItems.toArray(a);
FSArrayList.this._casView.swapInPearVersion(aa);
return aa;
}
/*
* @see java.util.List#add(java.lang.Object)
*/
public boolean add(T e) {
throw new UnsupportedOperationException();
}
/*
* @see java.util.List#remove(java.lang.Object)
*/
public boolean remove(Object o) {
throw new UnsupportedOperationException();
}
/*
* @see java.util.List#containsAll(java.util.Collection)
*/
public boolean containsAll(Collection<?> c) {
for (Object item : c) {
if (!contains(item)) {
return false;
}
}
return true;
}
/*
* @see java.util.List#addAll(java.util.Collection)
*/
public boolean addAll(Collection<? extends T> c) {
throw new UnsupportedOperationException();
}
/*
* @see java.util.List#addAll(int, java.util.Collection)
*/
public boolean addAll(int index, Collection<? extends T> c) {
throw new UnsupportedOperationException();
}
/*
* @see java.util.List#removeAll(java.util.Collection)
*/
public boolean removeAll(Collection<?> c) {
throw new UnsupportedOperationException();
}
/*
* @see java.util.List#retainAll(java.util.Collection)
*/
public boolean retainAll(Collection<?> c) {
throw new UnsupportedOperationException();
}
/*
* @see java.util.List#replaceAll(java.util.function.UnaryOperator)
*/
public void replaceAll(UnaryOperator<T> operator) {
for (int i = size() - 1; i >= 0; i--) {
baseItems.set(i, _maybeGetBaseForPearFs(
operator.apply(_maybeGetPearFs(baseItems.get(i)))));
}
}
/*
* @see java.util.Collection#removeIf(java.util.function.Predicate)
*/
public boolean removeIf(Predicate<? super T> filter) {
throw new UnsupportedOperationException();
}
/*
* @see java.util.List#sort(java.util.Comparator)
*/
public void sort(Comparator<? super T> c) {
baseItems.sort((o1, o2) -> c.compare(_maybeGetPearFs(o1), _maybeGetPearFs(o2)));
}
/*
* @see java.util.List#clear()
*/
public void clear() {
throw new UnsupportedOperationException();
}
/*
* @see java.util.List#equals(java.lang.Object)
*/
public boolean equals(Object o) {
return baseItems.equals(o);
}
/*
* @see java.util.List#hashCode()
*/
public int hashCode() {
return baseItems.hashCode();
}
/*
* @see java.util.List#get(int)
*/
public T get(int index) {
return _maybeGetPearFs(baseItems.get(index));
}
/*
* @see java.util.List#set(int, java.lang.Object)
*/
public T set(int index, T element) {
return baseItems.set(index, _maybeGetBaseForPearFs(element));
}
/*
* @see java.util.List#add(int, java.lang.Object)
*/
public void add(int index, T element) {
throw new UnsupportedOperationException();
}
/*
* @see java.util.Collection#stream()
*/
public Stream<T> stream() {
return baseItems.stream().map(item -> _maybeGetPearFs(item));
}
/*
* @see java.util.List#remove(int)
*/
public T remove(int index) {
throw new UnsupportedOperationException();
}
/*
* @see java.util.Collection#parallelStream()
*/
public Stream<T> parallelStream() {
return baseItems.parallelStream().map(item -> _maybeGetPearFs(item));
}
/*
* @see java.util.List#indexOf(java.lang.Object)
*/
public int indexOf(Object o) {
return baseItems.indexOf((o instanceof TOP) ? _maybeGetBaseForPearFs((TOP)o) : o);
}
/*
* @see java.util.List#lastIndexOf(java.lang.Object)
*/
public int lastIndexOf(Object o) {
return baseItems.lastIndexOf((o instanceof TOP) ? _maybeGetBaseForPearFs((TOP)o) : o);
}
/*
* @see java.util.List#listIterator()
*/
public ListIterator<T> listIterator() {
return listIterator(0);
}
/*
* @see java.util.List#listIterator(int)
*/
public ListIterator<T> listIterator(int index) {
return new ListIterator<T>() {
ListIterator<T> baseIt = baseItems.listIterator(index);
/*
* @see java.util.ListIterator#hasNext()
*/
public boolean hasNext() {
return baseIt.hasNext();
}
/**
* @return
* @see java.util.ListIterator#next()
*/
public T next() {
return _maybeGetPearFs(baseIt.next());
}
/*
* @see java.util.ListIterator#hasPrevious()
*/
public boolean hasPrevious() {
return baseIt.hasPrevious();
}
/*
* @see java.util.Iterator#forEachRemaining(java.util.function.Consumer)
*/
public void forEachRemaining(Consumer<? super T> action) {
baseIt.forEachRemaining(item -> action.accept(_maybeGetPearFs(item)));
}
/**
* @return
* @see java.util.ListIterator#previous()
*/
public T previous() {
return baseIt.previous();
}
/**
* @return
* @see java.util.ListIterator#nextIndex()
*/
public int nextIndex() {
return baseIt.nextIndex();
}
/**
* @return
* @see java.util.ListIterator#previousIndex()
*/
public int previousIndex() {
return baseIt.previousIndex();
}
/**
*
* @see java.util.ListIterator#remove()
*/
public void remove() {
throw new UnsupportedOperationException();
}
/**
* @param e
* @see java.util.ListIterator#set(java.lang.Object)
*/
public void set(T e) {
baseIt.set(_maybeGetBaseForPearFs(e));
}
/**
* @param e
* @see java.util.ListIterator#add(java.lang.Object)
*/
public void add(T e) {
throw new UnsupportedOperationException();
}
};
}
/*
* @see java.util.List#subList(int, int)
*/
public List<T> subList(int fromIndex, int toIndex) {
return gl_read_pear(baseItems.subList(fromIndex, toIndex));
}
/*
* @see java.util.List#spliterator()
*/
@Override
public Spliterator<T> spliterator() {
return FSArrayList.this._casView.makePearAware(baseItems.spliterator());
}
};
}