class CteRegistry extends AnyRef
The CteRegistry is responsible for managing the stack of CteScopes and resolving visible CTERelationDef names.
- Alphabetic
- By Inheritance
- CteRegistry
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new CteRegistry()
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @IntrinsicCandidate() @native()
- def currentScope: CteScope
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- def popScope(): Unit
Pop current scope from the stack.
- def pushScope(isRoot: Boolean = false, isOpaque: Boolean = false): Unit
Push new scope to the stack.
Push new scope to the stack. This is used by the Resolver to create a new scope for each WITH clause.
- def pushScopeForMultiChildOperator[R](unresolvedOperator: LogicalPlan, unresolvedChild: LogicalPlan): Unit
This is a pushScope variant specifically designed to be called above multi-child operator children resolution (e.g.
This is a pushScope variant specifically designed to be called above multi-child operator children resolution (e.g. for children of a Join or Union).
The
isRootflag has to be propagated from the parent scope if all of the following conditions are met:- The current scope is a root scope
- The multi-child
unresolvedOperatorIS NOT suitable to place a WithCTE - Some operator in
unresolvedChildsubtree IS suitable to place a WithCTE.
- def resolveCteName(name: String): Option[CTERelationDef]
Resolve
nameto a visible CTERelationDef.Resolve
nameto a visible CTERelationDef. The upper definitions are also visible, and the lowest of them takes precedence. Opaque scopes terminate the lookup (e.g. View boundary). - final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
(Since version 9)