com.hammurapi.extract

## Class CompositeExtractorBase<T,V,C>

- java.lang.Object
- - com.hammurapi.extract.ExtractorBase<T,V,C>
  - - com.hammurapi.extract.CompositeExtractorBase<T,V,C>

- Type Parameters:
    `T` -
    `V` -
  All Implemented Interfaces:
    Extractor<T,V,C>

      public abstract class CompositeExtractorBase<T,V,C>
      extends ExtractorBase<T,V,C>

  Base class for composite extractors like +, *, / operations.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected Extractor<T,V,C>[]` | `operands`

    - ### Fields inherited from class com.hammurapi.extract.ExtractorBase

      `cost, costUnit, initialCost, invocations, nanos, totalCost`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `CompositeExtractorBase(double initialCost, TimeUnit costUnit, Extractor<T,V,C>... operands)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `double` | `getCost()`

    - ### Methods inherited from class com.hammurapi.extract.ExtractorBase

      `compareTo, createCacheEntry, equals, extract, extractInternal`

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

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

    - ### Methods inherited from interface com.hammurapi.extract.Extractor

      `isContextDependent, parameterIndices`

- - ### Field Detail

    - #### operands

          protected Extractor<T,V,C>[] operands

  - ### Constructor Detail

    - #### CompositeExtractorBase

          public CompositeExtractorBase(double initialCost,
                                TimeUnit costUnit,
                                Extractor<T,V,C>... operands)

  - ### Method Detail

    - #### getCost

          public double getCost()

      Specified by:
        `getCost` in interface `Extractor<T,V,C>`
      Overrides:
        `getCost` in class `ExtractorBase<T,V,C>`
      Returns:
        Extractor evaluation cost. Cost is used for optimization of computation intensive algorithms. E.g. in Store it is used for selection of indices for query operations.