Package org.eclipse.rdf4j.query.algebra
Class BinaryTupleOperator
java.lang.Object
org.eclipse.rdf4j.query.algebra.AbstractQueryModelNode
org.eclipse.rdf4j.query.algebra.BinaryTupleOperator
- All Implemented Interfaces:
Serializable
,Cloneable
,GraphPatternGroupable
,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
-
Constructor Summary
ModifierConstructorDescriptionprotected
protected
BinaryTupleOperator
(TupleExpr leftArg, TupleExpr rightArg) Creates a new binary tuple operator. -
Method Summary
Modifier and TypeMethodDescriptionclone()
Returns a (deep) clone of this query model node.boolean
Returns 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.Gets the right argument of this binary tuple operator.int
hashCode()
void
replaceChildNode
(QueryModelNode current, QueryModelNode replacement) Default implementation ofQueryModelNode.replaceChildNode(QueryModelNode, QueryModelNode)
that throws anIllegalArgumentException
indicating that current is not a child node of this node.void
setAlgorithm
(String classSimpleName) void
setAlgorithm
(CloseableIteration<?, ?> iteration) void
setLeftArg
(TupleExpr leftArg) Sets the left argument of this binary tuple operator.void
setRightArg
(TupleExpr rightArg) Sets the right argument of this binary tuple operator.<X extends Exception>
voidvisitChildren
(QueryModelVisitor<X> visitor) Dummy implementation ofQueryModelNode.visitChildren(org.eclipse.rdf4j.query.algebra.QueryModelVisitor<X>)
that does nothing.Methods inherited from class org.eclipse.rdf4j.query.algebra.AbstractQueryModelNode
getCardinality, getCostEstimate, getParentNode, getResultSizeActual, getResultSizeEstimate, getSignature, getTotalTimeNanosActual, isCardinalitySet, isGraphPatternGroup, isVariableScopeChange, nullEquals, replaceNodeInList, replaceWith, resetCardinality, setCardinality, setCostEstimate, setGraphPatternGroup, setParentNode, setResultSizeActual, setResultSizeEstimate, setTotalTimeNanosActual, setVariableScopeChange, shouldCacheCardinality, toString
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.eclipse.rdf4j.query.algebra.QueryModelNode
getCostEstimate, getParentNode, getResultSizeActual, getResultSizeEstimate, getSignature, getTotalTimeNanosActual, replaceWith, setCostEstimate, setParentNode, setResultSizeActual, setResultSizeEstimate, setTotalTimeNanosActual, toString, visit
Methods inherited from interface org.eclipse.rdf4j.query.algebra.TupleExpr
getAssuredBindingNames, getBindingNames
-
Field Details
-
leftArg
The operator's left argument. -
rightArg
The operator's right argument.
-
-
Constructor Details
-
BinaryTupleOperator
protected BinaryTupleOperator() -
BinaryTupleOperator
Creates a new binary tuple operator.- Parameters:
leftArg
- The operator's left argument, must not be null.rightArg
- The operator's right argument, must not be null.
-
-
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 class:AbstractQueryModelNode
Dummy implementation ofQueryModelNode.visitChildren(org.eclipse.rdf4j.query.algebra.QueryModelVisitor<X>)
that does nothing. Subclasses should override this method when they have child nodes.- Specified by:
visitChildren
in interfaceQueryModelNode
- Overrides:
visitChildren
in classAbstractQueryModelNode
- Throws:
X extends Exception
-
replaceChildNode
Description copied from class:AbstractQueryModelNode
Default implementation ofQueryModelNode.replaceChildNode(QueryModelNode, QueryModelNode)
that throws anIllegalArgumentException
indicating that current is not a child node of this node.- Specified by:
replaceChildNode
in interfaceQueryModelNode
- Overrides:
replaceChildNode
in classAbstractQueryModelNode
- Parameters:
current
- The current child node.replacement
- The new child node.
-
equals
Description copied from interface:QueryModelNode
Returns true if this query model node and its children are recursively equal to o and its children.- Specified by:
equals
in interfaceQueryModelNode
- Overrides:
equals
in classObject
-
hashCode
public int hashCode() -
clone
Description copied from interface:QueryModelNode
Returns a (deep) clone of this query model node. This method recursively clones the entire node tree, starting from this nodes.- Specified by:
clone
in interfaceQueryModelNode
- Specified by:
clone
in interfaceTupleExpr
- Overrides:
clone
in classAbstractQueryModelNode
- Returns:
- A deep clone of this query model node.
-
setAlgorithm
-
setAlgorithm
-
getAlgorithmName
-