108b56c12e126906b6386b48da13d67803af771f
[sbp.git] / src / edu / berkeley / sbp / util / SingletonIterator.java
1 package edu.berkeley.sbp.util;
2 import java.util.*;
3
4 public final class SingletonIterator<T> implements Iterator<T>, Iterable<T> {
5
6     private boolean spent = false;
7     private final T t;
8
9     public SingletonIterator(T t) { this.t = t; }
10
11     public void    remove()       { throw new Error(); }
12     public boolean hasNext()      { return !spent; }
13     public T       next()         { spent = true; return t; }
14     public Iterator<T> iterator() { return this; }
15 }