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
public abstract class BinaryTupleOperator extends AbstractQueryModelNode implements TupleExpr
An abstract superclass for binary tuple operators which, by definition, has two arguments.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedBinaryTupleOperator()protectedBinaryTupleOperator(TupleExpr leftArg, TupleExpr rightArg)Creates a new binary tuple operator.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description BinaryTupleOperatorclone()Returns a (deep) clone of this query model node.booleanequals(Object other)Returns true if this query model node and its children are recursively equal to o and its children.StringgetAlgorithmName()TupleExprgetLeftArg()Gets the left argument of this binary tuple operator.TupleExprgetRightArg()Gets the right argument of this binary tuple operator.inthashCode()voidreplaceChildNode(QueryModelNode current, QueryModelNode replacement)Default implementation ofQueryModelNode.replaceChildNode(QueryModelNode, QueryModelNode)that throws anIllegalArgumentExceptionindicating that current is not a child node of this node.voidsetAlgorithm(String classSimpleName)voidsetAlgorithm(Iteration<BindingSet,QueryEvaluationException> iteration)voidsetLeftArg(TupleExpr leftArg)Sets the left argument of this binary tuple operator.voidsetRightArg(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
getCostEstimate, getParentNode, getResultSizeActual, getResultSizeEstimate, getSignature, getTotalTimeNanosActual, isGraphPatternGroup, isVariableScopeChange, nullEquals, replaceNodeInList, replaceWith, setCostEstimate, setGraphPatternGroup, setParentNode, setResultSizeActual, setResultSizeEstimate, setTotalTimeNanosActual, setVariableScopeChange, 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
-
-
-
-
Method Detail
-
getLeftArg
public TupleExpr getLeftArg()
Gets the left argument of this binary tuple operator.- Returns:
- The operator's left argument.
-
setLeftArg
public void setLeftArg(TupleExpr leftArg)
Sets the left argument of this binary tuple operator.- Parameters:
leftArg- The (new) left argument for this operator, must not be null.
-
getRightArg
public TupleExpr getRightArg()
Gets the right argument of this binary tuple operator.- Returns:
- The operator's right argument.
-
setRightArg
public void setRightArg(TupleExpr rightArg)
Sets the right argument of this binary tuple operator.- Parameters:
rightArg- The (new) right argument for this operator, must not be null.
-
visitChildren
public <X extends Exception> void visitChildren(QueryModelVisitor<X> visitor) throws X extends Exception
Description copied from class:AbstractQueryModelNodeDummy 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:
visitChildrenin interfaceQueryModelNode- Overrides:
visitChildrenin classAbstractQueryModelNode- Throws:
X extends Exception
-
replaceChildNode
public void replaceChildNode(QueryModelNode current, QueryModelNode replacement)
Description copied from class:AbstractQueryModelNodeDefault implementation ofQueryModelNode.replaceChildNode(QueryModelNode, QueryModelNode)that throws anIllegalArgumentExceptionindicating that current is not a child node of this node.- Specified by:
replaceChildNodein interfaceQueryModelNode- Overrides:
replaceChildNodein classAbstractQueryModelNode- Parameters:
current- The current child node.replacement- The new child node.
-
equals
public boolean equals(Object other)
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
-
clone
public BinaryTupleOperator 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
@Experimental public void setAlgorithm(Iteration<BindingSet,QueryEvaluationException> iteration)
-
setAlgorithm
@Experimental public void setAlgorithm(String classSimpleName)
-
getAlgorithmName
@Experimental public String getAlgorithmName()
-
-