trait RuleFolderRunnerBase[T] extends Expression with NonSQLExpression with SplitCompilation with HasOutput
Children will be rewritten by the plan, it's then re-incorporated into ruleSuite expressionOffsets.length is the length of the trigger expressions in realChildren, realChildren(expressionOffsets.length + expressionOffsets(x)) will be the correct OutputExpression
- Alphabetic
- By Inheritance
- RuleFolderRunnerBase
- HasOutput
- SplitCompilation
- Runner
- NonSQLExpression
- Expression
- TreeNode
- WithOrigin
- TreePatternBits
- Product
- Equals
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract val alreadyZero: Boolean
- Definition Classes
- Runner
- abstract val audited: Boolean
- Definition Classes
- HasOutput
- abstract def canEqual(that: Any): Boolean
- Definition Classes
- Equals
- abstract def children: Seq[Expression]
- Definition Classes
- TreeNode
- implicit abstract val classTagT: ClassTag[T]
- abstract val compileEvals: Boolean
- abstract val dataRef: AtomicReference[DataType]
- abstract val debugMode: Boolean
- abstract def doGenCode(ctx: CodegenContext, ev: ExprCode): ExprCode
- Attributes
- protected
- Definition Classes
- Expression
- abstract val expressionOffsets: Array[Int]
- abstract val extraConfig: Map[String, String]
- Definition Classes
- RuleFolderRunnerBase → Runner
- abstract val forceTriggerEval: Boolean
- abstract def productArity: Int
- Definition Classes
- Product
- abstract def productElement(n: Int): Any
- Definition Classes
- Product
- abstract val resultDataType: () => DataType
- abstract val ruleSuite: RuleSuite
- Definition Classes
- RuleFolderRunnerBase → Runner
- abstract val tClass: Class[T]
- abstract val triggerCount: Int
- Definition Classes
- RuleFolderRunnerBase → HasOutput
- abstract val variableFuncGroup: Int
- Definition Classes
- RuleFolderRunnerBase → Runner
- abstract val variablesPerFunc: Int
- Definition Classes
- RuleFolderRunnerBase → Runner
- abstract def withNewChildrenInternal(newChildren: IndexedSeq[Expression]): Expression
- Attributes
- protected
- Definition Classes
- TreeNode
- abstract def withZeroCode(): Runner
After calling now wrapping of zero code will be performed when the com.sparkutils.quality.impl.extension.ZeroCodeGenWrap optimisation is enabled
After calling now wrapping of zero code will be performed when the com.sparkutils.quality.impl.extension.ZeroCodeGenWrap optimisation is enabled
- Definition Classes
- Runner
Concrete 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
- def apply(number: Int): TreeNode[_]
- Definition Classes
- TreeNode
- def applyResult(level1: Int, level2: Int, result: InternalRow, ruleResult: Int): Unit
rolls the overalls up in place - must be genericarraydata / arraybasedmap data with a copy from createDefaultRuleResult used by codegen
rolls the overalls up in place - must be genericarraydata / arraybasedmap data with a copy from createDefaultRuleResult used by codegen
- Definition Classes
- Runner
- def argString(maxFields: Int): String
- Definition Classes
- TreeNode
- def asCode: String
- Definition Classes
- TreeNode
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def canAudit: Boolean
- Definition Classes
- RuleFolderRunnerBase → HasOutput
- lazy val canonicalized: Expression
- Definition Classes
- Expression
- def checkInputDataTypes(): TypeCheckResult
- Definition Classes
- Expression
- def childrenResolved: Boolean
- Definition Classes
- Expression
- def clone(): Expression
- Definition Classes
- TreeNode → AnyRef
- def collect[B](pf: PartialFunction[Expression, B]): Seq[B]
- Definition Classes
- TreeNode
- def collectFirst[B](pf: PartialFunction[Expression, B]): Option[B]
- Definition Classes
- TreeNode
- def collectLeaves(): Seq[Expression]
- Definition Classes
- TreeNode
- lazy val compiledRealChildren: Array[ExpressionWrapper]
- final def containsAllPatterns(patterns: TreePattern*): Boolean
- Definition Classes
- TreePatternBits
- final def containsAnyPattern(patterns: TreePattern*): Boolean
- Definition Classes
- TreePatternBits
- def containsChild: Set[TreeNode[_]]
- Definition Classes
- TreeNode
- final def containsPattern(t: TreePattern): Boolean
- Definition Classes
- TreePatternBits
- Annotations
- @inline()
- def contextIndependentFoldable: Boolean
- Definition Classes
- Expression
- def copyTagsFrom(other: Expression): Unit
- Definition Classes
- TreeNode
- def createDefaultRuleResult(): InternalRow
Used by codegen
Used by codegen
- Definition Classes
- Runner
- def dataType: DataType
- Definition Classes
- RuleFolderRunnerBase → Expression
- val defaultOverallProcessor: (Int, Int) => Int
- val defaultOverallResult: Int
- val defaultRuleResult: Int
- lazy val deterministic: Boolean
- Definition Classes
- Expression
- def doGenCodeI(outerCtx: CodegenContext, ev: ExprCode): ExprCode
- Attributes
- protected
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def eval(input: InternalRow): Any
- Definition Classes
- RuleFolderRunnerBase → Expression
- def exists(f: (Expression) => Boolean): Boolean
- Definition Classes
- TreeNode
- def fastEquals(other: TreeNode[_]): Boolean
- Definition Classes
- TreeNode
- def find(f: (Expression) => Boolean): Option[Expression]
- Definition Classes
- TreeNode
- def flatArguments: Iterator[Any]
- Attributes
- protected
- Definition Classes
- Expression
- def flatMap[A](f: (Expression) => IterableOnce[A]): Seq[A]
- Definition Classes
- TreeNode
- def foldable: Boolean
- Definition Classes
- Expression
- def foreach(f: (Expression) => Unit): Unit
- Definition Classes
- TreeNode
- def foreachUp(f: (Expression) => Unit): Unit
- Definition Classes
- TreeNode
- def freshCopyIfContainsStatefulExpression(): Expression
- Definition Classes
- Expression
- def genCode(ctx: CodegenContext): ExprCode
- Definition Classes
- Expression
- def generateTreeString(depth: Int, lastChildren: ArrayList[Boolean], append: (String) => Unit, verbose: Boolean, prefix: String, addSuffix: Boolean, maxFields: Int, printNodeId: Boolean, printOutputColumns: Boolean, indent: Int): Unit
- Definition Classes
- TreeNode
- val generatorClassSource: Seq[CodeAndComment]
- Definition Classes
- SplitCompilation
- def generatorClazz(i: Int): GeneratedClass
- Definition Classes
- SplitCompilation
- val generatorClazz_: Seq[GeneratedClass]
- Definition Classes
- SplitCompilation
- Annotations
- @transient()
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- def getDefaultTreePatternBits: BitSet
- Attributes
- protected
- Definition Classes
- TreeNode
- def getTagValue[T](tag: TreeNodeTag[T]): Option[T]
- Definition Classes
- TreeNode
- def groupedSqlCall(ruleSuiteCall: String): String
For collector and engine it's typically just their sql function name, for folder it must also include the starting expression.sql.
For collector and engine it's typically just their sql function name, for folder it must also include the starting expression.sql. This will be called with resolved expressions but not with structs so the folder starter expression is expected to be executable
- ruleSuiteCall
provided by the grouping code but resolves to a rulesuite
- Definition Classes
- RuleFolderRunnerBase → HasOutput
- def hashCode(): Int
- Definition Classes
- TreeNode → AnyRef → Any
- def height: Int
- Definition Classes
- TreeNode
- def inPlaceArrayOffsets(ctx: CodegenContext, resultRow: String, ruleRunnerExpressionIdx: Int): InPlaceOffsets
- Definition Classes
- Runner
- def innerChildren: Seq[TreeNode[_]]
- Definition Classes
- TreeNode
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def isRuleIneffective(ruleId: RuleId): Boolean
- Attributes
- protected
- Definition Classes
- TreeNode
- def isTagsEmpty: Boolean
- Definition Classes
- TreeNode
- def jsonFields: List[JField]
- Attributes
- protected
- Definition Classes
- TreeNode
- final def legacyWithNewChildren(newChildren: Seq[Expression]): Expression
- Attributes
- protected
- Definition Classes
- TreeNode
- def makeCopy(newArgs: Array[AnyRef]): Expression
- Definition Classes
- TreeNode
- def map[A](f: (Expression) => A): Seq[A]
- Definition Classes
- TreeNode
- def mapChildren(f: (Expression) => Expression): Expression
- Definition Classes
- TreeNode
- def mapProductIterator[B](f: (Any) => B)(implicit arg0: ClassTag[B]): Array[B]
- Attributes
- protected
- Definition Classes
- TreeNode
- def markRuleAsIneffective(ruleId: RuleId): Unit
- Attributes
- protected
- Definition Classes
- TreeNode
- def mergeTagsFrom(other: Expression): Unit
- Definition Classes
- TreeNode
- def multiTransformDown(rule: PartialFunction[Expression, Seq[Expression]]): LazyList[Expression]
- Definition Classes
- TreeNode
- def multiTransformDownWithPruning(cond: (TreePatternBits) => Boolean, ruleId: RuleId)(rule: PartialFunction[Expression, Seq[Expression]]): LazyList[Expression]
- Definition Classes
- TreeNode
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def nodeName: String
- Definition Classes
- TreeNode
- val nodePatterns: Seq[TreePattern]
- Attributes
- protected
- Definition Classes
- TreeNode
- def nodeWithOutputColumnsString(maxColumns: Int): String
- Definition Classes
- TreeNode
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- def nullIntolerant: Boolean
- Definition Classes
- Expression
- def nullable: Boolean
- Definition Classes
- RuleFolderRunnerBase → Expression
- def numberedTreeString: String
- Definition Classes
- TreeNode
- val origin: Origin
- Definition Classes
- TreeNode → WithOrigin
- def otherCopyArgs: Seq[AnyRef]
- Attributes
- protected
- Definition Classes
- TreeNode
- def p(number: Int): Expression
- Definition Classes
- TreeNode
- def performGroupingAuditDump(): Unit
- Definition Classes
- HasOutput
- def prettyJson: String
- Definition Classes
- TreeNode
- def prettyName: String
- Definition Classes
- Expression
- def processNewChildren(newChildren: Seq[Expression]): Seq[Expression]
- def productElementName(n: Int): String
- Definition Classes
- Product
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- def productIterator: Iterator[Any]
- Definition Classes
- Product
- def productPrefix: String
- Definition Classes
- Product
- lazy val realChildren: Seq[Expression]
- Definition Classes
- RuleFolderRunnerBase → HasOutput
- def references: AttributeSet
- Definition Classes
- Expression
- lazy val reincorporated: RuleSuite
- lazy val resolved: Boolean
- Definition Classes
- Expression
- final def semanticEquals(other: Expression): Boolean
- Definition Classes
- Expression
- def semanticHash(): Int
- Definition Classes
- Expression
- def setTagValue[T](tag: TreeNodeTag[T], value: T): Unit
- Definition Classes
- TreeNode
- def simpleString(maxFields: Int): String
- Definition Classes
- Expression → TreeNode
- def simpleStringWithNodeId(): String
- Definition Classes
- Expression → TreeNode
- final def sql: String
- Definition Classes
- NonSQLExpression → Expression
- val startingStruct: Expression
- def stateful: Boolean
- Definition Classes
- Expression
- def stringArgs: Iterator[Any]
- Attributes
- protected
- Definition Classes
- TreeNode
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- lazy val throwable: Boolean
- Definition Classes
- Expression
- def toJSON: String
- Definition Classes
- TreeNode
- def toString(): String
- Definition Classes
- RuleFolderRunnerBase → Expression → TreeNode → AnyRef → Any
- def transform(rule: PartialFunction[Expression, Expression]): Expression
- Definition Classes
- TreeNode
- def transformDown(rule: PartialFunction[Expression, Expression]): Expression
- Definition Classes
- TreeNode
- def transformDownWithPruning(cond: (TreePatternBits) => Boolean, ruleId: RuleId)(rule: PartialFunction[Expression, Expression]): Expression
- Definition Classes
- TreeNode
- def transformUp(rule: PartialFunction[Expression, Expression]): Expression
- Definition Classes
- TreeNode
- def transformUpWithBeforeAndAfterRuleOnChildren(cond: (Expression) => Boolean, ruleId: RuleId)(rule: PartialFunction[(Expression, Expression), Expression]): Expression
- Definition Classes
- TreeNode
- def transformUpWithPruning(cond: (TreePatternBits) => Boolean, ruleId: RuleId)(rule: PartialFunction[Expression, Expression]): Expression
- Definition Classes
- TreeNode
- def transformWithPruning(cond: (TreePatternBits) => Boolean, ruleId: RuleId)(rule: PartialFunction[Expression, Expression]): Expression
- Definition Classes
- TreeNode
- def treePatternBits: BitSet
- Definition Classes
- TreeNode → TreePatternBits
- def treeString(append: (String) => Unit, verbose: Boolean, addSuffix: Boolean, maxFields: Int, printOperatorId: Boolean, printOutputColumns: Boolean): Unit
- Definition Classes
- TreeNode
- final def treeString(verbose: Boolean, addSuffix: Boolean, maxFields: Int, printOperatorId: Boolean, printOutputColumns: Boolean): String
- Definition Classes
- TreeNode
- final def treeString: String
- Definition Classes
- TreeNode
- def triggerRules: Seq[Expression]
- Definition Classes
- HasOutput
- def typeSuffix: String
- Attributes
- protected
- Definition Classes
- Expression
- def unsetTagValue[T](tag: TreeNodeTag[T]): Unit
- Definition Classes
- TreeNode
- final def validateNodePatterns(): Unit
- Definition Classes
- Expression → TreeNode
- final def verboseString(maxFields: Int): String
- Definition Classes
- Expression → TreeNode
- def verboseStringWithSuffix(maxFields: Int): String
- Definition Classes
- TreeNode
- 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])
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def withCanonicalizedChildren: Expression
- Attributes
- protected
- Definition Classes
- Expression
- final def withNewChildren(newChildren: Seq[Expression]): Expression
- Definition Classes
- TreeNode
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
(Since version 9)