org.apache.poi.ss.formula

## Class CacheAreaEval

- java.lang.Object
- - org.apache.poi.ss.formula.eval.AreaEvalBase
  - - org.apache.poi.ss.formula.CacheAreaEval

- All Implemented Interfaces:
    AreaEval, ValueEval, SheetRange, ThreeDEval, TwoDEval

      public final class CacheAreaEval
      extends AreaEvalBase

  Author:
    Robert Hulbert Provides holding structure for temporary values in arrays during the evaluation process. As such, Row/Column references do not actually correspond to data in the file.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `CacheAreaEval(AreaI ptg, ValueEval[] values)`
    `CacheAreaEval(int firstRow, int firstColumn, int lastRow, int lastColumn, ValueEval[] values)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `TwoDEval` | `getColumn(int columnIndex)`
    `ValueEval` | `getRelativeValue(int relativeRowIndex, int relativeColumnIndex)`
    `ValueEval` | `getRelativeValue(int sheetIndex, int relativeRowIndex, int relativeColumnIndex)`
    `TwoDEval` | `getRow(int rowIndex)`
    `AreaEval` | `offset(int relFirstRowIx, int relLastRowIx, int relFirstColIx, int relLastColIx)` Creates an `AreaEval` offset by a relative amount from from the upper left cell of this area
    `java.lang.String` | `toString()`

    - ### Methods inherited from class org.apache.poi.ss.formula.eval.AreaEvalBase

      `contains, containsColumn, containsRow, getAbsoluteValue, getFirstColumn, getFirstRow, getFirstSheetIndex, getHeight, getLastColumn, getLastRow, getLastSheetIndex, getValue, getValue, getWidth, isColumn, isRow, isRowHidden, isSubTotal`

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

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

- - ### Constructor Detail

    - #### CacheAreaEval

          public CacheAreaEval(AreaI ptg,
                               ValueEval[] values)

    - #### CacheAreaEval

          public CacheAreaEval(int firstRow,
                               int firstColumn,
                               int lastRow,
                               int lastColumn,
                               ValueEval[] values)

  - ### Method Detail

    - #### getRelativeValue

          public ValueEval getRelativeValue(int relativeRowIndex,
                                            int relativeColumnIndex)

      Specified by:
        `getRelativeValue` in interface `AreaEval`
      Specified by:
        `getRelativeValue` in class `AreaEvalBase`
      Returns:
        the ValueEval from within this area at the specified relativeRowIndex and relativeColumnIndex. Never `null` (possibly `BlankEval`). The specified indexes should relative to the top left corner of this area.

    - #### getRelativeValue

          public ValueEval getRelativeValue(int sheetIndex,
                                            int relativeRowIndex,
                                            int relativeColumnIndex)

      Specified by:
        `getRelativeValue` in class `AreaEvalBase`

    - #### offset

          public AreaEval offset(int relFirstRowIx,
                                 int relLastRowIx,
                                 int relFirstColIx,
                                 int relLastColIx)

      Description copied from interface: `AreaEval`
      Creates an `AreaEval` offset by a relative amount from from the upper left cell of this area

    - #### getRow

          public TwoDEval getRow(int rowIndex)

      Parameters:
        `rowIndex` - relative row index (zero based)
      Returns:
        a single row `TwoDEval`

    - #### getColumn

          public TwoDEval getColumn(int columnIndex)

      Parameters:
        `columnIndex` - relative column index (zero based)
      Returns:
        a single column `TwoDEval`

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.lang.Object`

Copyright 2020 The Apache Software Foundation or its licensors, as applicable.