Package org.eclipse.rdf4j.query.algebra
Class MultiProjection
java.lang.Object
org.eclipse.rdf4j.query.algebra.AbstractQueryModelNode
org.eclipse.rdf4j.query.algebra.UnaryTupleOperator
org.eclipse.rdf4j.query.algebra.MultiProjection
- All Implemented Interfaces:
Serializable
,Cloneable
,QueryModelNode
,TupleExpr
,VariableScopeChange
A "multi-projection" that can produce multiple solutions from a single set of bindings.
- See Also:
-
Field Summary
Fields inherited from class org.eclipse.rdf4j.query.algebra.UnaryTupleOperator
arg
-
Constructor Summary
ConstructorDescriptionMultiProjection
(TupleExpr arg) MultiProjection
(TupleExpr arg, Iterable<ProjectionElemList> projections) -
Method Summary
Modifier and TypeMethodDescriptionvoid
addProjection
(ProjectionElemList projection) void
addProjections
(Iterable<ProjectionElemList> projections) clone()
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 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.int
hashCode()
void
replaceChildNode
(QueryModelNode current, QueryModelNode replacement) Replaces one of the child nodes with a new node.void
setProjections
(Iterable<ProjectionElemList> projections) <X extends Exception>
voidvisit
(QueryModelVisitor<X> visitor) Visits this node.<X extends Exception>
voidvisitChildren
(QueryModelVisitor<X> visitor) Visits the children of this node.Methods inherited from class org.eclipse.rdf4j.query.algebra.UnaryTupleOperator
getArg, getOrder, getSupportedOrders, setArg, setOrder
Methods inherited from class org.eclipse.rdf4j.query.algebra.AbstractQueryModelNode
getCardinality, getCostEstimate, getParentNode, getResultSizeActual, getResultSizeEstimate, getSignature, getTotalTimeNanosActual, isCardinalitySet, isVariableScopeChange, nullEquals, replaceNodeInList, replaceWith, resetCardinality, setCardinality, setCostEstimate, 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
-
Constructor Details
-
MultiProjection
public MultiProjection() -
MultiProjection
-
MultiProjection
-
-
Method Details
-
getProjections
-
setProjections
-
addProjections
-
addProjection
-
getBindingNames
Description copied from interface:TupleExpr
Gets the names of the bindings that are, or can be, returned by this tuple expression when it is evaluated.- Specified by:
getBindingNames
in interfaceTupleExpr
- Overrides:
getBindingNames
in classUnaryTupleOperator
- Returns:
- A set of binding names.
-
getAssuredBindingNames
Description copied from interface:TupleExpr
Gets the names of the bindings that are guaranteed to be present in the results produced by this tuple expression.- Specified by:
getAssuredBindingNames
in interfaceTupleExpr
- Overrides:
getAssuredBindingNames
in classUnaryTupleOperator
- Returns:
- A set of binding names.
-
visit
Description copied from interface:QueryModelNode
Visits this node. The node reports itself to the visitor with the proper runtime type.- Throws:
X
-
visitChildren
Description copied from interface:QueryModelNode
Visits the children of this node. The node callsQueryModelNode.visit(QueryModelVisitor)
on all of its child nodes.- Specified by:
visitChildren
in interfaceQueryModelNode
- Overrides:
visitChildren
in classUnaryTupleOperator
- Throws:
X
-
replaceChildNode
Description copied from interface:QueryModelNode
Replaces one of the child nodes with a new node.- Specified by:
replaceChildNode
in interfaceQueryModelNode
- Overrides:
replaceChildNode
in classUnaryTupleOperator
- 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 classUnaryTupleOperator
-
hashCode
public int hashCode()- Overrides:
hashCode
in classUnaryTupleOperator
-
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 classUnaryTupleOperator
- Returns:
- A deep clone of this query model node.
-