Eroxl's Notes
Iterator Pattern

TO-WRITE

class List implements Iterable<T> {
	public Iterator<T> iterator() {
		// returns an iterator
	}
}

class List implements Iterator<T> {
	public boolean hasNext() {
		// returns true if more elements
	}

	public T next() {
		if (!hasNext) {
			throw new Error();
		}

		// Returns next element
	}
}