Package io.prestosql.sql.planner.plan
Class TableScanNode
- java.lang.Object
-
- io.prestosql.sql.planner.plan.PlanNode
-
- io.prestosql.sql.planner.plan.TableScanNode
-
@Immutable public class TableScanNode extends PlanNode
-
-
Constructor Summary
Constructors Constructor Description TableScanNode(PlanNodeId id, TableHandle table, List<Symbol> outputs, Map<Symbol,ColumnHandle> assignments)
TableScanNode(PlanNodeId id, TableHandle table, List<Symbol> outputs, Map<Symbol,ColumnHandle> assignments, TupleDomain<ColumnHandle> enforcedConstraint)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description <R,C>
Raccept(PlanVisitor<R,C> visitor, C context)
Map<Symbol,ColumnHandle>
getAssignments()
TupleDomain<ColumnHandle>
getEnforcedConstraint()
A TupleDomain that represents a predicate that has been successfully pushed into this TableScan node.List<Symbol>
getOutputSymbols()
List<PlanNode>
getSources()
TableHandle
getTable()
static TableScanNode
newInstance(PlanNodeId id, TableHandle table, List<Symbol> outputs, Map<Symbol,ColumnHandle> assignments)
PlanNode
replaceChildren(List<PlanNode> newChildren)
String
toString()
-
-
-
Constructor Detail
-
TableScanNode
public TableScanNode(PlanNodeId id, TableHandle table, List<Symbol> outputs, Map<Symbol,ColumnHandle> assignments)
-
TableScanNode
public TableScanNode(PlanNodeId id, TableHandle table, List<Symbol> outputs, Map<Symbol,ColumnHandle> assignments, TupleDomain<ColumnHandle> enforcedConstraint)
-
-
Method Detail
-
newInstance
public static TableScanNode newInstance(PlanNodeId id, TableHandle table, List<Symbol> outputs, Map<Symbol,ColumnHandle> assignments)
-
getTable
public TableHandle getTable()
-
getOutputSymbols
public List<Symbol> getOutputSymbols()
- Specified by:
getOutputSymbols
in classPlanNode
-
getAssignments
public Map<Symbol,ColumnHandle> getAssignments()
-
getEnforcedConstraint
public TupleDomain<ColumnHandle> getEnforcedConstraint()
A TupleDomain that represents a predicate that has been successfully pushed into this TableScan node. In other words, predicates that were removed from filters above the TableScan node because the TableScan node can guarantee it.This field is used to make sure that predicates which were previously pushed down do not get lost in subsequent refinements of the table layout.
-
getSources
public List<PlanNode> getSources()
- Specified by:
getSources
in classPlanNode
-
accept
public <R,C> R accept(PlanVisitor<R,C> visitor, C context)
-
replaceChildren
public PlanNode replaceChildren(List<PlanNode> newChildren)
- Specified by:
replaceChildren
in classPlanNode
-
-