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

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.quad.DroolsAbstractQuadConstraintStream<Solution_,​A,​B,​C,​D> (implements org.optaplanner.core.impl.score.stream.quad.InnerQuadConstraintStream<A,​B,​C,​D>)
        - org.optaplanner.core.impl.score.stream.drools.quad.DroolsExistsQuadConstraintStream<Solution_,​A,​B,​C,​D>
        - org.optaplanner.core.impl.score.stream.drools.quad.DroolsFilterQuadConstraintStream<Solution_,​A,​B,​C,​D>
        - org.optaplanner.core.impl.score.stream.drools.quad.DroolsGroupingQuadConstraintStream<Solution_,​NewA,​NewB,​NewC,​NewD>
        - org.optaplanner.core.impl.score.stream.drools.quad.DroolsJoinQuadConstraintStream<Solution_,​A,​B,​C,​D>
  - 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.quad.DroolsQuadAccumulateFunction<A,​B,​C,​D,​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.quad.DroolsQuadGroupByAccumulator<A,​B,​C,​D,​NewA,​NewB,​NewC,​NewD>
    - org.optaplanner.core.impl.score.stream.drools.quad.DroolsQuadToBiGroupByAccumulator<A,​B,​C,​D,​NewA,​NewB>
    - org.optaplanner.core.impl.score.stream.drools.quad.DroolsQuadToTriGroupByAccumulator<A,​B,​C,​D,​NewA,​NewB,​NewC>