Interface StatementTupleExpr
- All Superinterfaces:
Cloneable, FedXTupleExpr, QueryModelNode, QueryRef, Serializable, TupleExpr, VariableExpr
- All Known Implementing Classes:
CheckStatementPattern, ExclusiveGroup, ExclusiveStatement, FedXStatementPattern, StatementSourcePattern
Interface for any expression that can be evaluated
- Author:
- Andreas Schwarte
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionevaluate(BindingSet bindings) Evaluate this expression using the provided bindingsgetId()booleanhasFreeVarsFor(BindingSet binding) returns true iff this statement has free variables in the presence of the specified binding setMethods inherited from interface FedXTupleExpr
getFreeVarCountMethods inherited from interface QueryModelNode
equals, getCostEstimate, getDoubleMetricActual, getDoubleMetricsActual, getHasNextCallCountActual, getHasNextTimeNanosActual, getHasNextTrueCountActual, getJoinLeftBindingsConsumedActual, getJoinRightBindingsConsumedActual, getJoinRightIteratorsCreatedActual, getLongMetricActual, getLongMetricsActual, getNextCallCountActual, getNextTimeNanosActual, getParentNode, getResultSizeActual, getResultSizeEstimate, getSignature, getSourceRowsFilteredActual, getSourceRowsMatchedActual, getSourceRowsScannedActual, getStringMetricActual, getStringMetricsActual, getTotalTimeNanosActual, isRuntimeTelemetryEnabled, replaceChildNode, replaceWith, setCostEstimate, setDoubleMetricActual, setHasNextCallCountActual, setHasNextTimeNanosActual, setHasNextTrueCountActual, setJoinLeftBindingsConsumedActual, setJoinRightBindingsConsumedActual, setJoinRightIteratorsCreatedActual, setLongMetricActual, setNextCallCountActual, setNextTimeNanosActual, setParentNode, setResultSizeActual, setResultSizeEstimate, setRuntimeTelemetryEnabled, setSourceRowsFilteredActual, setSourceRowsMatchedActual, setSourceRowsScannedActual, setStringMetricActual, setTotalTimeNanosActual, toString, visit, visitChildrenModifier and TypeMethodDescriptionbooleanReturns true if this query model node and its children are recursively equal to o and its children.default doubledefault doublegetDoubleMetricActual(String metricName) default longdefault longdefault longdefault longdefault longdefault longdefault longgetLongMetricActual(String metricName) default longdefault longGets the node's parent.default longdefault doubleReturns the number of tuples that this QueryNode predicts will be outputted.Returns the signature of this query model node.default longdefault longdefault longdefault StringgetStringMetricActual(String metricName) default longdefault booleanvoidreplaceChildNode(QueryModelNode current, QueryModelNode replacement) Replaces one of the child nodes with a new node.voidreplaceWith(QueryModelNode replacement) Substitutes this node with a new node in the query model tree.default voidsetCostEstimate(double costEstimate) default voidsetDoubleMetricActual(String metricName, double metricValue) default voidsetHasNextCallCountActual(long hasNextCallCountActual) default voidsetHasNextTimeNanosActual(long hasNextTimeNanosActual) default voidsetHasNextTrueCountActual(long hasNextTrueCountActual) default voidsetJoinLeftBindingsConsumedActual(long joinLeftBindingsConsumedActual) default voidsetJoinRightBindingsConsumedActual(long joinRightBindingsConsumedActual) default voidsetJoinRightIteratorsCreatedActual(long joinRightIteratorsCreatedActual) default voidsetLongMetricActual(String metricName, long metricValue) default voidsetNextCallCountActual(long nextCallCountActual) default voidsetNextTimeNanosActual(long nextTimeNanosActual) voidsetParentNode(QueryModelNode parent) Sets the node's parent.default voidsetResultSizeActual(long resultSizeActual) default voidsetResultSizeEstimate(double rows) default voidsetRuntimeTelemetryEnabled(boolean runtimeTelemetryEnabled) default voidsetSourceRowsFilteredActual(long sourceRowsFilteredActual) default voidsetSourceRowsMatchedActual(long sourceRowsMatchedActual) default voidsetSourceRowsScannedActual(long sourceRowsScannedActual) default voidsetStringMetricActual(String metricName, String metricValue) default voidsetTotalTimeNanosActual(long totalTime) toString()Returns an indented print of the node tree, starting from this node.<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 interface QueryRef
getQueryInfoModifier and TypeMethodDescriptionRetrieve the attached query information of the tuple expressionMethods inherited from interface TupleExpr
clone, getAssuredBindingNames, getBindingNames, getOrder, getSupportedOrders, setOrderModifier and TypeMethodDescriptionclone()Returns a (deep) clone of this query model node.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.default VargetOrder()getSupportedOrders(AvailableStatementOrder tripleSource) default voidMethods inherited from interface VariableExpr
getFreeVars
-
Method Details
-
getId
String getId()- Returns:
- the id of this expr
-
getStatementSources
List<StatementSource> getStatementSources()- Returns:
- a list of sources that are relevant for evaluation of this expression
-
hasFreeVarsFor
returns true iff this statement has free variables in the presence of the specified binding set- Parameters:
binding-- Returns:
- whether the statement has free vars
-
evaluate
Evaluate this expression using the provided bindings- Parameters:
bindings-- Returns:
- the result iteration
- Throws:
QueryEvaluationException
-