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

# Class LazyCollection.FlattenIterator

java.lang.Object
org.eclipse.m2m.atl.emftvm.util.LazyCollection.ReadOnlyIterator<Object>
org.eclipse.m2m.atl.emftvm.util.LazyCollection.FlattenIterator

All Implemented Interfaces:
  `Iterator<Object>`

Enclosing class:
  `LazyCollection<E>`

public static class LazyCollection.FlattenIterator extends LazyCollection.ReadOnlyIterator<Object>
Recursively flattens any nested `Iterable`s by iterating over their elements as well.

## Field Summary

Fields
Modifier and Type
Field
Description
`protected Iterator<?>`
`current`
`protected final Iterator<?>`
`inner`
`protected Object`
`next`
`protected boolean`
`nextSet`

## Constructor Summary

Constructors
Constructor
Description
`FlattenIterator(Iterable<?> inner)`
Creates a new `LazyCollection.FlattenIterator` around `inner`.

## Method Summary

Modifier and Type
Method
Description
`boolean`
`hasNext()`
`Object`
`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 Details

### inner

protected final Iterator<?> inner

### current

protected Iterator<?> current

### next

protected Object next

### nextSet

protected boolean nextSet

## Constructor Details

### FlattenIterator

public FlattenIterator(Iterable<?> inner)
Creates a new `LazyCollection.FlattenIterator` around `inner`.

Parameters:
  `inner` - the underlying collection

## Method Details

### hasNext

public boolean hasNext()

### next

public Object next()