[1/2] spark git commit: [SPARK-11532][SQL] Remove implicit conversion from Expression to Column

2015-11-05 Thread rxin
Repository: spark
Updated Branches:
  refs/heads/branch-1.6 be2c18650 -> 40eadae16


[SPARK-11532][SQL] Remove implicit conversion from Expression to Column

Author: Reynold Xin 

Closes #9500 from rxin/SPARK-11532.

(cherry picked from commit 8a5314efd19fb8f8a194a373fd994b954cc1fd47)
Signed-off-by: Reynold Xin 


Project: http://git-wip-us.apache.org/repos/asf/spark/repo
Commit: http://git-wip-us.apache.org/repos/asf/spark/commit/478d7860
Tree: http://git-wip-us.apache.org/repos/asf/spark/tree/478d7860
Diff: http://git-wip-us.apache.org/repos/asf/spark/diff/478d7860

Branch: refs/heads/branch-1.6
Commit: 478d7860cd905e264b8669567bd83edc38af62f7
Parents: be2c186
Author: Reynold Xin 
Authored: Thu Nov 5 13:34:36 2015 -0800
Committer: Reynold Xin 
Committed: Thu Nov 5 16:04:23 2015 -0800

--
 .../scala/org/apache/spark/sql/Column.scala | 118 +++
 1 file changed, 66 insertions(+), 52 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/spark/blob/478d7860/sql/core/src/main/scala/org/apache/spark/sql/Column.scala
--
diff --git a/sql/core/src/main/scala/org/apache/spark/sql/Column.scala 
b/sql/core/src/main/scala/org/apache/spark/sql/Column.scala
index c73f696..c32c938 100644
--- a/sql/core/src/main/scala/org/apache/spark/sql/Column.scala
+++ b/sql/core/src/main/scala/org/apache/spark/sql/Column.scala
@@ -68,7 +68,7 @@ class Column(protected[sql] val expr: Expression) extends 
Logging {
   })
 
   /** Creates a column based on the given expression. */
-  implicit private def exprToColumn(newExpr: Expression): Column = new 
Column(newExpr)
+  private def withExpr(newExpr: Expression): Column = new Column(newExpr)
 
   override def toString: String = expr.prettyString
 
