diff --git a/dataset/src/main/scala/frameless/functions/Lit.scala b/dataset/src/main/scala/frameless/functions/Lit.scala index 5a7208931..3a816ff9e 100644 --- a/dataset/src/main/scala/frameless/functions/Lit.scala +++ b/dataset/src/main/scala/frameless/functions/Lit.scala @@ -53,9 +53,7 @@ private[frameless] case class Lit[T <: AnyVal]( def children: Seq[Expression] = Nil - override def genCode(ctx: CodegenContext): ExprCode = toCatalyst(ctx) - - protected def doGenCode(ctx: CodegenContext, ev: ExprCode): ExprCode = ??? + protected def doGenCode(ctx: CodegenContext, ev: ExprCode): ExprCode = toCatalyst(ctx) protected def withNewChildrenInternal(newChildren: IndexedSeq[Expression]): Expression = this } diff --git a/dataset/src/main/scala/frameless/functions/Udf.scala b/dataset/src/main/scala/frameless/functions/Udf.scala index a2d97a837..93ba7f118 100644 --- a/dataset/src/main/scala/frameless/functions/Udf.scala +++ b/dataset/src/main/scala/frameless/functions/Udf.scala @@ -197,7 +197,7 @@ case class Spark2_4_LambdaVariable( } } - override def genCode(ctx: CodegenContext): ExprCode = { + override protected def doGenCode(ctx: CodegenContext, ev: ExprCode): ExprCode = { val isNullValue = if (nullable) { JavaCode.isNullVariable(isNull) } else { @@ -205,10 +205,6 @@ case class Spark2_4_LambdaVariable( } ExprCode(value = JavaCode.variable(value, dataType), isNull = isNullValue) } - - // This won't be called as `genCode` is overrided, just overriding it to make - // `LambdaVariable` non-abstract. - override protected def doGenCode(ctx: CodegenContext, ev: ExprCode): ExprCode = ev } object FramelessUdf { diff --git a/dataset/src/main/scala/org/apache/spark/sql/FramelessInternals.scala b/dataset/src/main/scala/org/apache/spark/sql/FramelessInternals.scala index 075b650a3..2986a6b16 100644 --- a/dataset/src/main/scala/org/apache/spark/sql/FramelessInternals.scala +++ b/dataset/src/main/scala/org/apache/spark/sql/FramelessInternals.scala @@ -57,8 +57,7 @@ object FramelessInternals { def nullable: Boolean = false def children: Seq[Expression] = tagged :: Nil def dataType: DataType = tagged.dataType - protected def doGenCode(ctx: CodegenContext, ev: ExprCode): ExprCode = ??? - override def genCode(ctx: CodegenContext): ExprCode = tagged.genCode(ctx) + protected def doGenCode(ctx: CodegenContext, ev: ExprCode): ExprCode = tagged.genCode(ctx) protected def withNewChildrenInternal(newChildren: IndexedSeq[Expression]): Expression = copy(newChildren.head) } @@ -68,8 +67,7 @@ object FramelessInternals { def nullable: Boolean = false def children: Seq[Expression] = tagged :: Nil def dataType: DataType = tagged.dataType - protected def doGenCode(ctx: CodegenContext, ev: ExprCode): ExprCode = ??? - override def genCode(ctx: CodegenContext): ExprCode = tagged.genCode(ctx) + protected def doGenCode(ctx: CodegenContext, ev: ExprCode): ExprCode = tagged.genCode(ctx) protected def withNewChildrenInternal(newChildren: IndexedSeq[Expression]): Expression = copy(newChildren.head) } }