Class BavetConcatBiConstraintStream<Solution_,A,B>
java.lang.Object
ai.timefold.solver.constraint.streams.common.AbstractConstraintStream<Solution_>
ai.timefold.solver.constraint.streams.bavet.common.BavetAbstractConstraintStream<Solution_>
ai.timefold.solver.constraint.streams.bavet.bi.BavetAbstractBiConstraintStream<Solution_,A,B>
ai.timefold.solver.constraint.streams.bavet.bi.BavetConcatBiConstraintStream<Solution_,A,B>
- All Implemented Interfaces:
BavetConcatConstraintStream<Solution_>,BavetStreamBinaryOperation<Solution_>,TupleSource,InnerBiConstraintStream<A,,B> BiConstraintStream<A,,B> ConstraintStream
public final class BavetConcatBiConstraintStream<Solution_,A,B>
extends BavetAbstractBiConstraintStream<Solution_,A,B>
implements BavetConcatConstraintStream<Solution_>
-
Field Summary
Fields inherited from class ai.timefold.solver.constraint.streams.bavet.common.BavetAbstractConstraintStream
childStreamList, constraintFactory, parent -
Constructor Summary
ConstructorsConstructorDescriptionBavetConcatBiConstraintStream(BavetConstraintFactory<Solution_> constraintFactory, BavetForeBridgeBiConstraintStream<Solution_, A, B> leftParent, BavetForeBridgeBiConstraintStream<Solution_, A, B> rightParent) BavetConcatBiConstraintStream(BavetConstraintFactory<Solution_> constraintFactory, BavetForeBridgeBiConstraintStream<Solution_, A, B> leftParent, BavetForeBridgeUniConstraintStream<Solution_, A> rightParent) BavetConcatBiConstraintStream(BavetConstraintFactory<Solution_> constraintFactory, BavetForeBridgeUniConstraintStream<Solution_, A> leftParent, BavetForeBridgeBiConstraintStream<Solution_, A, B> rightParent) -
Method Summary
Modifier and TypeMethodDescription<Score_ extends Score<Score_>>
voidbuildNode(NodeBuildHelper<Score_> buildHelper) voidcollectActiveConstraintStreams(Set<BavetAbstractConstraintStream<Solution_>> constraintStreamSet) booleanbooleanWhether the stream guarantees that no two tuples it produces will ever have the same set of facts.inthashCode()toString()Methods inherited from class ai.timefold.solver.constraint.streams.bavet.bi.BavetAbstractBiConstraintStream
concat, concat, concat, concat, distinct, expand, expand, filter, flattenLast, getDefaultIndictedObjectsMapping, getDefaultJustificationMapping, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, ifExists, ifExists, ifExistsIncludingNullVars, ifNotExists, ifNotExists, ifNotExistsIncludingNullVars, innerImpact, innerImpact, innerImpact, join, map, map, map, mapMethods inherited from class ai.timefold.solver.constraint.streams.bavet.common.BavetAbstractConstraintStream
assertEmptyChildStreamList, buildConstraint, getChildStreamList, getConstraintFactory, getParent, getTupleSource, shareAndAddChildMethods inherited from class ai.timefold.solver.constraint.streams.common.AbstractConstraintStream
buildConstraintWeightExtractor, buildConstraintWeightExtractor, getRetrievalSemanticsMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface ai.timefold.solver.core.api.score.stream.bi.BiConstraintStream
ifExists, ifExists, ifExists, ifExists, ifExistsIncludingNullVars, ifExistsIncludingNullVars, ifExistsIncludingNullVars, ifExistsIncludingNullVars, ifNotExists, ifNotExists, ifNotExists, ifNotExists, ifNotExistsIncludingNullVars, ifNotExistsIncludingNullVars, ifNotExistsIncludingNullVars, ifNotExistsIncludingNullVars, impact, impact, impact, impactBigDecimal, impactBigDecimal, impactConfigurable, impactConfigurable, impactConfigurable, impactConfigurableBigDecimal, impactConfigurableBigDecimal, impactConfigurableLong, impactConfigurableLong, impactLong, impactLong, join, join, join, join, join, join, join, join, join, join, penalize, penalize, penalize, penalizeBigDecimal, penalizeBigDecimal, penalizeConfigurable, penalizeConfigurable, penalizeConfigurable, penalizeConfigurableBigDecimal, penalizeConfigurableBigDecimal, penalizeConfigurableLong, penalizeConfigurableLong, penalizeLong, penalizeLong, reward, reward, reward, rewardBigDecimal, rewardBigDecimal, rewardConfigurable, rewardConfigurable, rewardConfigurable, rewardConfigurableBigDecimal, rewardConfigurableBigDecimal, rewardConfigurableLong, rewardConfigurableLong, rewardLong, rewardLongMethods inherited from interface ai.timefold.solver.core.api.score.stream.ConstraintStream
getConstraintFactoryMethods inherited from interface ai.timefold.solver.constraint.streams.common.bi.InnerBiConstraintStream
getRetrievalSemantics, impact, impact, impact, impactBigDecimal, impactConfigurable, impactConfigurableBigDecimal, impactConfigurableLong, impactLong, join, penalize, penalize, penalize, penalizeBigDecimal, penalizeConfigurable, penalizeConfigurable, penalizeConfigurable, penalizeConfigurableBigDecimal, penalizeConfigurableLong, penalizeLong, reward, reward, reward, rewardBigDecimal, rewardConfigurable, rewardConfigurable, rewardConfigurable, rewardConfigurableBigDecimal, rewardConfigurableLong, rewardLong
-
Constructor Details
-
BavetConcatBiConstraintStream
public BavetConcatBiConstraintStream(BavetConstraintFactory<Solution_> constraintFactory, BavetForeBridgeUniConstraintStream<Solution_, A> leftParent, BavetForeBridgeBiConstraintStream<Solution_, A, B> rightParent) -
BavetConcatBiConstraintStream
public BavetConcatBiConstraintStream(BavetConstraintFactory<Solution_> constraintFactory, BavetForeBridgeBiConstraintStream<Solution_, A, B> leftParent, BavetForeBridgeBiConstraintStream<Solution_, A, B> rightParent) -
BavetConcatBiConstraintStream
public BavetConcatBiConstraintStream(BavetConstraintFactory<Solution_> constraintFactory, BavetForeBridgeBiConstraintStream<Solution_, A, B> leftParent, BavetForeBridgeUniConstraintStream<Solution_, A> rightParent)
-
-
Method Details
-
guaranteesDistinct
public boolean guaranteesDistinct()Description copied from class:BavetAbstractConstraintStreamWhether the stream guarantees that no two tuples it produces will ever have the same set of facts. Streams which can prove that they either do or do not produce unique tuples should override this method.- Specified by:
guaranteesDistinctin interfaceInnerBiConstraintStream<Solution_,A> - Overrides:
guaranteesDistinctin classBavetAbstractConstraintStream<Solution_>- Returns:
- delegates to
BavetAbstractConstraintStream.getParent()if not null, otherwise false
-
collectActiveConstraintStreams
public void collectActiveConstraintStreams(Set<BavetAbstractConstraintStream<Solution_>> constraintStreamSet) - Overrides:
collectActiveConstraintStreamsin classBavetAbstractConstraintStream<Solution_>
-
buildNode
- Specified by:
buildNodein classBavetAbstractConstraintStream<Solution_>
-
equals
-
hashCode
public int hashCode() -
toString
-
getLeftParent
- Specified by:
getLeftParentin interfaceBavetStreamBinaryOperation<Solution_>- Returns:
- An instance of
BavetForeBridgeUniConstraintStream.
-
getRightParent
- Specified by:
getRightParentin interfaceBavetStreamBinaryOperation<Solution_>- Returns:
- An instance of
BavetForeBridgeUniConstraintStream.
-