public interface Compiler
RelNode to a program
that can be run by an Interpreter.| Modifier and Type | Method and Description |
|---|---|
RelDataType |
combinedRowType(List<RelNode> inputs) |
Scalar |
compile(List<RexNode> nodes,
@Nullable RelDataType inputRowType)
Compiles an expression to an executable form.
|
Context |
createContext() |
void |
enumerable(RelNode rel,
org.apache.calcite.linq4j.Enumerable<Row> rowEnumerable)
Tells the interpreter that a given relational expression wishes to
give its output as an enumerable.
|
DataContext |
getDataContext() |
Sink |
sink(RelNode rel)
Creates a Sink for a relational expression to write into.
|
Source |
source(RelNode rel,
int ordinal) |
Scalar compile(List<RexNode> nodes, @Nullable RelDataType inputRowType)
RelDataType combinedRowType(List<RelNode> inputs)
Sink sink(RelNode rel)
This method is generally called from the constructor of a Node.
But a constructor could instead call
enumerable(RelNode, Enumerable).
rel - Relational expressionvoid enumerable(RelNode rel, org.apache.calcite.linq4j.Enumerable<Row> rowEnumerable)
This is as opposed to the norm, where a relational expression calls
sink(RelNode), then its Node.run() method writes into that
sink.
rel - Relational expressionrowEnumerable - Contents of relational expressionDataContext getDataContext()
Context createContext()
Copyright © 2012-2022 Apache Software Foundation. All Rights Reserved.