@Override public IterationPreference iterationPreference() { return inner.iterationPreference(); }
@Override public IterationPreference iterationPreference() { return base.iterationPreference(); }
@Override public IterationPreference iterationPreference() { return inner.iterationPreference(); }
@Override public IterationPreference iterationPreference() { return base.iterationPreference(); }
@Override public int compareTo( VirtualValue other, Comparator<AnyValue> comparator ) { if ( !(other instanceof ListValue) ) { throw new IllegalArgumentException( "Cannot compare different virtual values" ); } ListValue otherList = (ListValue) other; if ( iterationPreference() == RANDOM_ACCESS && otherList.iterationPreference() == RANDOM_ACCESS ) { return randomAccessCompareTo( comparator, otherList ); } else { return iteratorCompareTo( comparator, otherList ); } }
@Override public int computeHash() { switch ( iterationPreference() ) { case RANDOM_ACCESS: return randomAccessComputeHash(); case ITERATION: return iterationComputeHash(); default: throw new IllegalStateException( "not a valid iteration preference" ); } }
public AnyValue[] asArray() { switch ( iterationPreference() ) { case RANDOM_ACCESS: return randomAccessAsArray(); case ITERATION: return iterationAsArray(); default: throw new IllegalStateException( "not a valid iteration preference" ); } }
@Override public <E extends Exception> void writeTo( AnyValueWriter<E> writer ) throws E { switch ( iterationPreference() ) { case RANDOM_ACCESS: randomAccessWriteTo( writer ); break; case ITERATION: iterationWriteTo( writer ); break; default: throw new IllegalStateException( "not a valid iteration preference" ); } }
@Override public Iterator<AnyValue> iterator() { switch ( base.iterationPreference() ) { case RANDOM_ACCESS: return super.iterator(); case ITERATION: return Iterators.appendTo( base.iterator(), appended ); default: throw new IllegalStateException( "unknown iteration preference" ); } } }
@Override public Iterator<AnyValue> iterator() { switch ( base.iterationPreference() ) { case RANDOM_ACCESS: return super.iterator(); case ITERATION: return Iterators.prependTo( base.iterator(), prepended ); default: throw new IllegalStateException( "unknown iteration preference" ); } } }
@Override public Iterator<AnyValue> iterator() switch ( inner.iterationPreference() )
@Override public IterationPreference iterationPreference() { return base.iterationPreference(); }
@Override public IterationPreference iterationPreference() { return inner.iterationPreference(); }
@Override public IterationPreference iterationPreference() { return inner.iterationPreference(); }
@Override public IterationPreference iterationPreference() { return base.iterationPreference(); }
public AnyValue[] asArray() { switch ( iterationPreference() ) { case RANDOM_ACCESS: return randomAccessAsArray(); case ITERATION: return iterationAsArray(); default: throw new IllegalStateException( "not a valid iteration preference" ); } }
@Override public int computeHash() { switch ( iterationPreference() ) { case RANDOM_ACCESS: return randomAccessComputeHash(); case ITERATION: return iterationComputeHash(); default: throw new IllegalStateException( "not a valid iteration preference" ); } }
@Override public <E extends Exception> void writeTo( AnyValueWriter<E> writer ) throws E { switch ( iterationPreference() ) { case RANDOM_ACCESS: randomAccessWriteTo( writer ); break; case ITERATION: iterationWriteTo( writer ); break; default: throw new IllegalStateException( "not a valid iteration preference" ); } }
@Override public Iterator<AnyValue> iterator() { switch ( base.iterationPreference() ) { case RANDOM_ACCESS: return super.iterator(); case ITERATION: return Iterators.appendTo( base.iterator(), appended ); default: throw new IllegalStateException( "unknown iteration preference" ); } } }
@Override public Iterator<AnyValue> iterator() { switch ( base.iterationPreference() ) { case RANDOM_ACCESS: return super.iterator(); case ITERATION: return Iterators.prependTo( base.iterator(), prepended ); default: throw new IllegalStateException( "unknown iteration preference" ); } } }