public abstract class RelNode extends Object
All trees are immutable after construction. Traversal must use iterative
visitor with explicit Deque<RelNode> stack (no recursion).
| Modifier | Constructor and Description |
|---|---|
protected |
RelNode(RelNodeKind kind,
SourceAnchor anchor) |
| Modifier and Type | Method and Description |
|---|---|
abstract <R> R |
accept(RelNodeVisitor<R> visitor)
Accept method for the visitor pattern.
|
SourceAnchor |
getAnchor() |
abstract List<RelNode> |
getInputs()
Returns the child RelNodes of this node (for iterative traversal).
|
RelNodeKind |
getKind() |
String |
toString() |
protected RelNode(RelNodeKind kind, SourceAnchor anchor)
public RelNodeKind getKind()
public SourceAnchor getAnchor()
public abstract List<RelNode> getInputs()
public abstract <R> R accept(RelNodeVisitor<R> visitor)