public class CheckStatementPattern extends Object implements StatementTupleExpr, BoundJoinTupleExpr
Modifier and Type | Field and Description |
---|---|
protected String |
id |
protected QueryInfo |
queryInfo |
protected StatementTupleExpr |
stmt |
Constructor and Description |
---|
CheckStatementPattern(StatementTupleExpr stmt,
QueryInfo queryInfo) |
Modifier and Type | Method and Description |
---|---|
CheckStatementPattern |
clone()
Returns a (deep) clone of this query model node.
|
CloseableIteration<BindingSet,QueryEvaluationException> |
evaluate(BindingSet bindings)
Evaluate this expression using the provided bindings
|
Set<String> |
getAssuredBindingNames()
Gets the names of the bindings that are guaranteed to be present in the results produced by this tuple
expression.
|
Set<String> |
getBindingNames()
Gets the names of the bindings that are, or can be, returned by this tuple expression when it is evaluated.
|
double |
getCostEstimate() |
int |
getFreeVarCount() |
List<String> |
getFreeVars() |
String |
getId() |
QueryModelNode |
getParentNode()
Gets the node's parent.
|
QueryInfo |
getQueryInfo()
Retrieve the attached query information of the tuple expression
|
long |
getResultSizeActual() |
double |
getResultSizeEstimate()
Returns the number of tuples that this QueryNode predicts will be outputted.
|
String |
getSignature()
Returns the signature of this query model node.
|
StatementPattern |
getStatementPattern() |
List<StatementSource> |
getStatementSources() |
long |
getTotalTimeNanosActual() |
boolean |
hasFreeVarsFor(BindingSet binding)
returns true iff this statement has free variables in the presence of the specified binding set
|
void |
replaceChildNode(QueryModelNode current,
QueryModelNode replacement)
Replaces one of the child nodes with a new node.
|
void |
replaceWith(QueryModelNode replacement)
Substitutes this node with a new node in the query model tree.
|
void |
setCostEstimate(double costEstimate) |
void |
setParentNode(QueryModelNode parent)
Sets the node's parent.
|
void |
setResultSizeActual(long resultSizeActual) |
void |
setResultSizeEstimate(double resultSizeEstimate) |
void |
setTotalTimeNanosActual(long totalTimeNanosActual) |
<X extends Exception> |
visit(QueryModelVisitor<X> visitor)
Visits this node.
|
<X extends Exception> |
visitChildren(QueryModelVisitor<X> visitor)
Visits the children of this node.
|
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
equals, toString
protected final StatementTupleExpr stmt
protected final String id
protected final QueryInfo queryInfo
public CheckStatementPattern(StatementTupleExpr stmt, QueryInfo queryInfo)
public StatementPattern getStatementPattern()
public int getFreeVarCount()
getFreeVarCount
in interface FedXTupleExpr
public List<String> getFreeVars()
getFreeVars
in interface VariableExpr
public String getId()
getId
in interface StatementTupleExpr
public List<StatementSource> getStatementSources()
getStatementSources
in interface StatementTupleExpr
public boolean hasFreeVarsFor(BindingSet binding)
StatementTupleExpr
hasFreeVarsFor
in interface StatementTupleExpr
public Set<String> getAssuredBindingNames()
TupleExpr
getAssuredBindingNames
in interface TupleExpr
public Set<String> getBindingNames()
TupleExpr
getBindingNames
in interface TupleExpr
public QueryModelNode getParentNode()
QueryModelNode
getParentNode
in interface QueryModelNode
public String getSignature()
QueryModelNode
QueryModelNode.toString()
.getSignature
in interface QueryModelNode
public void replaceChildNode(QueryModelNode current, QueryModelNode replacement)
QueryModelNode
replaceChildNode
in interface QueryModelNode
current
- The current child node.replacement
- The new child node.public void replaceWith(QueryModelNode replacement)
QueryModelNode
replaceWith
in interface QueryModelNode
replacement
- The new node.public void setParentNode(QueryModelNode parent)
QueryModelNode
setParentNode
in interface QueryModelNode
parent
- The parent node for this node.public <X extends Exception> void visit(QueryModelVisitor<X> visitor) throws X extends Exception
QueryModelNode
visit
in interface QueryModelNode
X extends Exception
public <X extends Exception> void visitChildren(QueryModelVisitor<X> visitor) throws X extends Exception
QueryModelNode
QueryModelNode.visit(QueryModelVisitor)
on all of its child nodes.visitChildren
in interface QueryModelNode
X extends Exception
public CheckStatementPattern clone()
QueryModelNode
public double getResultSizeEstimate()
QueryModelNode
getResultSizeEstimate
in interface QueryModelNode
public void setResultSizeEstimate(double resultSizeEstimate)
setResultSizeEstimate
in interface QueryModelNode
public long getResultSizeActual()
getResultSizeActual
in interface QueryModelNode
public void setResultSizeActual(long resultSizeActual)
setResultSizeActual
in interface QueryModelNode
public double getCostEstimate()
getCostEstimate
in interface QueryModelNode
public void setCostEstimate(double costEstimate)
setCostEstimate
in interface QueryModelNode
public long getTotalTimeNanosActual()
getTotalTimeNanosActual
in interface QueryModelNode
public void setTotalTimeNanosActual(long totalTimeNanosActual)
setTotalTimeNanosActual
in interface QueryModelNode
public CloseableIteration<BindingSet,QueryEvaluationException> evaluate(BindingSet bindings) throws QueryEvaluationException
StatementTupleExpr
evaluate
in interface StatementTupleExpr
QueryEvaluationException
public QueryInfo getQueryInfo()
QueryRef
getQueryInfo
in interface QueryRef
QueryInfo
Copyright © 2015-2020 Eclipse Foundation. All Rights Reserved.