All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.jillesvangurp.iterables.ProcessingIterable Maven / Gradle / Ivy

Go to download

Misc classes to make processing utf-8 content with iterators a bit less painful.

The newest version!
package com.jillesvangurp.iterables;

import java.util.Iterator;

/**
 * Non concurrent variant of the {@link ConcurrentProcessingIterable}. 
 * @author jilles
 *
 * @param 
 * @param 
 */
public class ProcessingIterable  implements Iterable {

    private final Iterator it;
    private final Processor processor;

    public ProcessingIterable(Iterator it, Processor processor) {
        this.it = it;
        this.processor = processor;
    }
    
    @Override
    public Iterator iterator() {
        return new Iterator() {

            @Override
            public boolean hasNext() {
                return it.hasNext();
            }

            @Override
            public Output next() {
                return processor.process(it.next());
            }

            @Override
            public void remove() {
                it.remove();
            }};
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy