Package org.apache.calcite.materialize
Class LatticeNode
- java.lang.Object
-
- org.apache.calcite.materialize.LatticeNode
-
- Direct Known Subclasses:
LatticeChildNode
,LatticeRootNode
public abstract class LatticeNode extends java.lang.Object
Source relation of a lattice.Relations form a tree; all relations except the root relation (the fact table) have precisely one parent and an equi-join condition on one or more pairs of columns linking to it.
-
-
Field Summary
Fields Modifier and Type Field Description java.lang.String
alias
private com.google.common.collect.ImmutableList<LatticeChildNode>
children
java.lang.String
digest
(package private) int
endCol
(package private) int
startCol
LatticeTable
table
-
Constructor Summary
Constructors Constructor Description LatticeNode(LatticeSpace space, LatticeNode parent, MutableNode mutableNode)
Creates a LatticeNode.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description (package private) void
createPathsRecurse(LatticeSpace space, java.util.List<Step> steps, java.util.List<Path> paths)
(package private) void
flattenTo(com.google.common.collect.ImmutableList.Builder<LatticeNode> builder)
RelOptTable
relOptTable()
java.lang.String
toString()
(package private) abstract void
use(java.util.List<LatticeNode> usedNodes)
-
-
-
Field Detail
-
table
public final LatticeTable table
-
startCol
final int startCol
-
endCol
final int endCol
-
alias
public final java.lang.String alias
-
children
private final com.google.common.collect.ImmutableList<LatticeChildNode> children
-
digest
public final java.lang.String digest
-
-
Constructor Detail
-
LatticeNode
LatticeNode(LatticeSpace space, LatticeNode parent, MutableNode mutableNode)
Creates a LatticeNode.The
parent
andmutableNode
arguments are used only during construction.
-
-
Method Detail
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
relOptTable
public RelOptTable relOptTable()
-
use
abstract void use(java.util.List<LatticeNode> usedNodes)
-
flattenTo
void flattenTo(com.google.common.collect.ImmutableList.Builder<LatticeNode> builder)
-
createPathsRecurse
void createPathsRecurse(LatticeSpace space, java.util.List<Step> steps, java.util.List<Path> paths)
-
-