org.apache.spark.sql.catalyst.expressions.codegen

GenerateMutableProjection

object GenerateMutableProjection extends CodeGenerator[Seq[Expression], () ⇒ MutableProjection]

Generates byte code that produces a MutableRow object that can update itself based on a new input Row for a fixed set of Expressions.

Linear Supertypes
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. GenerateMutableProjection
  2. CodeGenerator
  3. Logging
  4. AnyRef
  5. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. case class EvaluatedExpression(code: Seq[scala.reflect.api.JavaUniverse.Tree], nullTerm: scala.reflect.api.JavaUniverse.TermName, primitiveTerm: scala.reflect.api.JavaUniverse.TermName, objectTerm: scala.reflect.api.JavaUniverse.TermName) extends Product with Serializable

    Scala ASTs for evaluating an Expression given a Row of input.

Value Members

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

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

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

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. def accessorForType(dt: DataType): scala.reflect.api.JavaUniverse.TermName

    Attributes
    protected
    Definition Classes
    CodeGenerator
  7. def apply(expressions: Seq[Expression]): () ⇒ MutableProjection

    Generates the requested evaluator given already bound expression(s).

    Generates the requested evaluator given already bound expression(s).

    Definition Classes
    CodeGenerator
  8. def apply(expressions: Seq[Expression], inputSchema: Seq[Attribute]): () ⇒ MutableProjection

    Generates the requested evaluator binding the given expression(s) to the inputSchema.

    Generates the requested evaluator binding the given expression(s) to the inputSchema.

    Definition Classes
    CodeGenerator
  9. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  10. def bind(in: Seq[Expression], inputSchema: Seq[Attribute]): Seq[Expression]

    Binds an input expression to a given input schema

    Binds an input expression to a given input schema

    Attributes
    protected
    Definition Classes
    GenerateMutableProjectionCodeGenerator
  11. val cache: LoadingCache[Seq[Expression], () ⇒ MutableProjection]

    A cache of generated classes.

    A cache of generated classes.

    From the Guava Docs: A Cache is similar to ConcurrentMap, but not quite the same. The most fundamental difference is that a ConcurrentMap persists all elements that are added to it until they are explicitly removed. A Cache on the other hand is generally configured to evict entries automatically, in order to constrain its memory footprint. Note that this cache does not use weak keys/values and thus does not respond to memory pressure.

    Attributes
    protected
    Definition Classes
    CodeGenerator
  12. def canonicalize(in: Seq[Expression]): Seq[Expression]

    Canonicalizes an input expression.

    Canonicalizes an input expression. Used to avoid double caching expressions that differ only cosmetically.

    Attributes
    protected
    Definition Classes
    GenerateMutableProjectionCodeGenerator
  13. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  14. def create(expressions: Seq[Expression]): () ⇒ MutableProjection

    Generates a class for a given input expression.

    Generates a class for a given input expression. Called when there is not cached code already available.

    Attributes
    protected
    Definition Classes
    GenerateMutableProjectionCodeGenerator
  15. var debugLogging: Boolean

    Can be flipped on manually in the console to add (expensive) expression evaluation trace code.

    Can be flipped on manually in the console to add (expensive) expression evaluation trace code.

    Definition Classes
    CodeGenerator
  16. def defaultPrimitive(dt: DataType): scala.reflect.api.JavaUniverse.Literal

    Attributes
    protected
    Definition Classes
    CodeGenerator
  17. final def eq(arg0: AnyRef): Boolean

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

    Definition Classes
    AnyRef → Any
  19. def expressionEvaluator(e: Expression): EvaluatedExpression

    Given an expression tree returns an EvaluatedExpression, which contains Scala trees that can be used to determine the result of evaluating the expression on an input row.

    Given an expression tree returns an EvaluatedExpression, which contains Scala trees that can be used to determine the result of evaluating the expression on an input row.

    Definition Classes
    CodeGenerator
  20. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  21. def freshName(prefix: String): scala.reflect.api.JavaUniverse.TermName

    Returns a term name that is unique within this instance of a CodeGenerator.

    Returns a term name that is unique within this instance of a CodeGenerator.

    (Since we aren't in a macro context we do not seem to have access to the built in freshName function.)

    Attributes
    protected
    Definition Classes
    CodeGenerator
  22. val genericMutableRowType: scala.reflect.api.JavaUniverse.Type

    Attributes
    protected
    Definition Classes
    CodeGenerator
  23. val genericRowType: scala.reflect.api.JavaUniverse.Type

    Attributes
    protected
    Definition Classes
    CodeGenerator
  24. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  25. def getColumn(inputRow: scala.reflect.api.JavaUniverse.TermName, dataType: DataType, ordinal: Int): <error>

    Attributes
    protected
    Definition Classes
    CodeGenerator
  26. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  27. def hashSetForType(dt: DataType): scala.reflect.api.JavaUniverse.Type

    Attributes
    protected
    Definition Classes
    CodeGenerator
  28. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  29. def isTraceEnabled(): Boolean

    Attributes
    protected
    Definition Classes
    Logging
  30. def log: Logger

    Attributes
    protected
    Definition Classes
    Logging
  31. def logDebug(msg: ⇒ String, throwable: Throwable): Unit

    Attributes
    protected
    Definition Classes
    Logging
  32. def logDebug(msg: ⇒ String): Unit

    Attributes
    protected
    Definition Classes
    Logging
  33. def logError(msg: ⇒ String, throwable: Throwable): Unit

    Attributes
    protected
    Definition Classes
    Logging
  34. def logError(msg: ⇒ String): Unit

    Attributes
    protected
    Definition Classes
    Logging
  35. def logInfo(msg: ⇒ String, throwable: Throwable): Unit

    Attributes
    protected
    Definition Classes
    Logging
  36. def logInfo(msg: ⇒ String): Unit

    Attributes
    protected
    Definition Classes
    Logging
  37. def logName: String

    Attributes
    protected
    Definition Classes
    Logging
  38. def logTrace(msg: ⇒ String, throwable: Throwable): Unit

    Attributes
    protected
    Definition Classes
    Logging
  39. def logTrace(msg: ⇒ String): Unit

    Attributes
    protected
    Definition Classes
    Logging
  40. def logWarning(msg: ⇒ String, throwable: Throwable): Unit

    Attributes
    protected
    Definition Classes
    Logging
  41. def logWarning(msg: ⇒ String): Unit

    Attributes
    protected
    Definition Classes
    Logging
  42. val mutableProjectionType: scala.reflect.api.JavaUniverse.Type

    Attributes
    protected
    Definition Classes
    CodeGenerator
  43. val mutableRowName: scala.reflect.api.JavaUniverse.TermName

  44. val mutableRowType: scala.reflect.api.JavaUniverse.Type

    Attributes
    protected
    Definition Classes
    CodeGenerator
  45. def mutatorForType(dt: DataType): scala.reflect.api.JavaUniverse.TermName

    Attributes
    protected
    Definition Classes
    CodeGenerator
  46. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  47. final def notify(): Unit

    Definition Classes
    AnyRef
  48. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  49. def primitiveForType(dt: DataType): String

    Attributes
    protected
    Definition Classes
    CodeGenerator
  50. val projectionType: scala.reflect.api.JavaUniverse.Type

    Attributes
    protected
    Definition Classes
    CodeGenerator
  51. val rowType: scala.reflect.api.JavaUniverse.Type

    Attributes
    protected
    Definition Classes
    CodeGenerator
  52. def setColumn(destinationRow: scala.reflect.api.JavaUniverse.TermName, dataType: DataType, ordinal: Int, value: scala.reflect.api.JavaUniverse.TermName): <error>

    Attributes
    protected
    Definition Classes
    CodeGenerator
  53. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  54. def termForType(dt: DataType): scala.reflect.api.JavaUniverse.TypeTag[_87] forSome {type _87 >: CodeGenerator.termForType.n.type.JvmType, val n: NativeType}

    Attributes
    protected
    Definition Classes
    CodeGenerator
  55. def toString(): String

    Definition Classes
    AnyRef → Any
  56. val toolBox: ToolBox[universe.type]

    Attributes
    protected
    Definition Classes
    CodeGenerator
  57. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from CodeGenerator[Seq[Expression], () ⇒ MutableProjection]

Inherited from Logging

Inherited from AnyRef

Inherited from Any

Ungrouped