Class PruneTableScanColumns
- java.lang.Object
-
- io.trino.sql.planner.iterative.rule.ProjectOffPushDownRule<TableScanNode>
-
- io.trino.sql.planner.iterative.rule.PruneTableScanColumns
-
- All Implemented Interfaces:
Rule<ProjectNode>
public class PruneTableScanColumns extends ProjectOffPushDownRule<TableScanNode>
This is a special case of PushProjectionIntoTableScan that performs only column pruning.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface io.trino.sql.planner.iterative.Rule
Rule.Context, Rule.Result
-
-
Constructor Summary
Constructors Constructor Description PruneTableScanColumns(Metadata metadata)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static Optional<PlanNode>pruneColumns(Metadata metadata, TypeProvider types, Session session, TableScanNode node, Set<Symbol> referencedOutputs)protected Optional<PlanNode>pushDownProjectOff(Rule.Context context, TableScanNode node, Set<Symbol> referencedOutputs)-
Methods inherited from class io.trino.sql.planner.iterative.rule.ProjectOffPushDownRule
apply, getPattern
-
-
-
-
Constructor Detail
-
PruneTableScanColumns
public PruneTableScanColumns(Metadata metadata)
-
-
Method Detail
-
pushDownProjectOff
protected Optional<PlanNode> pushDownProjectOff(Rule.Context context, TableScanNode node, Set<Symbol> referencedOutputs)
- Specified by:
pushDownProjectOffin classProjectOffPushDownRule<TableScanNode>
-
pruneColumns
public static Optional<PlanNode> pruneColumns(Metadata metadata, TypeProvider types, Session session, TableScanNode node, Set<Symbol> referencedOutputs)
-
-