public class FlinkRelUtil extends Object
RelNode.| Constructor and Description |
|---|
FlinkRelUtil() |
| Modifier and Type | Method and Description |
|---|---|
static int[] |
initializeArray(int length,
int initVal)
Returns an int array with given length and initial value.
|
static boolean |
isMergeable(org.apache.calcite.rel.core.Calc topCalc,
org.apache.calcite.rel.core.Calc bottomCalc)
Return two neighbouring
Calc can merge into one Calc or not. |
static boolean |
isMergeable(org.apache.calcite.rel.core.Filter topFilter,
org.apache.calcite.rel.core.Calc bottomCalc)
Return two neighbouring
Filter and Calc can merge into one Calc or
not. |
static boolean |
isMergeable(org.apache.calcite.rel.core.Project topProject,
org.apache.calcite.rel.core.Calc bottomCalc)
Return two neighbouring
Project and Calc can merge into one Calc or
not. |
static boolean |
isMergeable(org.apache.calcite.rel.core.Project topProject,
org.apache.calcite.rel.core.Project bottomProject)
Return two neighbouring
Project can merge into one Project or not. |
static org.apache.calcite.rel.core.Calc |
merge(org.apache.calcite.rel.core.Calc topCalc,
org.apache.calcite.rel.core.Calc bottomCalc)
Merges the programs of two
Calc instances and returns a new Calc instance
with the merged program. |
public static boolean isMergeable(org.apache.calcite.rel.core.Filter topFilter,
org.apache.calcite.rel.core.Calc bottomCalc)
Filter and Calc can merge into one Calc or
not. If the two nodes can merge into one, each non-deterministic RexNode of bottom
Calc should appear at most once in the implicit project list and condition of top
Filter.public static boolean isMergeable(org.apache.calcite.rel.core.Project topProject,
org.apache.calcite.rel.core.Calc bottomCalc)
Project and Calc can merge into one Calc or
not. If the two nodes can merge into one, each non-deterministic RexNode of bottom
Calc should appear at most once in the project list of top Project.public static boolean isMergeable(org.apache.calcite.rel.core.Project topProject,
org.apache.calcite.rel.core.Project bottomProject)
Project can merge into one Project or not. If the two
Project can merge into one, each non-deterministic RexNode of bottom Project should appear at most once in the project list of top Project.public static boolean isMergeable(org.apache.calcite.rel.core.Calc topCalc,
org.apache.calcite.rel.core.Calc bottomCalc)
Calc can merge into one Calc or not. If the two
Calc can merge into one, each non-deterministic RexNode of bottom Calc should appear at most once in the project list of top Calc.public static org.apache.calcite.rel.core.Calc merge(org.apache.calcite.rel.core.Calc topCalc,
org.apache.calcite.rel.core.Calc bottomCalc)
Calc instances and returns a new Calc instance
with the merged program.public static int[] initializeArray(int length,
int initVal)
length - array lengthinitVal - initial valueCopyright © 2014–2025 The Apache Software Foundation. All rights reserved.