// Path: lib-core/src/main/java/xdroid/core/ObjectUtils.java
// public static <T> T notNull(T object) {
//     if (object == null) {
//         throw new NullPointerException();
//     }
// 
//     return object;
// }


import java.util.Iterator;
import static xdroid.core.ObjectUtils.notNull;
package xdroid.collections;



/**
 * @author Oleksii Kropachov (o.kropachov@shamanland.com)
 */
public class IndexedIterator<E> implements Iterator<E> {
    private final Indexed<E> mIndexed;
    private int mCursor;

    public IndexedIterator(Indexed<E> indexed) {
// Path: lib-core/src/main/java/xdroid/core/ObjectUtils.java
// public static <T> T notNull(T object) {
//     if (object == null) {
//         throw new NullPointerException();
//     }
// 
//     return object;
// }


// Path: lib-collections/src/main/java/xdroid/collections/IndexedIterator.java
import java.util.Iterator;
import static xdroid.core.ObjectUtils.notNull;

package xdroid.collections;



/**
 * @author Oleksii Kropachov (o.kropachov@shamanland.com)
 */
public class IndexedIterator<E> implements Iterator<E> {
    private final Indexed<E> mIndexed;
    private int mCursor;

    public IndexedIterator(Indexed<E> indexed) {
        mIndexed = notNull(indexed);