You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by an...@apache.org on 2016/05/21 18:54:40 UTC

[20/23] jena git commit: Proper Expr.NONE

Proper Expr.NONE

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

Branch: refs/heads/master
Commit: ee9aff073069bf01f1e908ddbb91e7582c937659
Parents: 663f066
Author: Andy Seaborne <an...@apache.org>
Authored: Mon Apr 25 19:45:28 2016 +0100
Committer: Andy Seaborne <an...@apache.org>
Committed: Sat May 21 18:29:13 2016 +0100

----------------------------------------------------------------------
 .../algebra/walker/ApplyTransformVisitor.java   |  2 +-
 .../jena/sparql/algebra/walker/ExprNone.java    | 10 ----
 .../sparql/algebra/walker/WalkerVisitor.java    |  2 +-
 .../sparql/algebra/walker/WalkerVisitor0.java   |  2 +-
 .../java/org/apache/jena/sparql/expr/Expr.java  |  2 +
 .../org/apache/jena/sparql/expr/ExprNone.java   | 60 ++++++++++++++++++++
 6 files changed, 65 insertions(+), 13 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jena/blob/ee9aff07/jena-arq/src/main/java/org/apache/jena/sparql/algebra/walker/ApplyTransformVisitor.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/algebra/walker/ApplyTransformVisitor.java b/jena-arq/src/main/java/org/apache/jena/sparql/algebra/walker/ApplyTransformVisitor.java
index 499ab72..43544c6 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/algebra/walker/ApplyTransformVisitor.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/algebra/walker/ApplyTransformVisitor.java
@@ -219,7 +219,7 @@ public class ApplyTransformVisitor implements OpVisitorByTypeAndExpr, ExprVisito
         List<Expr> x = new ArrayList<>(N) ;
         for ( int i = N-1 ; i >= 0 ; i-- ) {
             Expr e2 = pop(exprStack) ;
-            if ( e2 ==  ExprNone.NONE )
+            if ( e2 ==  Expr.NONE )
                 e2 = null ;
             x.add(0, e2) ;
         }

http://git-wip-us.apache.org/repos/asf/jena/blob/ee9aff07/jena-arq/src/main/java/org/apache/jena/sparql/algebra/walker/ExprNone.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/algebra/walker/ExprNone.java b/jena-arq/src/main/java/org/apache/jena/sparql/algebra/walker/ExprNone.java
deleted file mode 100644
index f7acae9..0000000
--- a/jena-arq/src/main/java/org/apache/jena/sparql/algebra/walker/ExprNone.java
+++ /dev/null
@@ -1,10 +0,0 @@
-package org.apache.jena.sparql.algebra.walker;
-
-import org.apache.jena.sparql.expr.ExprVar ;
-
-/** Marker, used in place of a null.
- *  This may be tested for using {@code ==} */ 
-public class ExprNone extends ExprVar {
-    public static ExprNone NONE = new ExprNone() ;
-    private ExprNone() { super("") ; }
-}

http://git-wip-us.apache.org/repos/asf/jena/blob/ee9aff07/jena-arq/src/main/java/org/apache/jena/sparql/algebra/walker/WalkerVisitor.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/algebra/walker/WalkerVisitor.java b/jena-arq/src/main/java/org/apache/jena/sparql/algebra/walker/WalkerVisitor.java
index 4537cd7..451aedb 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/algebra/walker/WalkerVisitor.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/algebra/walker/WalkerVisitor.java
@@ -103,7 +103,7 @@ public class WalkerVisitor implements OpVisitorByTypeAndExpr, ExprVisitorFunctio
             return ;
         // retains order.
         varExprList.forEachVarExpr((v,e) -> {
-            Expr expr = (e!=null) ? e : ExprNone.NONE ; 
+            Expr expr = (e!=null) ? e : Expr.NONE ; 
             walk(expr) ;
         });
     }

http://git-wip-us.apache.org/repos/asf/jena/blob/ee9aff07/jena-arq/src/main/java/org/apache/jena/sparql/algebra/walker/WalkerVisitor0.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/algebra/walker/WalkerVisitor0.java b/jena-arq/src/main/java/org/apache/jena/sparql/algebra/walker/WalkerVisitor0.java
index df99488..2b9dace 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/algebra/walker/WalkerVisitor0.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/algebra/walker/WalkerVisitor0.java
@@ -103,7 +103,7 @@ public class WalkerVisitor0 implements OpVisitorByTypeAndExpr, ExprVisitorFuncti
             return ;
         // retains order.
         varExprList.forEachVarExpr((v,e) -> {
-            Expr expr = (e!=null) ? e : ExprNone.NONE ; 
+            Expr expr = (e!=null) ? e : Expr.NONE ; 
             walk(expr) ;
         });
     }

http://git-wip-us.apache.org/repos/asf/jena/blob/ee9aff07/jena-arq/src/main/java/org/apache/jena/sparql/expr/Expr.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/expr/Expr.java b/jena-arq/src/main/java/org/apache/jena/sparql/expr/Expr.java
index a1cde07..90efc4f 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/expr/Expr.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/expr/Expr.java
@@ -30,6 +30,8 @@ import org.apache.jena.sparql.graph.NodeTransform;
 
 public interface Expr
 {
+    public static final Expr NONE = ExprNone.NONE0 ;
+    
     public static final int CMP_GREATER  =  DatatypeConstants.GREATER ;
     public static final int CMP_EQUAL    =  DatatypeConstants.EQUAL ;
     public static final int CMP_LESS     =  DatatypeConstants.LESSER ;

http://git-wip-us.apache.org/repos/asf/jena/blob/ee9aff07/jena-arq/src/main/java/org/apache/jena/sparql/expr/ExprNone.java
----------------------------------------------------------------------
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/expr/ExprNone.java b/jena-arq/src/main/java/org/apache/jena/sparql/expr/ExprNone.java
new file mode 100644
index 0000000..a0e07f4
--- /dev/null
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/expr/ExprNone.java
@@ -0,0 +1,60 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.jena.sparql.expr;
+
+import org.apache.jena.atlas.lib.InternalErrorException ;
+import org.apache.jena.sparql.engine.binding.Binding ;
+import org.apache.jena.sparql.function.FunctionEnv ;
+import org.apache.jena.sparql.graph.NodeTransform ;
+
+/** Marker, used in place of a null.
+ *  This may be tested for using {@code ==} */
+
+/*package*/ class ExprNone extends ExprNode {
+    
+    /*paclage*/ static Expr NONE0 = new ExprNone() ; 
+    
+    private ExprNone() {}
+
+    @Override public void visit(ExprVisitor visitor) {}
+
+    @Override public NodeValue eval(Binding binding, FunctionEnv env) {
+        throw new InternalErrorException("Attempt to evalk ExprNone") ;
+    }
+
+    @Override
+    public int hashCode() {
+        return -999999 ;
+    }
+
+    @Override
+    public boolean equals(Expr other, boolean bySyntax) {
+        return other == this ;
+    }
+
+    @Override
+    public Expr copySubstitute(Binding binding) {
+        return this ;
+    }
+
+    @Override
+    public Expr applyNodeTransform(NodeTransform transform) {
+        return this ;
+    }
+}