Coverage Summary for Class: UnmodifiableIterator (com.google.common.collect)

Class Class, % Method, % Line, %
UnmodifiableIterator 100% (1/1) 100% (2/2) 100% (2/2)


1 /* 2  * Copyright (C) 2008 The Guava Authors 3  * 4  * Licensed under the Apache License, Version 2.0 (the "License"); 5  * you may not use this file except in compliance with the License. 6  * You may obtain a copy of the License at 7  * 8  * http://www.apache.org/licenses/LICENSE-2.0 9  * 10  * Unless required by applicable law or agreed to in writing, software 11  * distributed under the License is distributed on an "AS IS" BASIS, 12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13  * See the License for the specific language governing permissions and 14  * limitations under the License. 15  */ 16  17 package com.google.common.collect; 18  19 import com.google.common.annotations.GwtCompatible; 20 import com.google.errorprone.annotations.DoNotCall; 21 import java.util.Iterator; 22  23 /** 24  * An iterator that does not support {@link #remove}. 25  * 26  * <p>{@code UnmodifiableIterator} is used primarily in conjunction with implementations of {@link 27  * ImmutableCollection}, such as {@link ImmutableList}. You can, however, convert an existing 28  * iterator to an {@code UnmodifiableIterator} using {@link Iterators#unmodifiableIterator}. 29  * 30  * @author Jared Levy 31  * @since 2.0 32  */ 33 @GwtCompatible 34 public abstract class UnmodifiableIterator<E> implements Iterator<E> { 35  /** Constructor for use by subclasses. */ 36  protected UnmodifiableIterator() {} 37  38  /** 39  * Guaranteed to throw an exception and leave the underlying data unmodified. 40  * 41  * @throws UnsupportedOperationException always 42  * @deprecated Unsupported operation. 43  */ 44  @Deprecated 45  @Override 46  @DoNotCall("Always throws UnsupportedOperationException") 47  public final void remove() { 48  throw new UnsupportedOperationException(); 49  } 50 }