Package org.eclipse.m2m.atl.emftvm.util

## Class LazyCollection.CollectIterator<T>

- java.lang.Object
- - org.eclipse.m2m.atl.emftvm.util.LazyCollection.ReadOnlyIterator<T>
  - - org.eclipse.m2m.atl.emftvm.util.LazyCollection.CollectIterator<T>

Type Parameters:
  `T` - the function return type

All Implemented Interfaces:
  `java.util.Iterator<T>`

Enclosing class:
  LazyCollection<E>

    public static class LazyCollection.CollectIterator<T>
    extends LazyCollection.ReadOnlyIterator<T>

`LazyCollection.ReadOnlyIterator` that collects the results of evaluating a function on each of the elements from the underlying collection.

### Field Summary

Fields
`protected CodeBlock` `function`
`protected java.util.Iterator<?>` `inner`
`protected StackFrame` `parentFrame`

### Constructor Summary

Constructors
`CollectIterator​(java.lang.Iterable<?> inner, CodeBlock function, StackFrame parentFrame)` Creates a `LazyCollection.CollectIterator` with `condition` on `inner`.

### Method Summary

All Methods Instance Methods Concrete Methods
`boolean` `hasNext()`
`T` `next()`

### Methods inherited from class org.eclipse.m2m.atl.emftvm.util.LazyCollection.ReadOnlyIterator

`remove`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface java.util.Iterator

`forEachRemaining`

### Field Detail

#### inner

    protected final java.util.Iterator<?> inner

#### function

    protected final CodeBlock function

#### parentFrame

    protected final StackFrame parentFrame

### Constructor Detail

#### CollectIterator

    public CollectIterator​(java.lang.Iterable<?> inner,
                           CodeBlock function,
                           StackFrame parentFrame)

Creates a `LazyCollection.CollectIterator` with `condition` on `inner`.

Parameters:
  `inner` - the underlying collection
  `function` - the value function
  `parentFrame` - the parent stack frame context

### Method Detail

#### hasNext

    public boolean hasNext()

#### next

    public T next()