package jetbrains.mps.internal.collections.runtime.impl;
/*Generated by MPS */
import jetbrains.mps.internal.collections.runtime.IDequeSequence;
import java.util.Iterator;
import jetbrains.mps.internal.collections.runtime.ISequence;
import jetbrains.mps.baseLanguage.closures.runtime._FunctionTypes;
public class NullDequeSequence<T> extends NullQueueSequence<T> implements IDequeSequence<T> {
private static final NullDequeSequence<Object> INSTANCE = new NullDequeSequence<Object>();
protected NullDequeSequence() {
}
@Override
public void addFirst(T t) {
}
@Override
public void addLast(T t) {
}
@Override
public Iterator<T> descendingIterator() {
return iterator();
}
@Override
public T getFirst() {
return null;
}
@Override
public T getLast() {
return null;
}
@Override
public boolean offerFirst(T t) {
return false;
}
@Override
public boolean offerLast(T t) {
return false;
}
@Override
public T peekFirst() {
return null;
}
@Override
public T peekLast() {
return null;
}
@Override
public T pollFirst() {
return null;
}
@Override
public T pollLast() {
return null;
}
@Override
public T pop() {
return null;
}
@Override
public void push(T t) {
}
@Override
public T removeFirst() {
return null;
}
@Override
public boolean removeFirstOccurrence(Object o) {
return false;
}
@Override
public T removeLast() {
return null;
}
@Override
public boolean removeLastOccurrence(Object o) {
return false;
}
@Override
public T addFirstElement(T t) {
return null;
}
@Override
public T peekElement() {
return null;
}
@Override
public T popElement() {
return null;
}
@Override
public T pushElement(T t) {
return null;
}
@Override
public T removeLastElement() {
return null;
}
@Override
public IDequeSequence<T> addSequence(ISequence<? extends T> seq) {
return (IDequeSequence<T>) super.addSequence(seq);
}
@Override
public IDequeSequence<T> removeSequence(ISequence<? extends T> seq) {
return (IDequeSequence<T>) super.removeSequence(seq);
}
@Override
public IDequeSequence<T> removeWhere(_FunctionTypes._return_P1_E0<? extends Boolean, ? super T> filter) {
return (IDequeSequence<T>) super.removeWhere(filter);
}
@Override
public IDequeSequence<T> asUnmodifiable() {
return this;
}
@Override
public IDequeSequence<T> asSynchronized() {
return this;
}
@SuppressWarnings(value = "unchecked")
public static <U> NullDequeSequence<U> instance() {
return (NullDequeSequence<U>) INSTANCE;
}
}