public class AST2BOpUtility extends AST2BOpRTO
PipelineOp
s.AST2BOpRTO.Annotations
Constructor and Description |
---|
AST2BOpUtility() |
Modifier and Type | Method and Description |
---|---|
protected static Predicate |
toPredicate(StatementPatternNode sp,
AST2BOpContext ctx)
Method produces a
Predicate which captures the semantics of the
StatementPatternNode . |
static IValueExpression<? extends IV> |
toVE(BOpContextBase context,
GlobalAnnotations globals,
IValueExpressionNode node)
Convert an
IValueExpressionNode (recursively) to an
IValueExpression . |
compileJoinGraph, convertRTOJoinGraph, cutoffJoin
join
addChunkedMaterializationStep, addMaterializationSteps1, addMaterializationSteps2, addMaterializationSteps3, addNonConditionalMaterializationSteps, getJoinConstraints, getJoinConstraints, getJoinConstraints2
applyQueryHints, applyQueryHints, leftOrEmpty
protected static final Predicate toPredicate(StatementPatternNode sp, AST2BOpContext ctx)
Predicate
which captures the semantics of the
StatementPatternNode
.
Note: This method is responsible for layering in the default graph and named graph semantics on the access path associated with a statement pattern.
Note: This method is NOT responsible for selecting the statement index to use for the access path. That is decided when we determine the join ordering.
sp
- The statement pattern.ctx
- Predicate
which models the access path constraints
for that statement pattern.(Replace
DataSetJoin with an "inline" access path.)
public static final IValueExpression<? extends IV> toVE(BOpContextBase context, GlobalAnnotations globals, IValueExpressionNode node)
IValueExpressionNode
(recursively) to an
IValueExpression
. If the IValueExpression
can be reduced
to an IConstant
, then that IConstant
will be be returned
instead. Either way, the IValueExpression
is set on the
IValueExpressionNode
as a side effect.context
- The BOpContextBase
is required in order to resolve the
ILexiconConfiguration
and LexiconRelation
.
These are required for the evaluation of some
IValueExpression
s.globals
- The global annotations, including the lexicon namespace.node
- The expression to convert.IllegalArgumentException
- if any argument is null
.ASTSetValueExpressionsOptimizer
,
toVE() was refactored to pass in the
{@link BOpContextBase} to allow correct resolution of the
{@link LexiconRelation} and {@link ILexiconConfiguration} in order
to properly evaluate {@link IValueExpression}s during query
optimization.
Copyright © 2006–2019 SYSTAP, LLC DBA Blazegraph. All rights reserved.