| Package | Description |
|---|---|
| com.facebook.presto.spi | |
| com.facebook.presto.spi.plan | |
| com.facebook.presto.spi.relation |
| Modifier and Type | Method and Description |
|---|---|
Optional<RowExpression> |
ConnectorTableLayout.getRemainingPredicate()
Returns the remaining predicates after the tuple domain push down in getTableLayout().
|
| Constructor and Description |
|---|
ConnectorTableLayout(ConnectorTableLayoutHandle handle,
Optional<List<ColumnHandle>> columns,
TupleDomain<ColumnHandle> predicate,
Optional<ConnectorTablePartitioning> tablePartitioning,
Optional<Set<ColumnHandle>> streamPartitioningColumns,
Optional<DiscretePredicates> discretePredicates,
List<LocalProperty<ColumnHandle>> localProperties,
Optional<RowExpression> remainingPredicate) |
| Modifier and Type | Method and Description |
|---|---|
RowExpression |
Assignments.get(VariableReferenceExpression variable) |
RowExpression |
FilterNode.getPredicate()
Get the predicate (a RowExpression of boolean type) of the FilterNode.
|
| Modifier and Type | Method and Description |
|---|---|
Set<Map.Entry<VariableReferenceExpression,RowExpression>> |
Assignments.entrySet() |
List<RowExpression> |
AggregationNode.Aggregation.getArguments() |
Collection<RowExpression> |
Assignments.getExpressions() |
Optional<RowExpression> |
AggregationNode.Aggregation.getFilter() |
Map<VariableReferenceExpression,RowExpression> |
Assignments.getMap() |
List<List<RowExpression>> |
ValuesNode.getRows() |
| Modifier and Type | Method and Description |
|---|---|
TableStatistics |
FilterStatsCalculatorService.filterStats(TableStatistics tableStatistics,
RowExpression predicate,
ConnectorSession session,
Map<ColumnHandle,String> columnNames,
Map<String,Type> columnTypes) |
static Assignments |
Assignments.of(VariableReferenceExpression variable,
RowExpression expression) |
static Assignments |
Assignments.of(VariableReferenceExpression variable1,
RowExpression expression1,
VariableReferenceExpression variable2,
RowExpression expression2) |
Assignments.Builder |
Assignments.Builder.put(VariableReferenceExpression variable,
RowExpression expression) |
| Modifier and Type | Method and Description |
|---|---|
static Assignments.Builder |
Assignments.builder(Map<VariableReferenceExpression,RowExpression> assignments) |
static Assignments |
Assignments.copyOf(Map<VariableReferenceExpression,RowExpression> assignments) |
void |
Assignments.forEach(BiConsumer<VariableReferenceExpression,RowExpression> consumer) |
Assignments.Builder |
Assignments.Builder.put(Map.Entry<VariableReferenceExpression,RowExpression> assignment) |
Assignments.Builder |
Assignments.Builder.putAll(Map<VariableReferenceExpression,RowExpression> assignments) |
| Constructor and Description |
|---|
FilterNode(Optional<SourceLocation> sourceLocation,
PlanNodeId id,
Optional<PlanNode> statsEquivalentPlanNode,
PlanNode source,
RowExpression predicate) |
FilterNode(Optional<SourceLocation> sourceLocation,
PlanNodeId id,
PlanNode source,
RowExpression predicate) |
| Constructor and Description |
|---|
Aggregation(CallExpression call,
Optional<RowExpression> filter,
Optional<OrderingScheme> orderingScheme,
boolean isDistinct,
Optional<VariableReferenceExpression> mask) |
Assignments(Map<VariableReferenceExpression,RowExpression> assignments) |
ValuesNode(Optional<SourceLocation> sourceLocation,
PlanNodeId id,
List<VariableReferenceExpression> outputVariables,
List<List<RowExpression>> rows,
Optional<String> valuesNodeLabel) |
ValuesNode(Optional<SourceLocation> sourceLocation,
PlanNodeId id,
Optional<PlanNode> statsEquivalentPlanNode,
List<VariableReferenceExpression> outputVariables,
List<List<RowExpression>> rows,
Optional<String> valuesNodeLabel) |
| Modifier and Type | Class and Description |
|---|---|
class |
CallExpression |
class |
ConstantExpression |
class |
InputReferenceExpression |
class |
LambdaDefinitionExpression |
class |
SpecialFormExpression |
class |
VariableReferenceExpression |
| Modifier and Type | Method and Description |
|---|---|
<T extends RowExpression> |
DomainTranslator.toPredicate(TupleDomain<T> tupleDomain) |
| Modifier and Type | Method and Description |
|---|---|
RowExpression |
VariableReferenceExpression.canonicalize() |
RowExpression |
SpecialFormExpression.canonicalize() |
abstract RowExpression |
RowExpression.canonicalize() |
RowExpression |
LambdaDefinitionExpression.canonicalize() |
RowExpression |
InputReferenceExpression.canonicalize() |
RowExpression |
ConstantExpression.canonicalize() |
RowExpression |
CallExpression.canonicalize() |
RowExpression |
LambdaDefinitionExpression.getBody() |
RowExpression |
DomainTranslator.ExtractionResult.getRemainingExpression() |
RowExpression |
ExpressionOptimizer.optimize(RowExpression rowExpression,
ExpressionOptimizer.Level level,
ConnectorSession session)
Optimize a RowExpression to
|
<T extends RowExpression> |
DomainTranslator.toPredicate(TupleDomain<T> tupleDomain) |
| Modifier and Type | Method and Description |
|---|---|
List<RowExpression> |
SpecialFormExpression.getArguments() |
List<RowExpression> |
CallExpression.getArguments() |
| Modifier and Type | Method and Description |
|---|---|
Supplier<Predicate> |
PredicateCompiler.compilePredicate(SqlFunctionProperties sqlFunctionProperties,
Map<SqlFunctionId,SqlInvokedFunction> sessionFunctions,
RowExpression predicate)
Predicate expression may not contain any variable references, only input references.
|
Optional<T> |
DomainTranslator.ColumnExtractor.extract(RowExpression expression,
Domain domain)
Given an expression and values domain, determine whether the expression qualifies as a
"column" and return its desired representation.
|
String |
RowExpressionService.formatRowExpression(ConnectorSession session,
RowExpression expression) |
<T> DomainTranslator.ExtractionResult<T> |
DomainTranslator.fromPredicate(ConnectorSession session,
RowExpression predicate,
DomainTranslator.ColumnExtractor<T> columnExtractor)
Convert a RowExpression predicate into an ExtractionResult consisting of:
1) A successfully extracted TupleDomain
2) An RowExpression fragment which represents the part of the original RowExpression that will need to be re-evaluated
after filtering with the TupleDomain.
|
boolean |
DeterminismEvaluator.isDeterministic(RowExpression expression) |
RowExpression |
ExpressionOptimizer.optimize(RowExpression rowExpression,
ExpressionOptimizer.Level level,
ConnectorSession session)
Optimize a RowExpression to
|
Object |
ExpressionOptimizer.optimize(RowExpression expression,
ExpressionOptimizer.Level level,
ConnectorSession session,
Function<VariableReferenceExpression,Object> variableResolver) |
| Constructor and Description |
|---|
ExtractionResult(TupleDomain<T> tupleDomain,
RowExpression remainingExpression) |
LambdaDefinitionExpression(Optional<SourceLocation> sourceLocation,
List<Type> argumentTypes,
List<String> arguments,
RowExpression body) |
SpecialFormExpression(Optional<SourceLocation> sourceLocation,
SpecialFormExpression.Form form,
Type returnType,
RowExpression... arguments) |
SpecialFormExpression(SpecialFormExpression.Form form,
Type returnType,
RowExpression... arguments) |
| Constructor and Description |
|---|
CallExpression(Optional<SourceLocation> sourceLocation,
String displayName,
FunctionHandle functionHandle,
Type returnType,
List<RowExpression> arguments) |
CallExpression(String displayName,
FunctionHandle functionHandle,
Type returnType,
List<RowExpression> arguments) |
SpecialFormExpression(Optional<SourceLocation> sourceLocation,
SpecialFormExpression.Form form,
Type returnType,
List<RowExpression> arguments) |
SpecialFormExpression(SpecialFormExpression.Form form,
Type returnType,
List<RowExpression> arguments) |
Copyright © 2012–2022. All rights reserved.