## Uses of Class
org.optaplanner.core.impl.score.stream.bavet.common.BavetNodeBuildPolicy

- Packages that use BavetNodeBuildPolicy
  Package | Description
  --- | ---
  org.optaplanner.core.impl.score.stream.bavet |
  org.optaplanner.core.impl.score.stream.bavet.bi |
  org.optaplanner.core.impl.score.stream.bavet.common |
  org.optaplanner.core.impl.score.stream.bavet.tri |
  org.optaplanner.core.impl.score.stream.bavet.uni |

- - ### Uses of BavetNodeBuildPolicy in org.optaplanner.core.impl.score.stream.bavet

    Methods in org.optaplanner.core.impl.score.stream.bavet with parameters of type BavetNodeBuildPolicy
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | BavetConstraint.`createNodes​(BavetNodeBuildPolicy<Solution_> buildPolicy, Map<Class<?>,​BavetFromUniNode<Object>> declaredClassToNodeMap, Score<?> constraintWeight)` |

  - ### Uses of BavetNodeBuildPolicy in org.optaplanner.core.impl.score.stream.bavet.bi

    Methods in org.optaplanner.core.impl.score.stream.bavet.bi with parameters of type BavetNodeBuildPolicy
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected void` | BavetAbstractBiConstraintStream.`createChildNodeChains​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractBiNode<A,​B> node)` |
    `protected void` | BavetGroupBridgeBiConstraintStream.`createChildNodeChains​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractBiNode<A,​B> node)` |
    `protected void` | BavetJoinBridgeBiConstraintStream.`createChildNodeChains​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractBiNode<A,​B> uncastedNode)` |
    `protected void` | BavetScoringBiConstraintStream.`createChildNodeChains​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractBiNode<A,​B> node)` |
    `protected abstract BavetAbstractBiNode<A,​B>` | BavetAbstractBiConstraintStream.`createNode​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractBiNode<A,​B> parentNode)` |
    `protected BavetFilterBiNode<A,​B>` | BavetFilterBiConstraintStream.`createNode​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractBiNode<A,​B> parentNode)` |
    `protected BavetGroupBiNode<GroupKey_,​ResultContainer_,​Result_>` | BavetGroupBiConstraintStream.`createNode​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractBiNode<GroupKey_,​Result_> parentNode)` |
    `protected BavetAbstractBiNode<A,​B>` | BavetGroupBridgeBiConstraintStream.`createNode​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractBiNode<A,​B> parentNode)` |
    `protected BavetJoinBiNode<A,​B>` | BavetJoinBiConstraintStream.`createNode​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractBiNode<A,​B> parentNode)` |
    `protected BavetJoinBridgeBiNode<A,​B>` | BavetJoinBridgeBiConstraintStream.`createNode​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractBiNode<A,​B> parentNode)` |
    `protected BavetScoringBiNode<A,​B>` | BavetScoringBiConstraintStream.`createNode​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractBiNode<A,​B> parentNode)` |
    `BavetAbstractBiNode<A,​B>` | BavetAbstractBiConstraintStream.`createNodeChain​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractBiNode<A,​B> parentNode)` |
    `BavetGroupBiNode<GroupKey_,​ResultContainer_,​Result_>` | BavetGroupBiConstraintStream.`createNodeChain​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractBiNode<GroupKey_,​Result_> parentNode)` |
    `BavetJoinBiNode<A,​B>` | BavetJoinBiConstraintStream.`createNodeChain​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetJoinBridgeNode leftNode_, BavetJoinBridgeNode rightNode_)` |
    `protected BavetAbstractBiNode<A,​B>` | BavetAbstractBiConstraintStream.`processNode​(BavetNodeBuildPolicy<Solution_> buildPolicy, BavetAbstractBiNode<A,​B> parentNode, BavetAbstractBiNode<A,​B> node)` |

  - ### Uses of BavetNodeBuildPolicy in org.optaplanner.core.impl.score.stream.bavet.common

    Methods in org.optaplanner.core.impl.score.stream.bavet.common with parameters of type BavetNodeBuildPolicy
    Modifier and Type | Method | Description
    --- | --- | ---
    `BavetJoinNode` | BavetJoinConstraintStream.`createNodeChain​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetJoinBridgeNode leftNode, BavetJoinBridgeNode rightNode)` |

  - ### Uses of BavetNodeBuildPolicy in org.optaplanner.core.impl.score.stream.bavet.tri

    Methods in org.optaplanner.core.impl.score.stream.bavet.tri with parameters of type BavetNodeBuildPolicy
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected void` | BavetAbstractTriConstraintStream.`createChildNodeChains​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractTriNode<A,​B,​C> node)` |
    `protected void` | BavetScoringTriConstraintStream.`createChildNodeChains​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractTriNode<A,​B,​C> node)` |
    `protected abstract BavetAbstractTriNode<A,​B,​C>` | BavetAbstractTriConstraintStream.`createNode​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractTriNode<A,​B,​C> parentNode)` |
    `protected BavetFilterTriNode<A,​B,​C>` | BavetFilterTriConstraintStream.`createNode​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractTriNode<A,​B,​C> parentNode)` |
    `protected BavetJoinTriNode<A,​B,​C>` | BavetJoinTriConstraintStream.`createNode​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractTriNode<A,​B,​C> parentNode)` |
    `protected BavetScoringTriNode<A,​B,​C>` | BavetScoringTriConstraintStream.`createNode​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractTriNode<A,​B,​C> parentNode)` |
    `BavetAbstractTriNode<A,​B,​C>` | BavetAbstractTriConstraintStream.`createNodeChain​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractTriNode<A,​B,​C> parentNode)` |
    `BavetJoinTriNode<A,​B,​C>` | BavetJoinTriConstraintStream.`createNodeChain​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetJoinBridgeNode leftNode_, BavetJoinBridgeNode rightNode_)` |
    `protected BavetAbstractTriNode<A,​B,​C>` | BavetAbstractTriConstraintStream.`processNode​(BavetNodeBuildPolicy<Solution_> buildPolicy, BavetAbstractTriNode<A,​B,​C> parentNode, BavetAbstractTriNode<A,​B,​C> node)` |

  - ### Uses of BavetNodeBuildPolicy in org.optaplanner.core.impl.score.stream.bavet.uni

    Methods in org.optaplanner.core.impl.score.stream.bavet.uni with parameters of type BavetNodeBuildPolicy
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected void` | BavetAbstractUniConstraintStream.`createChildNodeChains​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractUniNode<A> node)` |
    `protected void` | BavetGroupBridgeUniConstraintStream.`createChildNodeChains​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractUniNode<A> node)` |
    `protected void` | BavetJoinBridgeUniConstraintStream.`createChildNodeChains​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractUniNode<A> uncastedNode)` |
    `protected void` | BavetScoringUniConstraintStream.`createChildNodeChains​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractUniNode<A> node)` |
    `protected abstract BavetAbstractUniNode<A>` | BavetAbstractUniConstraintStream.`createNode​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractUniNode<A> parentNode)` |
    `protected BavetAbstractUniNode<A>` | BavetFilterUniConstraintStream.`createNode​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractUniNode<A> parentNode)` |
    `protected BavetFromUniNode<A>` | BavetFromUniConstraintStream.`createNode​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractUniNode<A> parentNode)` |
    `protected BavetGroupBridgeUniNode<A,​NewA,​ResultContainer_,​NewB>` | BavetGroupBridgeUniConstraintStream.`createNode​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractUniNode<A> parentNode)` |
    `protected BavetJoinBridgeUniNode<A>` | BavetJoinBridgeUniConstraintStream.`createNode​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractUniNode<A> parentNode)` |
    `protected BavetScoringUniNode<A>` | BavetScoringUniConstraintStream.`createNode​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractUniNode<A> parentNode)` |
    `BavetAbstractUniNode<A>` | BavetAbstractUniConstraintStream.`createNodeChain​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractUniNode<A> parentNode)` |
    `BavetFromUniNode<A>` | BavetFromUniConstraintStream.`createNodeChain​(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractUniNode<A> parentNode)` |
    `protected BavetAbstractUniNode<A>` | BavetAbstractUniConstraintStream.`processNode​(BavetNodeBuildPolicy<Solution_> buildPolicy, BavetAbstractUniNode<A> parentNode, BavetAbstractUniNode<A> node)` |