Package org.eclipse.rdf4j.query.algebra
Class GroupElem
java.lang.Object
org.eclipse.rdf4j.query.algebra.AbstractQueryModelNode
org.eclipse.rdf4j.query.algebra.GroupElem
- All Implemented Interfaces:
Serializable
,Cloneable
,GraphPatternGroupable
,QueryModelNode
,VariableScopeChange
A tuple operator that groups tuples that have a specific set of equivalent variable bindings, and that can apply
aggregate functions on the grouped results.
- Author:
- David Huynh, Arjohn Kampman
- See Also:
-
Constructor Summary
-
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.getName()
Default implementation ofQueryModelNode.getSignature()
that prints the name of the node's class.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
void
setOperator
(AggregateOperator operator) <X extends Exception>
voidvisit
(QueryModelVisitor<X> visitor) Visits this node.<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, getTotalTimeNanosActual, isGraphPatternGroup, isVariableScopeChange, nullEquals, replaceNodeInList, replaceWith, setCostEstimate, setGraphPatternGroup, setParentNode, setResultSizeActual, setResultSizeEstimate, setTotalTimeNanosActual, setVariableScopeChange, toString
-
Constructor Details
-
GroupElem
-
-
Method Details
-
getName
-
setName
-
getOperator
-
setOperator
-
visit
Description copied from interface:QueryModelNode
Visits this node. The node reports itself to the visitor with the proper runtime type.- Throws:
X extends Exception
-
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.
-
getSignature
Description copied from class:AbstractQueryModelNode
Default implementation ofQueryModelNode.getSignature()
that prints the name of the node's class.- Specified by:
getSignature
in interfaceQueryModelNode
- Overrides:
getSignature
in classAbstractQueryModelNode
- Returns:
- The node's signature, e.g. SLICE (offset=10, limit=10).
-
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
- Overrides:
clone
in classAbstractQueryModelNode
- Returns:
- A deep clone of this query model node.
-