Class BinaryTupleOperator
java.lang.Object
org.eclipse.rdf4j.query.algebra.AbstractQueryModelNode
org.eclipse.rdf4j.query.algebra.BinaryTupleOperator
- All Implemented Interfaces:
Serializable, Cloneable, QueryModelNode, TupleExpr, VariableScopeChange
- Direct Known Subclasses:
Difference, Intersection, Join, LeftJoin, Union
An abstract superclass for binary tuple operators which, by definition, has two arguments.
- See Also:
-
Field Summary
Fields -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedprotectedBinaryTupleOperator(TupleExpr leftArg, TupleExpr rightArg) Creates a new binary tuple operator. -
Method Summary
Modifier and TypeMethodDescriptionclone()Returns a (deep) clone of this query model node.booleanReturns true if this query model node and its children are recursively equal to o and its children.Gets the left argument of this binary tuple operator.getOrder()Gets the right argument of this binary tuple operator.getSupportedOrders(AvailableStatementOrder tripleSource) inthashCode()voidreplaceChildNode(QueryModelNode current, QueryModelNode replacement) Replaces one of the child nodes with a new node.voidsetAlgorithm(String classSimpleName) voidsetAlgorithm(CloseableIteration<?> iteration) voidsetLeftArg(TupleExpr leftArg) Sets the left argument of this binary tuple operator.voidvoidsetRightArg(TupleExpr rightArg) Sets the right argument of this binary tuple operator.<X extends Exception>
voidvisitChildren(QueryModelVisitor<X> visitor) Visits the children of this node.Methods inherited from class AbstractQueryModelNode
getCardinality, getCostEstimate, getDoubleMetricActual, getDoubleMetricsActual, getHasNextCallCountActual, getHasNextTimeNanosActual, getHasNextTrueCountActual, getJoinLeftBindingsConsumedActual, getJoinRightBindingsConsumedActual, getJoinRightIteratorsCreatedActual, getLongMetricActual, getLongMetricsActual, getNextCallCountActual, getNextTimeNanosActual, getParentNode, getResultSizeActual, getResultSizeEstimate, getSignature, getSourceRowsFilteredActual, getSourceRowsMatchedActual, getSourceRowsScannedActual, getStringMetricActual, getStringMetricsActual, getTotalTimeNanosActual, isCardinalitySet, isRuntimeTelemetryEnabled, isVariableScopeChange, nullEquals, replaceNodeInList, replaceWith, resetCardinality, setCardinality, setCostEstimate, setDoubleMetricActual, setHasNextCallCountActual, setHasNextTimeNanosActual, setHasNextTrueCountActual, setJoinLeftBindingsConsumedActual, setJoinRightBindingsConsumedActual, setJoinRightIteratorsCreatedActual, setLongMetricActual, setNextCallCountActual, setNextTimeNanosActual, setParentNode, setResultSizeActual, setResultSizeEstimate, setRuntimeTelemetryEnabled, setSourceRowsFilteredActual, setSourceRowsMatchedActual, setSourceRowsScannedActual, setStringMetricActual, setTotalTimeNanosActual, setVariableScopeChange, shouldCacheCardinality, toStringModifier and TypeMethodDescriptiondoubledoubledoublegetDoubleMetricActual(String metricName) longlonglonglonglonglonglonggetLongMetricActual(String metricName) longlongGets the node's parent.longdoubleReturns the number of tuples that this QueryNode predicts will be outputted.Default implementation ofQueryModelNode.getSignature()that prints the name of the node's class.longlonglonggetStringMetricActual(String metricName) longbooleanbooleanbooleanindicates if the node represents a variable scope change.protected booleannullEquals(Object o1, Object o2) protected <T extends QueryModelNode>
booleanreplaceNodeInList(List<T> list, QueryModelNode current, QueryModelNode replacement) voidreplaceWith(QueryModelNode replacement) Default implementation ofQueryModelNode.replaceWith(QueryModelNode)that throws anIllegalArgumentExceptionindicating that current is not a child node of this node.voidvoidsetCardinality(double cardinality) voidsetCostEstimate(double costEstimate) voidsetDoubleMetricActual(String metricName, double metricValue) voidsetHasNextCallCountActual(long hasNextCallCountActual) voidsetHasNextTimeNanosActual(long hasNextTimeNanosActual) voidsetHasNextTrueCountActual(long hasNextTrueCountActual) voidsetJoinLeftBindingsConsumedActual(long joinLeftBindingsConsumedActual) voidsetJoinRightBindingsConsumedActual(long joinRightBindingsConsumedActual) voidsetJoinRightIteratorsCreatedActual(long joinRightIteratorsCreatedActual) voidsetLongMetricActual(String metricName, long metricValue) voidsetNextCallCountActual(long nextCallCountActual) voidsetNextTimeNanosActual(long nextTimeNanosActual) voidsetParentNode(QueryModelNode parent) Sets the node's parent.voidsetResultSizeActual(long resultSizeActual) voidsetResultSizeEstimate(double resultSizeEstimate) voidsetRuntimeTelemetryEnabled(boolean runtimeTelemetryEnabled) voidsetSourceRowsFilteredActual(long sourceRowsFilteredActual) voidsetSourceRowsMatchedActual(long sourceRowsMatchedActual) voidsetSourceRowsScannedActual(long sourceRowsScannedActual) voidsetStringMetricActual(String metricName, String metricValue) voidsetTotalTimeNanosActual(long totalTimeNanosActual) voidsetVariableScopeChange(boolean isVariableScopeChange) Set the value ofVariableScopeChange.isVariableScopeChange()to true or false.protected booleantoString()Returns an indented print of the node tree, starting from this node.Methods inherited from interface QueryModelNode
visitModifier and TypeMethodDescription<X extends Exception>
voidvisit(QueryModelVisitor<X> visitor) Visits this node.Methods inherited from interface TupleExpr
getAssuredBindingNames, getBindingNamesModifier and TypeMethodDescriptionGets the names of the bindings that are guaranteed to be present in the results produced by this tuple expression.Gets the names of the bindings that are, or can be, returned by this tuple expression when it is evaluated.
-
Field Details
-
leftArg
The operator's left argument. -
rightArg
The operator's right argument.
-
-
Constructor Details
-
BinaryTupleOperator
protected BinaryTupleOperator() -
BinaryTupleOperator
-
-
Method Details
-
getLeftArg
Gets the left argument of this binary tuple operator.- Returns:
- The operator's left argument.
-
setLeftArg
Sets the left argument of this binary tuple operator.- Parameters:
leftArg- The (new) left argument for this operator, must not be null.
-
getRightArg
Gets the right argument of this binary tuple operator.- Returns:
- The operator's right argument.
-
setRightArg
Sets the right argument of this binary tuple operator.- Parameters:
rightArg- The (new) right argument for this operator, must not be null.
-
visitChildren
Description copied from interface:QueryModelNodeVisits the children of this node. The node callsQueryModelNode.visit(QueryModelVisitor)on all of its child nodes.- Specified by:
visitChildrenin interfaceQueryModelNode- Throws:
X
-
replaceChildNode
Description copied from interface:QueryModelNodeReplaces one of the child nodes with a new node.- Specified by:
replaceChildNodein interfaceQueryModelNode- Parameters:
current- The current child node.replacement- The new child node.
-
equals
Description copied from interface:QueryModelNodeReturns true if this query model node and its children are recursively equal to o and its children.- Specified by:
equalsin interfaceQueryModelNode- Overrides:
equalsin classObject
-
hashCode
-
clone
Description copied from interface:QueryModelNodeReturns a (deep) clone of this query model node. This method recursively clones the entire node tree, starting from this nodes.- Specified by:
clonein interfaceQueryModelNode- Specified by:
clonein interfaceTupleExpr- Overrides:
clonein classAbstractQueryModelNode- Returns:
- A deep clone of this query model node.
-
setAlgorithm
-
setAlgorithm
-
getAlgorithmName
-
getSupportedOrders
- Specified by:
getSupportedOrdersin interfaceTupleExpr
-
setOrder
-
getOrder
-