public class SubqueryRoot extends SubqueryBase implements IJoinNode
Modifier and Type | Class and Description |
---|---|
static interface |
SubqueryRoot.Annotations |
DEFAULT_INITIAL_CAPACITY
Constructor and Description |
---|
SubqueryRoot(BOp[] args,
Map<String,Object> anns)
Shallow copy constructor.
|
SubqueryRoot(QueryType queryType)
Note: This constructor variant may be used with the implicit subquery for
EXISTS to specify the type of the subquery as
QueryType.ASK . |
SubqueryRoot(SubqueryRoot queryBase)
Deep copy constructor.
|
Modifier and Type | Method and Description |
---|---|
IVariable<?> |
getAskVar() |
List<FilterNode> |
getAttachedJoinFilters()
Return the FILTER(s) associated with this
IJoinNode . |
FilterExistsModeEnum |
getFilterExistsMode() |
boolean |
isMinus()
Returns
false . |
boolean |
isOptional()
Returns
false . |
boolean |
isRunOnce() |
void |
setAskVar(IVariable<?> askVar) |
void |
setAttachedJoinFilters(List<FilterNode> filters) |
void |
setFilterExistsMode(FilterExistsModeEnum newVal) |
void |
setRunOnce(boolean runOnce)
Indicate whether this subquery should run once rather than as-bound.
|
String |
toString(int indent)
The contract of this method at this level is under-specified.
|
getContext, getDesiredBound, getParent, getParentGraphPatternGroup, getParentJoinGroup, getRequiredBound, setParent
getBindingsClause, getConstruct, getGraphPattern, getGroupBy, getHaving, getIncludeInferred, getOrderBy, getProjectedVars, getProjection, getQueryType, getSelectExprVars, getSlice, getTimeout, getWhereClause, hasSlice, hasWhereClause, setBindingsClause, setConstruct, setGraphPattern, setGroupBy, setHaving, setIncludeInferred, setOrderBy, setProjection, setQueryType, setSlice, setTimeout, setWhereClause
getQueryHints, toString
addExplainHint, getExplainHints, getQueryHint, getQueryHint, getQueryHintAsBoolean, getQueryHintAsBoolean, getQueryHintAsInteger, replaceAllWith, setQueryHint, setQueryHints
addArg, addArg, addArgIfAbsent, annotations, annotationsEqual, argIterator, args, arity, clearProperty, copyAll, get, getProperty, indexOf, removeArg, replaceWith, setArg, setArgs, setId, setProperty, setUnboundProperty, toArray, toArray
annotationsEqual, annotationsToString, annotationsToString, annotationValueToString, checkArgs, clone, equals, getEvaluationContext, getId, getProperty, getRequiredProperty, hashCode, indent, isController, mutation, shortenName, toShortString
finalize, getClass, notify, notifyAll, wait, wait, wait
annotations, argIterator, args, arity, clone, get, getEvaluationContext, getId, getProperty, getRequiredProperty, isController, setProperty, toArray, toArray, toShortString, toString
getProperty
public SubqueryRoot(SubqueryRoot queryBase)
public SubqueryRoot(QueryType queryType)
QueryType.ASK
.queryType
- public void setRunOnce(boolean runOnce)
runOnce
- SubqueryRoot.Annotations.RUN_ONCE
public boolean isRunOnce()
public void setAskVar(IVariable<?> askVar)
SubqueryRoot.Annotations.ASK_VAR
public IVariable<?> getAskVar()
SubqueryRoot.Annotations.ASK_VAR
public void setFilterExistsMode(FilterExistsModeEnum newVal)
public FilterExistsModeEnum getFilterExistsMode()
public final boolean isOptional()
false
.isOptional
in interface IJoinNode
public final List<FilterNode> getAttachedJoinFilters()
IJoinNode
IJoinNode
. Such filters
will be run with the JOIN for this statement pattern. As such, they MUST
NOT rely on materialization of variables which would not have been bound
before that JOIN.getAttachedJoinFilters
in interface IJoinNode
null
(it may
return an empty list)(.ASTSimpleOptionalOptimizer
,
ASTAttachJoinFiltersOptimizer
public final void setAttachedJoinFilters(List<FilterNode> filters)
setAttachedJoinFilters
in interface IJoinNode
public String toString(int indent)
CoreBaseBOp.toString()
Or:
- return a pretty-print representation of the object with indent
Note that the former contract may or may not include recursive descent through a tree-like
object, whereas the latter almost certainly does.
Overridden to also report the SubqueryRoot.Annotations.RUN_ONCE
annotation.
Copyright © 2006–2019 SYSTAP, LLC DBA Blazegraph. All rights reserved.