Class AbstractIndexedJoinNode<LeftTuple_ extends AbstractTuple,Right_,OutTuple_ extends AbstractTuple>
java.lang.Object
ai.timefold.solver.core.impl.bavet.common.AbstractNode
ai.timefold.solver.core.impl.bavet.common.AbstractTwoInputNode<LeftTuple_,UniTuple<Right_>>
ai.timefold.solver.core.impl.bavet.common.AbstractJoinNode<LeftTuple_,Right_,OutTuple_>
ai.timefold.solver.core.impl.bavet.common.AbstractIndexedJoinNode<LeftTuple_,Right_,OutTuple_>
- Type Parameters:
LeftTuple_-Right_-
- All Implemented Interfaces:
LeftTupleLifecycle<LeftTuple_>,RightTupleLifecycle<UniTuple<Right_>>
- Direct Known Subclasses:
IndexedJoinBiNode,IndexedJoinQuadNode,IndexedJoinTriNode
public abstract class AbstractIndexedJoinNode<LeftTuple_ extends AbstractTuple,Right_,OutTuple_ extends AbstractTuple>
extends AbstractJoinNode<LeftTuple_,Right_,OutTuple_>
implements LeftTupleLifecycle<LeftTuple_>, RightTupleLifecycle<UniTuple<Right_>>
There is a strong likelihood that any change to this class, which is not related to indexing,
should also be made to
AbstractUnindexedJoinNode.-
Field Summary
Fields inherited from class ai.timefold.solver.core.impl.bavet.common.AbstractJoinNode
inputStoreIndexLeftOutTupleList, inputStoreIndexRightOutTupleList -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedAbstractIndexedJoinNode(IndexerFactory.KeysExtractor<LeftTuple_> keysExtractorLeft, IndexerFactory<Right_> indexerFactory, int inputStoreIndexLeftKeys, int inputStoreIndexLeftEntry, int inputStoreIndexLeftOutTupleList, int inputStoreIndexRightKeys, int inputStoreIndexRightEntry, int inputStoreIndexRightOutTupleList, TupleLifecycle<OutTuple_> nextNodesTupleLifecycle, boolean isFiltering, int outputStoreIndexLeftOutEntry, int outputStoreIndexRightOutEntry) -
Method Summary
Modifier and TypeMethodDescriptionfinal voidinsertLeft(LeftTuple_ leftTuple) final voidinsertRight(UniTuple<Right_> rightTuple) final voidretractLeft(LeftTuple_ leftTuple) final voidretractRight(UniTuple<Right_> rightTuple) final voidupdateLeft(LeftTuple_ leftTuple) final voidupdateRight(UniTuple<Right_> rightTuple) Methods inherited from class ai.timefold.solver.core.impl.bavet.common.AbstractJoinNode
createOutTuple, getPropagator, innerUpdateLeft, innerUpdateRight, insertOutTuple, insertOutTupleFiltered, retractOutTuple, setOutTupleLeftFacts, setOutTupleRightFact, testFilteringMethods inherited from class ai.timefold.solver.core.impl.bavet.common.AbstractNode
getId, getLayerIndex, setId, setLayerIndex, toString
-
Constructor Details
-
AbstractIndexedJoinNode
protected AbstractIndexedJoinNode(IndexerFactory.KeysExtractor<LeftTuple_> keysExtractorLeft, IndexerFactory<Right_> indexerFactory, int inputStoreIndexLeftKeys, int inputStoreIndexLeftEntry, int inputStoreIndexLeftOutTupleList, int inputStoreIndexRightKeys, int inputStoreIndexRightEntry, int inputStoreIndexRightOutTupleList, TupleLifecycle<OutTuple_> nextNodesTupleLifecycle, boolean isFiltering, int outputStoreIndexLeftOutEntry, int outputStoreIndexRightOutEntry)
-
-
Method Details
-
insertLeft
- Specified by:
insertLeftin interfaceLeftTupleLifecycle<LeftTuple_ extends AbstractTuple>
-
updateLeft
- Specified by:
updateLeftin interfaceLeftTupleLifecycle<LeftTuple_ extends AbstractTuple>
-
retractLeft
- Specified by:
retractLeftin interfaceLeftTupleLifecycle<LeftTuple_ extends AbstractTuple>
-
insertRight
- Specified by:
insertRightin interfaceRightTupleLifecycle<LeftTuple_ extends AbstractTuple>
-
updateRight
- Specified by:
updateRightin interfaceRightTupleLifecycle<LeftTuple_ extends AbstractTuple>
-
retractRight
- Specified by:
retractRightin interfaceRightTupleLifecycle<LeftTuple_ extends AbstractTuple>
-