com.ihr.xbrl.om.formula.util

## Class FactHasExplicitDimensionValueCache

- java.lang.Object
- - com.ihr.xbrl.om.formula.util.FactHasExplicitDimensionValueCache

-     public class FactHasExplicitDimensionValueCache
      extends java.lang.Object

  This requires huge amount of ram for some formulas so a different strategy is required. The idea is to store only the "positive" information this is, for every context, what explicit dimensions are there and what values for each dimension. And leave the "negative" information out. so when the information is not there the result can be FALSE and no further evaluation is required.
  Author:
    Ignacio

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `FactHasExplicitDimensionValueCache(XBRLInstance report)` Creates an instance of the helper class to boost the resolution of dimensions and dimension members reported for every fact in the instance document

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `net.sf.saxon.value.BooleanValue` | `cacheGet(XBRLFactItem fact, net.sf.saxon.value.QNameValue qDimension, javax.xml.namespace.QName dv)` Cache get.
    `void` | `clear()` Clear.

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

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

- - ### Constructor Detail

    - #### FactHasExplicitDimensionValueCache

          public FactHasExplicitDimensionValueCache(XBRLInstance report)

      Creates an instance of the helper class to boost the resolution of dimensions and dimension members reported for every fact in the instance document
      Parameters:
        `report` - the report

  - ### Method Detail

    - #### clear

          public void clear()

      Clear.

    - #### cacheGet

          public net.sf.saxon.value.BooleanValue cacheGet(XBRLFactItem fact,
                                                 net.sf.saxon.value.QNameValue qDimension,
                                                 javax.xml.namespace.QName dv)

      Cache get.
      Parameters:
        `fact` - the fact
        `qDimension` - the q dimension
        `dv` - the dv
      Returns:
        the boolean value