@@ -99,7 +99,9 @@ class Column(protected[sql] val expr: Expression) extends 
Logging {
* @group expr_ops
* @since 1.4.0
*/
-  def apply(extraction: Any): Column = UnresolvedExtractValue(expr, 
lit(extraction).expr)
+  def apply(extraction: Any): Column = withExpr {
+UnresolvedExtractValue(expr, lit(extraction).expr)
+  }
 
   /**
* Unary minus, i.e. negate the expression.
@@ -115,7 +117,7 @@ class Column(protected[sql] val expr: Expression) extends 
Logging {
* @group expr_ops
* @since 1.3.0
*/
-  def unary_- : Column = UnaryMinus(expr)
+  def unary_- : Column = withExpr { UnaryMinus(expr) }
 
   /**
* Inversion of boolean expression, i.e. NOT.
@@ -131,7 +133,7 @@ class Column(protected[sql] val expr: Expression) extends 
Logging {
* @group expr_ops
* @since 1.3.0
*/
-  def unary_! : Column = Not(expr)
+  def unary_! : Column = withExpr { Not(expr) }
 
   /**
* Equality test.
@@ -147,7 +149,7 @@ class Column(protected[sql] val expr: Expression) extends 
Logging {
* @group expr_ops
* @since 1.3.0
*/
-  def === (other: Any): Column = {
+  def === (other: Any): Column = withExpr {
 val right = lit(other).expr
 if (this.expr == right) {
   logWarning(
@@ -188,7 +190,7 @@ class Column(protected[sql] val expr: Expression) extends 
Logging {
* @group expr_ops
* @since 1.3.0
*/
-  def !== (other: Any): Column = Not(EqualTo(expr, lit(other).expr))
+  def !== (other: Any): Column = withExpr{ Not(EqualTo(expr, lit(other).expr)) 
}
 
   /**
* Inequality test.
@@ -205,7 +207,7 @@ class Column(protected[sql] val expr: Expression) extends 
Logging {
* @group java_expr_ops
* @since 1.3.0
*/
-  def notEqual(other: Any): Column = Not(EqualTo(expr, lit(other).expr))
+  def notEqual(other: Any): Column = withExpr { Not(EqualTo(expr, 
lit(other).expr)) }
 
   /**
* Greater than.
@@ -221,7 +223,7 @@ class Column(protected[sql] val expr: Expression) extends 
Logging {
* @group expr_ops
* @since 1.3.0
*/
-  def > (other: Any): Column = GreaterThan(expr, lit(other).expr)
+  def > (other: Any): Column = withExpr { GreaterThan(expr, lit(other).expr) }
 
   /**
* Greater than.
@@ -252,7 +254,7 @@ class Column(protected[sql] val expr: Expression) extends 
Logging {
* @group expr_ops
* @since 1.3.0
*/
-  def < (other: Any): Column = LessThan(expr, lit(other).expr)
+  def < (other: Any): Column = withExpr { LessThan(expr, lit(other).expr) }
 
   /**
* Less than.
@@ -282,7 +284,7 @@ class Column(protected[sql] val expr: Expression) extends 
Logging {
* @group expr_ops
* @since 1.3.0
*/
-  def <= (other: Any): Column = LessThanOrEqual(expr, lit(other).expr)
+  def <= (other: Any): Column = withExpr { LessThanOrEqual(expr, 
lit(other).expr) }
 
   /**
* Less than or equal to.
@@ -312,7 +314,7 @@ class Column(protected[sql] val expr: Expression) extends 
Logging {
* @group expr_ops
* @since 1.3.0
*/
-  def >= (other: Any): Column = GreaterThanOrEqual(expr, lit(other).expr)
+  def >= (other: An

spark git commit: [SPARK-11532][SQL] Remove implicit conversion from Expression to Column

2015-11-05 Thread rxin
Repository: spark
Updated Branches:
  refs/heads/master 14ee0f572 -> 8a5314efd


[SPARK-11532][SQL] Remove implicit conversion from Expression to Column

Author: Reynold Xin 

Closes #9500 from rxin/SPARK-11532.


Project: http://git-wip-us.apache.org/repos/asf/spark/repo
Commit: http://git-wip-us.apache.org/repos/asf/spark/commit/8a5314ef
Tree: http://git-wip-us.apache.org/repos/asf/spark/tree/8a5314ef
Diff: http://git-wip-us.apache.org/repos/asf/spark/diff/8a5314ef

Branch: refs/heads/master
Commit: 8a5314efd19fb8f8a194a373fd994b954cc1fd47
Parents: 14ee0f5
Author: Reynold Xin 
Authored: Thu Nov 5 13:34:36 2015 -0800
Committer: Reynold Xin 
Committed: Thu Nov 5 13:34:36 2015 -0800

--
 .../scala/org/apache/spark/sql/Column.scala | 118 +++
 1 file changed, 66 insertions(+), 52 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/spark/blob/8a5314ef/sql/core/src/main/scala/org/apache/spark/sql/Column.scala
--
diff --git a/sql/core/src/main/scala/org/apache/spark/sql/Column.scala 
b/sql/core/src/main/scala/org/apache/spark/sql/Column.scala
index c73f696..c32c938 100644
--- a/sql/core/src/main/scala/org/apache/spark/sql/Column.scala
+++ b/sql/core/src/main/scala/org/apache/spark/sql/Column.scala
@@ -68,7 +68,7 @@ class Column(protected[sql] val expr: Expression) extends 
Logging {
   })
 
   /** Creates a column based on the given expression. */
-  implicit private def exprToColumn(newExpr: Expression): Column = new 
Column(newExpr)
+  private def withExpr(newExpr: Expression): Column = new Column(newExpr)
 
   override def toString: String = expr.prettyString
 
@@ -99,7 +99,9 @@ class Column(protected[sql] val expr: Expression) extends 
Logging {
* @group expr_ops
* @since 1.4.0
*/
-  def apply(extraction: Any): Column = UnresolvedExtractValue(expr, 
lit(extraction).expr)
+  def apply(extraction: Any): Column = withExpr {
+UnresolvedExtractValue(expr, lit(extraction).expr)
+  }
 
   /**
* Unary minus, i.e. negate the expression.
@@ -115,7 +117,7 @@ class Column(protected[sql] val expr: Expression) extends 
Logging {
* @group expr_ops
* @since 1.3.0
*/
-  def unary_- : Column = UnaryMinus(expr)
+  def unary_- : Column = withExpr { UnaryMinus(expr) }
 
   /**
* Inversion of boolean expression, i.e. NOT.
@@ -131,7 +133,7 @@ class Column(protected[sql] val expr: Expression) extends 
Logging {
* @group expr_ops
* @since 1.3.0
*/
-  def unary_! : Column = Not(expr)
+  def unary_! : Column = withExpr { Not(expr) }
 
   /**
* Equality test.
@@ -147,7 +149,7 @@ class Column(protected[sql] val expr: Expression) extends 
Logging {
* @group expr_ops
* @since 1.3.0
*/
-  def === (other: Any): Column = {
+  def === (other: Any): Column = withExpr {
 val right = lit(other).expr
 if (this.expr == right) {
   logWarning(
@@ -188,7 +190,7 @@ class Column(protected[sql] val expr: Expression) extends 
Logging {
* @group expr_ops
* @since 1.3.0
*/
-  def !== (other: Any): Column = Not(EqualTo(expr, lit(other).expr))
+  def !== (other: Any): Column = withExpr{ Not(EqualTo(expr, lit(other).expr)) 
}
 
   /**
* Inequality test.
@@ -205,7 +207,7 @@ class Column(protected[sql] val expr: Expression) extends 
Logging {
* @group java_expr_ops
* @since 1.3.0
*/
-  def notEqual(other: Any): Column = Not(EqualTo(expr, lit(other).expr))
+  def notEqual(other: Any): Column = withExpr { Not(EqualTo(expr, 
lit(other).expr)) }
 
   /**
* Greater than.
@@ -221,7 +223,7 @@ class Column(protected[sql] val expr: Expression) extends 
Logging {
* @group expr_ops
* @since 1.3.0
*/
-  def > (other: Any): Column = GreaterThan(expr, lit(other).expr)
+  def > (other: Any): Column = withExpr { GreaterThan(expr, lit(other).expr) }
 
   /**
* Greater than.
@@ -252,7 +254,7 @@ class Column(protected[sql] val expr: Expression) extends 
Logging {
* @group expr_ops
* @since 1.3.0
*/
-  def < (other: Any): Column = LessThan(expr, lit(other).expr)
+  def < (other: Any): Column = withExpr { LessThan(expr, lit(other).expr) }
 
   /**
* Less than.
@@ -282,7 +284,7 @@ class Column(protected[sql] val expr: Expression) extends 
Logging {
* @group expr_ops
* @since 1.3.0
*/
-  def <= (other: Any): Column = LessThanOrEqual(expr, lit(other).expr)
+  def <= (other: Any): Column = withExpr { LessThanOrEqual(expr, 
lit(other).expr) }
 
   /**
* Less than or equal to.
@@ -312,7 +314,7 @@ class Column(protected[sql] val expr: Expression) extends 
Logging {
* @group expr_ops
* @since 1.3.0
*/
-  def >= (other: Any): Column = GreaterThanOrEqual(expr, lit(other).expr)
+  def >= (other: Any): Column = withExpr { GreaterThanOrEqual(expr, 
lit(other).expr) }
 
   /**
* Greater than or equal