public class NamedSubqueryInclude extends GroupMemberNodeBase<NamedSubqueryInclude> implements IJoinNode, INamedSolutionSet
IGroupNode
and indicates
that a named solution set should be joined with the solutions in the group.NamedSubqueryRoot
,
Serialized FormModifier and Type | Class and Description |
---|---|
static interface |
NamedSubqueryInclude.Annotations |
DEFAULT_INITIAL_CAPACITY
Constructor and Description |
---|
NamedSubqueryInclude(BOp[] args,
Map<String,Object> anns)
Required shallow copy constructor.
|
NamedSubqueryInclude(NamedSubqueryInclude op)
Constructor required for
com.bigdata.bop.BOpUtility#deepCopy(FilterNode) . |
NamedSubqueryInclude(String name) |
Modifier and Type | Method and Description |
---|---|
List<FilterNode> |
getAttachedJoinFilters()
Return the FILTER(s) associated with this
IJoinNode . |
Set<IVariable<?>> |
getDesiredBound(StaticAnalysis sa)
Get variables that are not required to be bound, but desired in the
sense that we want them to be bound when evaluating the construct.
|
VarNode[] |
getJoinVars()
The join variables to be used when the named result set is included into
the query.
|
Set<IVariable<?>> |
getJoinVarSet()
Return the ordered set of join variables.
|
String |
getName()
Return the name of the solution set.
|
Set<IVariable<?>> |
getRequiredBound(StaticAnalysis sa)
Return the variables used in the node that *must* be bound prior to
evaluating the node.
|
boolean |
isMinus()
Returns
false . |
boolean |
isOptional()
Returns
false . |
void |
setAttachedJoinFilters(List<FilterNode> filters) |
void |
setJoinVars(VarNode[] joinVars)
Set the join variables.
|
void |
setName(String name)
Set the name of the solution set.
|
String |
toString(int indent)
The contract of this method at this level is under-specified.
|
getContext, getParent, getParentGraphPatternGroup, getParentJoinGroup, setParent
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 NamedSubqueryInclude(NamedSubqueryInclude op)
com.bigdata.bop.BOpUtility#deepCopy(FilterNode)
.public NamedSubqueryInclude(BOp[] args, Map<String,Object> anns)
public NamedSubqueryInclude(String name)
name
- The name of the subquery result set.public String getName()
INamedSolutionSet
getName
in interface INamedSolutionSet
public void setName(String name)
INamedSolutionSet
setName
in interface INamedSolutionSet
name
- The name of the solution set.public VarNode[] getJoinVars()
public void setJoinVars(VarNode[] joinVars)
joinVars
- The join variables.public Set<IVariable<?>> getJoinVarSet()
null
.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
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.toString
in interface BOp
toString
in interface IQueryNode
toString
in class CoreBaseBOp
public Set<IVariable<?>> getRequiredBound(StaticAnalysis sa)
IVariableBindingRequirements
IVariableBindingRequirements#getRequiredBound()
interface cannot be satisified, the query may still be valid and return
results (for the SPARQL 1.1 service example mentioned above, it may not,
for the FILTER it may).
The set of these variables must be disjoint from
IVariableBindingRequirements#getRequiredUnound()
.getRequiredBound
in interface IVariableBindingRequirements
public Set<IVariable<?>> getDesiredBound(StaticAnalysis sa)
IVariableBindingRequirements
IVariableBindingRequirements.getRequiredBound(StaticAnalysis)
.getDesiredBound
in interface IVariableBindingRequirements
Copyright © 2006–2019 SYSTAP, LLC DBA Blazegraph. All rights reserved.