Trait

io.projectglow.sql.util

ExpectsGenotypeFields

Related Doc: package util

Permalink

trait ExpectsGenotypeFields extends Expression

A trait to simplify type checking and reading for expressions that operate on arrays of genotype data with the expectation that certain fields exists.

Note: This trait introduces complexity during resolution and analysis, and prevents nested column pruning. Prefer writing new functions as rewrites when possible.

Annotations
@deprecated
Deprecated

(Since version 0.4.1) Write functions as rewrites when possible

Linear Supertypes
Expression, TreeNode[Expression], Product, Equals, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ExpectsGenotypeFields
  2. Expression
  3. TreeNode
  4. Product
  5. Equals
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def canEqual(that: Any): Boolean

    Permalink
    Definition Classes
    Equals
  2. abstract def children: Seq[Expression]

    Permalink
    Definition Classes
    TreeNode
  3. abstract def dataType: DataType

    Permalink
    Definition Classes
    Expression
  4. abstract def doGenCode(ctx: CodegenContext, ev: ExprCode): ExprCode

    Permalink
    Attributes
    protected
    Definition Classes
    Expression
  5. abstract def eval(input: InternalRow): Any

    Permalink
    Definition Classes
    Expression
  6. abstract def genotypeInfo: Option[GenotypeInfo]

    Permalink
  7. abstract def genotypesExpr: Expression

    Permalink
    Attributes
    protected
  8. abstract def nullable: Boolean

    Permalink
    Definition Classes
    Expression
  9. abstract def productArity: Int

    Permalink
    Definition Classes
    Product
  10. abstract def productElement(n: Int): Any

    Permalink
    Definition Classes
    Product
  11. abstract def requiredGenotypeFields: Seq[StructField]

    Permalink
    Attributes
    protected
  12. abstract def withGenotypeInfo(genotypeInfo: GenotypeInfo): Expression

    Permalink

    Make a copy of this expression with GenotypeInfo filled in.

    Make a copy of this expression with GenotypeInfo filled in.

    Attributes
    protected

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. def apply(number: Int): TreeNode[_]

    Permalink
    Definition Classes
    TreeNode
  5. def argString: String

    Permalink
    Definition Classes
    TreeNode
  6. def asCode: String

    Permalink
    Definition Classes
    TreeNode
  7. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  8. lazy val canonicalized: Expression

    Permalink
    Definition Classes
    Expression
  9. def checkInputDataTypes(): TypeCheckResult

    Permalink
    Definition Classes
    ExpectsGenotypeFields → Expression
  10. def childrenResolved: Boolean

    Permalink
    Definition Classes
    Expression
  11. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  12. def collect[B](pf: PartialFunction[Expression, B]): Seq[B]

    Permalink
    Definition Classes
    TreeNode
  13. def collectFirst[B](pf: PartialFunction[Expression, B]): Option[B]

    Permalink
    Definition Classes
    TreeNode
  14. def collectLeaves(): Seq[Expression]

    Permalink
    Definition Classes
    TreeNode
  15. lazy val containsChild: Set[TreeNode[_]]

    Permalink
    Definition Classes
    TreeNode
  16. lazy val deterministic: Boolean

    Permalink
    Definition Classes
    Expression
  17. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  18. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  19. def fastEquals(other: TreeNode[_]): Boolean

    Permalink
    Definition Classes
    TreeNode
  20. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  21. def find(f: (Expression) ⇒ Boolean): Option[Expression]

    Permalink
    Definition Classes
    TreeNode
  22. def flatArguments: Iterator[Any]

    Permalink
    Attributes
    protected
    Definition Classes
    Expression
  23. def flatMap[A](f: (Expression) ⇒ TraversableOnce[A]): Seq[A]

    Permalink
    Definition Classes
    TreeNode
  24. def foldable: Boolean

    Permalink
    Definition Classes
    Expression
  25. def foreach(f: (Expression) ⇒ Unit): Unit

    Permalink
    Definition Classes
    TreeNode
  26. def foreachUp(f: (Expression) ⇒ Unit): Unit

    Permalink
    Definition Classes
    TreeNode
  27. def genCode(ctx: CodegenContext): ExprCode

    Permalink
    Definition Classes
    Expression
  28. def generateTreeString(depth: Int, lastChildren: Seq[Boolean], builder: StringBuilder, verbose: Boolean, prefix: String, addSuffix: Boolean): StringBuilder

    Permalink
    Definition Classes
    TreeNode
  29. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  30. final def getGenotypeInfo: GenotypeInfo

    Permalink
  31. def hashCode(): Int

    Permalink
    Definition Classes
    TreeNode → AnyRef → Any
  32. def innerChildren: Seq[TreeNode[_]]

    Permalink
    Attributes
    protected
    Definition Classes
    TreeNode
  33. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  34. def jsonFields: List[JField]

    Permalink
    Attributes
    protected
    Definition Classes
    TreeNode
  35. def makeCopy(newArgs: Array[AnyRef]): Expression

    Permalink
    Definition Classes
    TreeNode
  36. def map[A](f: (Expression) ⇒ A): Seq[A]

    Permalink
    Definition Classes
    TreeNode
  37. def mapChildren(f: (Expression) ⇒ Expression): Expression

    Permalink
    Definition Classes
    TreeNode
  38. def mapProductIterator[B](f: (Any) ⇒ B)(implicit arg0: ClassTag[B]): Array[B]

    Permalink
    Attributes
    protected
    Definition Classes
    TreeNode
  39. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  40. def nodeName: String

    Permalink
    Definition Classes
    TreeNode
  41. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  42. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  43. def numberedTreeString: String

    Permalink
    Definition Classes
    TreeNode
  44. def optionalGenotypeFields: Seq[StructField]

    Permalink
    Attributes
    protected
  45. val origin: Origin

    Permalink
    Definition Classes
    TreeNode
  46. def otherCopyArgs: Seq[AnyRef]

    Permalink
    Attributes
    protected
    Definition Classes
    TreeNode
  47. def p(number: Int): Expression

    Permalink
    Definition Classes
    TreeNode
  48. def prettyJson: String

    Permalink
    Definition Classes
    TreeNode
  49. def prettyName: String

    Permalink
    Definition Classes
    Expression
  50. def productIterator: Iterator[Any]

    Permalink
    Definition Classes
    Product
  51. def productPrefix: String

    Permalink
    Definition Classes
    Product
  52. def references: AttributeSet

    Permalink
    Definition Classes
    Expression
  53. def resolveGenotypeInfo(): Expression

    Permalink

    Resolve the required field names into positions within the genotypesExpr element struct.

    Resolve the required field names into positions within the genotypesExpr element struct.

    This function should only be called after a successful type check.

    returns

    A new expression with a defined GenotypeInfo

  54. lazy val resolved: Boolean

    Permalink
    Definition Classes
    ExpectsGenotypeFields → Expression
  55. def semanticEquals(other: Expression): Boolean

    Permalink
    Definition Classes
    Expression
  56. def semanticHash(): Int

    Permalink
    Definition Classes
    Expression
  57. def simpleString: String

    Permalink
    Definition Classes
    Expression → TreeNode
  58. def sql: String

    Permalink
    Definition Classes
    Expression
  59. def stringArgs: Iterator[Any]

    Permalink
    Attributes
    protected
    Definition Classes
    TreeNode
  60. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  61. def toJSON: String

    Permalink
    Definition Classes
    TreeNode
  62. def toString(): String

    Permalink
    Definition Classes
    Expression → TreeNode → AnyRef → Any
  63. def transform(rule: PartialFunction[Expression, Expression]): Expression

    Permalink
    Definition Classes
    TreeNode
  64. def transformDown(rule: PartialFunction[Expression, Expression]): Expression

    Permalink
    Definition Classes
    TreeNode
  65. def transformUp(rule: PartialFunction[Expression, Expression]): Expression

    Permalink
    Definition Classes
    TreeNode
  66. def treeString(verbose: Boolean, addSuffix: Boolean): String

    Permalink
    Definition Classes
    TreeNode
  67. def treeString: String

    Permalink
    Definition Classes
    TreeNode
  68. final def verboseString: String

    Permalink
    Definition Classes
    Expression → TreeNode
  69. def verboseStringWithSuffix: String

    Permalink
    Definition Classes
    TreeNode
  70. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  71. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  72. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  73. def withNewChildren(newChildren: Seq[Expression]): Expression

    Permalink
    Definition Classes
    TreeNode

Inherited from Expression

Inherited from TreeNode[Expression]

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped