Class Slice
java.lang.Object
org.eclipse.rdf4j.query.algebra.AbstractQueryModelNode
org.eclipse.rdf4j.query.algebra.UnaryTupleOperator
org.eclipse.rdf4j.query.algebra.Slice
- All Implemented Interfaces:
Serializable, Cloneable, QueryModelNode, TupleExpr, VariableScopeChange
The SLICE operator, as defined in SPARQL Query
Language for RDF. The SLICE operator selects specific results from the underlying tuple expression based on an
offset and limit value (both optional).
- Author:
- Arjohn Kampman
- See Also:
-
Field Summary
Fields inherited from class UnaryTupleOperator
arg -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionclone()Returns a (deep) clone of this query model node.booleanReturns true if this query model node and its children are recursively equal to o and its children.longgetLimit()longDefault implementation ofQueryModelNode.getSignature()that prints the name of the node's class.inthashCode()booleanhasLimit()Checks whether the row selection has a (valid) limit.booleanChecks whether the row selection has a (valid) offset.voidsetLimit(long limit) voidsetOffset(long offset) <X extends Exception>
voidvisit(QueryModelVisitor<X> visitor) Visits this node.Methods inherited from class UnaryTupleOperator
getArg, getAssuredBindingNames, getBindingNames, getOrder, getSupportedOrders, replaceChildNode, setArg, setOrder, visitChildrenModifier and TypeMethodDescriptiongetArg()Gets the argument of this unary tuple operator.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.getOrder()getSupportedOrders(AvailableStatementOrder tripleSource) voidreplaceChildNode(QueryModelNode current, QueryModelNode replacement) Replaces one of the child nodes with a new node.voidSets the argument of this unary tuple operator.void<X extends Exception>
voidvisitChildren(QueryModelVisitor<X> visitor) Visits the children of this node.Methods inherited from class AbstractQueryModelNode
getCardinality, getCostEstimate, getDoubleMetricActual, getDoubleMetricsActual, getHasNextCallCountActual, getHasNextTimeNanosActual, getHasNextTrueCountActual, getJoinLeftBindingsConsumedActual, getJoinRightBindingsConsumedActual, getJoinRightIteratorsCreatedActual, getLongMetricActual, getLongMetricsActual, getNextCallCountActual, getNextTimeNanosActual, getParentNode, getResultSizeActual, getResultSizeEstimate, getSourceRowsFilteredActual, getSourceRowsMatchedActual, getSourceRowsScannedActual, getStringMetricActual, getStringMetricsActual, getTotalTimeNanosActual, isCardinalitySet, isRuntimeTelemetryEnabled, isVariableScopeChange, nullEquals, replaceNodeInList, replaceWith, resetCardinality, setCardinality, setCostEstimate, setDoubleMetricActual, setHasNextCallCountActual, setHasNextTimeNanosActual, setHasNextTrueCountActual, setJoinLeftBindingsConsumedActual, setJoinRightBindingsConsumedActual, setJoinRightIteratorsCreatedActual, setLongMetricActual, setNextCallCountActual, setNextTimeNanosActual, setParentNode, setResultSizeActual, setResultSizeEstimate, setRuntimeTelemetryEnabled, setSourceRowsFilteredActual, setSourceRowsMatchedActual, setSourceRowsScannedActual, setStringMetricActual, setTotalTimeNanosActual, setVariableScopeChange, shouldCacheCardinality, toStringModifier and TypeMethodDescriptiondoubledoubledoublegetDoubleMetricActual(String metricName) longlonglonglonglonglonglonggetLongMetricActual(String metricName) longlongGets the node's parent.longdoubleReturns the number of tuples that this QueryNode predicts will be outputted.longlonglonggetStringMetricActual(String metricName) longbooleanbooleanbooleanindicates if the node represents a variable scope change.protected booleannullEquals(Object o1, Object o2) protected <T extends QueryModelNode>
booleanreplaceNodeInList(List<T> list, QueryModelNode current, QueryModelNode replacement) voidreplaceWith(QueryModelNode replacement) Default implementation ofQueryModelNode.replaceWith(QueryModelNode)that throws anIllegalArgumentExceptionindicating that current is not a child node of this node.voidvoidsetCardinality(double cardinality) voidsetCostEstimate(double costEstimate) voidsetDoubleMetricActual(String metricName, double metricValue) voidsetHasNextCallCountActual(long hasNextCallCountActual) voidsetHasNextTimeNanosActual(long hasNextTimeNanosActual) voidsetHasNextTrueCountActual(long hasNextTrueCountActual) voidsetJoinLeftBindingsConsumedActual(long joinLeftBindingsConsumedActual) voidsetJoinRightBindingsConsumedActual(long joinRightBindingsConsumedActual) voidsetJoinRightIteratorsCreatedActual(long joinRightIteratorsCreatedActual) voidsetLongMetricActual(String metricName, long metricValue) voidsetNextCallCountActual(long nextCallCountActual) voidsetNextTimeNanosActual(long nextTimeNanosActual) voidsetParentNode(QueryModelNode parent) Sets the node's parent.voidsetResultSizeActual(long resultSizeActual) voidsetResultSizeEstimate(double resultSizeEstimate) voidsetRuntimeTelemetryEnabled(boolean runtimeTelemetryEnabled) voidsetSourceRowsFilteredActual(long sourceRowsFilteredActual) voidsetSourceRowsMatchedActual(long sourceRowsMatchedActual) voidsetSourceRowsScannedActual(long sourceRowsScannedActual) voidsetStringMetricActual(String metricName, String metricValue) voidsetTotalTimeNanosActual(long totalTimeNanosActual) voidsetVariableScopeChange(boolean isVariableScopeChange) Set the value ofVariableScopeChange.isVariableScopeChange()to true or false.protected booleantoString()Returns an indented print of the node tree, starting from this node.
-
Constructor Details
-
Slice
public Slice() -
Slice
-
Slice
-
-
Method Details
-
getOffset
public long getOffset() -
setOffset
public void setOffset(long offset) -
hasOffset
public boolean hasOffset()Checks whether the row selection has a (valid) offset.- Returns:
- true when offset > 0
-
getLimit
public long getLimit() -
setLimit
public void setLimit(long limit) -
hasLimit
public boolean hasLimit()Checks whether the row selection has a (valid) limit.- Returns:
- true when offset >= 0
-
visit
Description copied from interface:QueryModelNodeVisits this node. The node reports itself to the visitor with the proper runtime type.- Throws:
X
-
getSignature
Description copied from class:AbstractQueryModelNodeDefault implementation ofQueryModelNode.getSignature()that prints the name of the node's class.- Specified by:
getSignaturein interfaceQueryModelNode- Overrides:
getSignaturein classAbstractQueryModelNode- Returns:
- The node's signature, e.g. SLICE (offset=10, limit=10).
-
equals
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 classUnaryTupleOperator
-
hashCode
public int hashCode()- Overrides:
hashCodein classUnaryTupleOperator
-
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 classUnaryTupleOperator- Returns:
- A deep clone of this query model node.
-