# Hierarchy For Package org.optaplanner.core.impl.score.stream.drools.tri

Package Hierarchies:

- All Packages

## Class Hierarchy

- java.lang.Object
  - org.optaplanner.core.impl.score.stream.common.AbstractConstraintStream<Solution_> (implements org.optaplanner.core.api.score.stream.ConstraintStream)
    - org.optaplanner.core.impl.score.stream.drools.common.DroolsAbstractConstraintStream<Solution_>
      - org.optaplanner.core.impl.score.stream.drools.tri.DroolsAbstractTriConstraintStream<Solution_,​A,​B,​C> (implements org.optaplanner.core.impl.score.stream.tri.InnerTriConstraintStream<A,​B,​C>)
        - org.optaplanner.core.impl.score.stream.drools.tri.DroolsExistsTriConstraintStream<Solution_,​A,​B,​C>
        - org.optaplanner.core.impl.score.stream.drools.tri.DroolsFilterTriConstraintStream<Solution_,​A,​B,​C>
        - org.optaplanner.core.impl.score.stream.drools.tri.DroolsGroupingTriConstraintStream<Solution_,​NewA,​NewB,​NewC>
        - org.optaplanner.core.impl.score.stream.drools.tri.DroolsJoinTriConstraintStream<Solution_,​A,​B,​C>
  - org.optaplanner.core.impl.score.stream.drools.common.DroolsAbstractAccumulateFunction<ResultContainer_,​InTuple,​OutTuple> (implements org.kie.api.runtime.rule.AccumulateFunction<C>)
    - org.optaplanner.core.impl.score.stream.drools.tri.DroolsTriAccumulateFunction<A,​B,​C,​ResultContainer_,​NewA>
  - org.optaplanner.core.impl.score.stream.drools.common.DroolsAbstractGroupByAccumulator<InTuple> (implements org.drools.core.spi.Accumulator)
    - org.optaplanner.core.impl.score.stream.drools.tri.DroolsTriGroupByAccumulator<A,​B,​C,​NewA,​NewB,​NewC>
    - org.optaplanner.core.impl.score.stream.drools.tri.DroolsTriToBiGroupByAccumulator<A,​B,​C,​NewA,​NewB>
    - org.optaplanner.core.impl.score.stream.drools.tri.DroolsTriToQuadGroupByAccumulator<A,​B,​C,​NewA,​NewB,​NewC,​NewD>