Package org.apache.sysds.runtime.frame.data.iterators

## Interface IteratorFactory

    public interface IteratorFactory

Factory pattern for construction of rowIterators of the FrameBlock.

### Method Summary

Static Methods
`static RowIterator<Object>` `getObjectRowIterator​(FrameBlock fb)` Get a row iterator over the frame where all fields are encoded as boxed objects according to their value types.
`static RowIterator<Object>` `getObjectRowIterator​(FrameBlock fb, int colID)` Get a row iterator over the frame where all selected fields are encoded as objects according to their value types.
`static RowIterator<Object>` `getObjectRowIterator​(FrameBlock fb, int[] cols)` Get a row iterator over the frame where all selected fields are encoded as boxed objects according to their value types.
`static RowIterator<Object>` `getObjectRowIterator​(FrameBlock fb, int rl, int ru)` Get a row iterator over the frame where all fields are encoded as boxed objects according to their value types.
`static RowIterator<Object>` `getObjectRowIterator​(FrameBlock fb, int rl, int ru, int colID)` Get a row iterator over the frame where all selected fields are encoded as boxed objects according to their value types.
`static RowIterator<Object>` `getObjectRowIterator​(FrameBlock fb, int rl, int ru, int[] cols)` Get a row iterator over the frame where all selected fields are encoded as boxed objects according to their value types.
`static RowIterator<Object>` `getObjectRowIterator​(FrameBlock fb, Types.ValueType[] schema)` Get a row iterator over the frame where all fields are encoded as boxed objects according to the value types of the provided target schema.
`static RowIterator<String>` `getStringRowIterator​(FrameBlock fb)` Get a row iterator over the frame where all fields are encoded as strings independent of their value types.
`static RowIterator<String>` `getStringRowIterator​(FrameBlock fb, int colID)` Get a row iterator over the frame where all selected fields are encoded as strings independent of their value types.
`static RowIterator<String>` `getStringRowIterator​(FrameBlock fb, int[] cols)` Get a row iterator over the frame where all selected fields are encoded as strings independent of their value types.
`static RowIterator<String>` `getStringRowIterator​(FrameBlock fb, int rl, int ru)` Get a row iterator over the frame where all fields are encoded as strings independent of their value types.
`static RowIterator<String>` `getStringRowIterator​(FrameBlock fb, int rl, int ru, int colID)` Get a row iterator over the frame where all selected fields are encoded as strings independent of their value types.
`static RowIterator<String>` `getStringRowIterator​(FrameBlock fb, int rl, int ru, int[] cols)` Get a row iterator over the frame where all selected fields are encoded as strings independent of their value types.

### Method Detail

#### getStringRowIterator

    static RowIterator<String> getStringRowIterator​(FrameBlock fb)

Get a row iterator over the frame where all fields are encoded as strings independent of their value types.

Parameters:
  `fb` - The frame to iterate through
Returns:
  string array iterator

#### getStringRowIterator

    static RowIterator<String> getStringRowIterator​(FrameBlock fb,
                                                    int[] cols)

Get a row iterator over the frame where all selected fields are encoded as strings independent of their value types.

Parameters:
  `fb` - The frame to iterate through
  `cols` - column selection, 1-based
Returns:
  string array iterator

#### getStringRowIterator

    static RowIterator<String> getStringRowIterator​(FrameBlock fb,
                                                    int colID)

Get a row iterator over the frame where all selected fields are encoded as strings independent of their value types.

Parameters:
  `fb` - The frame to iterate through
  `colID` - column selection, 1-based
Returns:
  string array iterator

#### getStringRowIterator

    static RowIterator<String> getStringRowIterator​(FrameBlock fb,
                                                    int rl,
                                                    int ru)

Get a row iterator over the frame where all fields are encoded as strings independent of their value types.

Parameters:
  `fb` - The frame to iterate through
  `rl` - lower row index
  `ru` - upper row index
Returns:
  string array iterator

#### getStringRowIterator

    static RowIterator<String> getStringRowIterator​(FrameBlock fb,
                                                    int rl,
                                                    int ru,
                                                    int[] cols)

Get a row iterator over the frame where all selected fields are encoded as strings independent of their value types.

Parameters:
  `fb` - The frame to iterate through
  `rl` - lower row index
  `ru` - upper row index
  `cols` - column selection, 1-based
Returns:
  string array iterator

#### getStringRowIterator

    static RowIterator<String> getStringRowIterator​(FrameBlock fb,
                                                    int rl,
                                                    int ru,
                                                    int colID)

Get a row iterator over the frame where all selected fields are encoded as strings independent of their value types.

Parameters:
  `fb` - The frame to iterate through
  `rl` - lower row index
  `ru` - upper row index
  `colID` - columnID, 1-based
Returns:
  string array iterator

#### getObjectRowIterator

    static RowIterator<Object> getObjectRowIterator​(FrameBlock fb)

Get a row iterator over the frame where all fields are encoded as boxed objects according to their value types.

Parameters:
  `fb` - The frame to iterate through
Returns:
  object array iterator

#### getObjectRowIterator

    static RowIterator<Object> getObjectRowIterator​(FrameBlock fb,
                                                    Types.ValueType[] schema)

Get a row iterator over the frame where all fields are encoded as boxed objects according to the value types of the provided target schema.

Parameters:
  `fb` - The frame to iterate through
  `schema` - target schema of objects
Returns:
  object array iterator

#### getObjectRowIterator

    static RowIterator<Object> getObjectRowIterator​(FrameBlock fb,
                                                    int[] cols)

Get a row iterator over the frame where all selected fields are encoded as boxed objects according to their value types.

Parameters:
  `fb` - The frame to iterate through
  `cols` - column selection, 1-based
Returns:
  object array iterator

#### getObjectRowIterator

    static RowIterator<Object> getObjectRowIterator​(FrameBlock fb,
                                                    int colID)

Get a row iterator over the frame where all selected fields are encoded as objects according to their value types.

Parameters:
  `fb` - The frame to iterate through
  `colID` - column selection, 1-based
Returns:
  object array iterator

#### getObjectRowIterator

    static RowIterator<Object> getObjectRowIterator​(FrameBlock fb,
                                                    int rl,
                                                    int ru)

Get a row iterator over the frame where all fields are encoded as boxed objects according to their value types.

Parameters:
  `fb` - The frame to iterate through
  `rl` - lower row index
  `ru` - upper row index
Returns:
  object array iterator

#### getObjectRowIterator

    static RowIterator<Object> getObjectRowIterator​(FrameBlock fb,
                                                    int rl,
                                                    int ru,
                                                    int[] cols)

Get a row iterator over the frame where all selected fields are encoded as boxed objects according to their value types.

Parameters:
  `fb` - The frame to iterate through
  `rl` - lower row index
  `ru` - upper row index
  `cols` - column selection, 1-based
Returns:
  object array iterator

#### getObjectRowIterator

    static RowIterator<Object> getObjectRowIterator​(FrameBlock fb,
                                                    int rl,
                                                    int ru,
                                                    int colID)

Get a row iterator over the frame where all selected fields are encoded as boxed objects according to their value types.

Parameters:
  `fb` - The frame to iterate through
  `rl` - lower row index
  `ru` - upper row index
  `colID` - column selection, 1-based
Returns:
  object array iterator