Package ghidra.program.model.listing

# Interface DataIterator

All Superinterfaces:
  `Iterable<Data>`, `Iterator<Data>`

All Known Implementing Classes:
  `DataFilteredCodeUnitIterator`, `DataIterator.IteratorWrapper`, `DataKeyIterator`, `DataRecordIterator`, `DefinedDataIterator`

public interface DataIterator extends Iterator<Data>, Iterable<Data>
Interface to define an iterator over over some set of Data.

See Also:
  - `CollectionUtils.asIterable(T)`

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Interface
  Description
  `static class`
  `DataIterator.IteratorWrapper`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final DataIterator`
  `EMPTY`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `hasNext()`
  `default Iterator<Data>`
  `iterator()`
  `Data`
  `next()`
  `static DataIterator`
  `of(Data... dataInstances)`
  Create a DataIterator that returns a sequence of the specified items.

  ### Methods inherited from interface java.lang.Iterable

  `forEach, spliterator`

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

  `forEachRemaining, remove`

- ## Field Details

  - ### EMPTY

    static final DataIterator EMPTY

- ## Method Details

  - ### of

    static DataIterator of(Data... dataInstances)
    Create a DataIterator that returns a sequence of the specified items.
    Parameters:
      `dataInstances` - variable length list of items that will be iterated
    Returns:
      new Iterator

  - ### hasNext

    boolean hasNext()
    Specified by:
      `hasNext` in interface `Iterator<Data>`

  - ### next

    Data next()
    Specified by:
      `next` in interface `Iterator<Data>`

  - ### iterator

    default Iterator<Data> iterator()
    Specified by:
      `iterator` in interface `Iterable<Data>`