Package org.optaplanner.core.impl.score.stream.drools.common

## Class DroolsCondition.ImmediatelyPreviousFilter<PredicateType>

- java.lang.Object
- - org.optaplanner.core.impl.score.stream.drools.common.DroolsCondition.ImmediatelyPreviousFilter<PredicateType>

- Type Parameters:
    `PredicateType` - type of the predicate (uni, bi, ...) matching the stream
  Enclosing class:
    DroolsCondition<PatternVar,​T extends DroolsRuleStructure<PatternVar>>

      public final class DroolsCondition.ImmediatelyPreviousFilter<PredicateType>
      extends Object

  When two filters follow one another immediately, we merge them into a new `Predicate`. This is done for performance reasons, as filters are not indexed and therefore we only want to pay the penalty once. This class is a data carrier facilitating that feature.

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `PredicateType` | `predicate` |
    `T` | `ruleStructure` |

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ImmediatelyPreviousFilter​(T ruleStructure, PredicateType predicate)` |

  - ### Method Summary

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

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

- - ### Field Detail

    - #### ruleStructure

          public final T extends DroolsRuleStructure<PatternVar> ruleStructure

    - #### predicate

          public final PredicateType predicate

  - ### Constructor Detail

    - #### ImmediatelyPreviousFilter

          public ImmediatelyPreviousFilter​(T ruleStructure,
                                           PredicateType predicate)