Package org.eclipse.rdf4j.query.algebra
Class BinaryValueOperator
- java.lang.Object
-
- org.eclipse.rdf4j.query.algebra.AbstractQueryModelNode
-
- org.eclipse.rdf4j.query.algebra.BinaryValueOperator
-
- All Implemented Interfaces:
Serializable
,Cloneable
,GraphPatternGroupable
,QueryModelNode
,ValueExpr
,VariableScopeChange
public abstract class BinaryValueOperator extends AbstractQueryModelNode implements ValueExpr
An abstract superclass for binary value operators which, by definition, has two arguments.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
BinaryValueOperator()
protected
BinaryValueOperator(ValueExpr leftArg, ValueExpr rightArg)
Creates a new binary value operator.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description BinaryValueOperator
clone()
Returns a (deep) clone of this query model node.boolean
equals(Object other)
Returns true if this query model node and its children are recursively equal to o and its children.ValueExpr
getLeftArg()
Gets the left argument of this binary value operator.ValueExpr
getRightArg()
Gets the right argument of this binary value 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
setLeftArg(ValueExpr leftArg)
Sets the left argument of this binary value operator.void
setRightArg(ValueExpr rightArg)
Sets the right argument of this binary value 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
-
-
-
-
Method Detail
-
getLeftArg
public ValueExpr getLeftArg()
Gets the left argument of this binary value operator.- Returns:
- The operator's left argument.
-
setLeftArg
public void setLeftArg(ValueExpr leftArg)
Sets the left argument of this binary value operator.- Parameters:
leftArg
- The (new) left argument for this operator, must not be null.
-
getRightArg
public ValueExpr getRightArg()
Gets the right argument of this binary value operator.- Returns:
- The operator's right argument.
-
setRightArg
public void setRightArg(ValueExpr rightArg)
Sets the right argument of this binary value 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: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
public void replaceChildNode(QueryModelNode current, QueryModelNode replacement)
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
public boolean equals(Object other)
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
-
clone
public BinaryValueOperator 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 interfaceValueExpr
- Overrides:
clone
in classAbstractQueryModelNode
- Returns:
- A deep clone of this query model node.
-
-