Repository: vxquery
Updated Branches:
  refs/heads/master 07710733f -> 654f93f3b


ConvertToFrAlgrbricks files updated with changes


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

Branch: refs/heads/master
Commit: 1f922a7570792bbe14ccd925c7976150940f1ae1
Parents: c31a36c
Author: shivani <[email protected]>
Authored: Sun Jun 28 17:11:39 2015 -0700
Committer: Preston Carman <[email protected]>
Committed: Sun Jun 28 17:56:38 2015 -0700

----------------------------------------------------------------------
 .../ConvertFromAlgebricksExpressionsRule.java   | 16 ++++++-------
 .../ConvertToAlgebricksExpressionsRule.java     | 24 ++++++++++----------
 2 files changed, 20 insertions(+), 20 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/vxquery/blob/1f922a75/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertFromAlgebricksExpressionsRule.java
----------------------------------------------------------------------
diff --git 
a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertFromAlgebricksExpressionsRule.java
 
b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertFromAlgebricksExpressionsRule.java
index 2ea95fe..41ceff6 100644
--- 
a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertFromAlgebricksExpressionsRule.java
+++ 
b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertFromAlgebricksExpressionsRule.java
@@ -67,21 +67,22 @@ import 
edu.uci.ics.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule;
 public class ConvertFromAlgebricksExpressionsRule implements 
IAlgebraicRewriteRule {
     final List<Mutable<ILogicalExpression>> functionList = new 
ArrayList<Mutable<ILogicalExpression>>();
     final static Map<FunctionIdentifier, Pair<IFunctionInfo, IFunctionInfo>> 
ALGEBRICKS_MAP = new HashMap<FunctionIdentifier, Pair<IFunctionInfo, 
IFunctionInfo>>();
-    final static String ConversionToAndFromAlgebrics = 
"ConversionToAndFromAlgebrics";
+    final static String CONVERSION_TO_FR_ALGEBRICKS = 
"ConversionToAndFromAlgebrics";
+    AbstractFunctionCallExpression searchFunction;
 
     public ConvertFromAlgebricksExpressionsRule() {
         ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.AND, new 
Pair(BuiltinOperators.AND, null));
         ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.EQ, new 
Pair(BuiltinOperators.VALUE_EQ,
                 BuiltinOperators.GENERAL_EQ));
-        ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.GT, new 
Pair(BuiltinOperators.VALUE_GT,
-                BuiltinOperators.GENERAL_GT));
         ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.GE, new 
Pair(BuiltinOperators.VALUE_GE,
                 BuiltinOperators.GENERAL_GE));
+        ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.GT, new 
Pair(BuiltinOperators.VALUE_GT,
+                BuiltinOperators.GENERAL_GT));
         ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.IS_NULL, new Pair(null, 
BuiltinFunctions.FN_EMPTY_1));
-        ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.LT, new 
Pair(BuiltinOperators.VALUE_LT,
-                BuiltinOperators.GENERAL_LT));
         ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.LE, new 
Pair(BuiltinOperators.VALUE_LE,
                 BuiltinOperators.GENERAL_LE));
+        ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.LT, new 
Pair(BuiltinOperators.VALUE_LT,
+                BuiltinOperators.GENERAL_LT));
         ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.NOT, new Pair(null, 
BuiltinFunctions.FN_NOT_1));
         ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.NEQ, new 
Pair(BuiltinOperators.VALUE_NE,
                 BuiltinOperators.GENERAL_NE));
@@ -112,10 +113,10 @@ public class ConvertFromAlgebricksExpressionsRule 
implements IAlgebraicRewriteRu
         functionList.clear();
         ExpressionToolbox.findAllFunctionExpressions(search, functionList);
         for (Mutable<ILogicalExpression> searchM : functionList) {
-            AbstractFunctionCallExpression searchFunction = 
(AbstractFunctionCallExpression) searchM.getValue();
+            searchFunction = (AbstractFunctionCallExpression) 
searchM.getValue();
             if 
(ALGEBRICKS_MAP.containsKey(searchFunction.getFunctionIdentifier())) {
                 ScalarFunctionCallExpression booleanFunctionCallExp = null;
-                IExpressionAnnotation annotate = 
searchFunction.getAnnotations().get(ConversionToAndFromAlgebrics);
+                IExpressionAnnotation annotate = 
searchFunction.getAnnotations().get(CONVERSION_TO_FR_ALGEBRICKS);
                 FunctionIdentifier fid = 
searchFunction.getFunctionIdentifier();
                 if (((FunctionIdentifier) 
annotate.getObject()).equals(ALGEBRICKS_MAP.get(fid).first
                         .getFunctionIdentifier())) {
@@ -131,7 +132,6 @@ public class ConvertFromAlgebricksExpressionsRule 
implements IAlgebraicRewriteRu
                             searchFunction.getArguments());
                     searchM.setValue(booleanFunctionCallExp);
                     modified = true;
-                } else {
                 }
             }
         }

http://git-wip-us.apache.org/repos/asf/vxquery/blob/1f922a75/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertToAlgebricksExpressionsRule.java
----------------------------------------------------------------------
diff --git 
a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertToAlgebricksExpressionsRule.java
 
b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertToAlgebricksExpressionsRule.java
index fd9fa7c..3c36f03 100644
--- 
a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertToAlgebricksExpressionsRule.java
+++ 
b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertToAlgebricksExpressionsRule.java
@@ -47,11 +47,11 @@ import 
edu.uci.ics.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule;
  * Before
  * 
  *   plan__parent
- *   %OPERATOR( $v1 : boolean(xquery_function( \@input_expression ) or $v1 : 
general-compare(xquery_function( \@input_expression ) 
- *    or $v1 : fn_empty(xquery_function( \@input_expression ) or $v1 : 
fn_not(xquery_function( \@input_expression 
+ *   %OPERATOR( $v1 : xquery_function( \@input_expression ) )
  *   plan__child
- *   
- *   Where xquery_function creates an atomic value.
+ * 
+ *   where xquery_function has a known equivalent in Algebricks, 
+ *   such as conditional expressions and a check for null
  *   
  * After 
  * 
@@ -65,26 +65,26 @@ import 
edu.uci.ics.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule;
 public class ConvertToAlgebricksExpressionsRule implements 
IAlgebraicRewriteRule {
     final Map<FunctionIdentifier, FunctionIdentifier> ALGEBRICKS_MAP = new 
HashMap<FunctionIdentifier, FunctionIdentifier>();
     final Map<FunctionIdentifier, FunctionIdentifier> ALGEBRICKS_BOOL_MAP = 
new HashMap<FunctionIdentifier, FunctionIdentifier>();
-    final static String ConversionToAndFromAlgebrics = 
"ConversionToAndFromAlgebrics";
+    final static String CONVERSION_TO_FR_ALGEBRICKS = 
"ConversionToAndFromAlgebrics";
 
     public ConvertToAlgebricksExpressionsRule() {
 
         ALGEBRICKS_BOOL_MAP.put(BuiltinOperators.AND.getFunctionIdentifier(), 
AlgebricksBuiltinFunctions.AND);
         ALGEBRICKS_BOOL_MAP.put(BuiltinOperators.OR.getFunctionIdentifier(), 
AlgebricksBuiltinFunctions.OR);
-        
ALGEBRICKS_BOOL_MAP.put(BuiltinOperators.VALUE_NE.getFunctionIdentifier(), 
AlgebricksBuiltinFunctions.NEQ);
         
ALGEBRICKS_BOOL_MAP.put(BuiltinOperators.VALUE_EQ.getFunctionIdentifier(), 
AlgebricksBuiltinFunctions.EQ);
+        
ALGEBRICKS_BOOL_MAP.put(BuiltinOperators.VALUE_GE.getFunctionIdentifier(), 
AlgebricksBuiltinFunctions.GE);
+        
ALGEBRICKS_BOOL_MAP.put(BuiltinOperators.VALUE_GT.getFunctionIdentifier(), 
AlgebricksBuiltinFunctions.GT);
         
ALGEBRICKS_BOOL_MAP.put(BuiltinOperators.VALUE_LE.getFunctionIdentifier(), 
AlgebricksBuiltinFunctions.LE);
         
ALGEBRICKS_BOOL_MAP.put(BuiltinOperators.VALUE_LT.getFunctionIdentifier(), 
AlgebricksBuiltinFunctions.LT);
-        
ALGEBRICKS_BOOL_MAP.put(BuiltinOperators.VALUE_GT.getFunctionIdentifier(), 
AlgebricksBuiltinFunctions.GT);
-        
ALGEBRICKS_BOOL_MAP.put(BuiltinOperators.VALUE_GE.getFunctionIdentifier(), 
AlgebricksBuiltinFunctions.GE);
-
+        
ALGEBRICKS_BOOL_MAP.put(BuiltinOperators.VALUE_NE.getFunctionIdentifier(), 
AlgebricksBuiltinFunctions.NEQ);
+        
         
ALGEBRICKS_MAP.put(BuiltinFunctions.FN_EMPTY_1.getFunctionIdentifier(), 
AlgebricksBuiltinFunctions.IS_NULL);
         ALGEBRICKS_MAP.put(BuiltinFunctions.FN_NOT_1.getFunctionIdentifier(), 
AlgebricksBuiltinFunctions.NOT);
-        
ALGEBRICKS_MAP.put(BuiltinOperators.GENERAL_LT.getFunctionIdentifier(), 
AlgebricksBuiltinFunctions.LT);
         
ALGEBRICKS_MAP.put(BuiltinOperators.GENERAL_EQ.getFunctionIdentifier(), 
AlgebricksBuiltinFunctions.EQ);
-        
ALGEBRICKS_MAP.put(BuiltinOperators.GENERAL_LE.getFunctionIdentifier(), 
AlgebricksBuiltinFunctions.LE);
         
ALGEBRICKS_MAP.put(BuiltinOperators.GENERAL_GE.getFunctionIdentifier(), 
AlgebricksBuiltinFunctions.GE);
         
ALGEBRICKS_MAP.put(BuiltinOperators.GENERAL_GT.getFunctionIdentifier(), 
AlgebricksBuiltinFunctions.GT);
+        
ALGEBRICKS_MAP.put(BuiltinOperators.GENERAL_LE.getFunctionIdentifier(), 
AlgebricksBuiltinFunctions.LE);
+        
ALGEBRICKS_MAP.put(BuiltinOperators.GENERAL_LT.getFunctionIdentifier(), 
AlgebricksBuiltinFunctions.LT);
         
ALGEBRICKS_MAP.put(BuiltinOperators.GENERAL_NE.getFunctionIdentifier(), 
AlgebricksBuiltinFunctions.NEQ);
     }
 
@@ -120,7 +120,7 @@ public class ConvertToAlgebricksExpressionsRule implements 
IAlgebraicRewriteRule
             FunctionIdentifier algebricksFid = 
map.get(functionCall.getFunctionIdentifier());
             IFunctionInfo algebricksFunction = 
context.getMetadataProvider().lookupFunction(algebricksFid);
             functionCall.setFunctionInfo(algebricksFunction);
-            functionCall.getAnnotations().put(ConversionToAndFromAlgebrics, 
annotate);
+            functionCall.getAnnotations().put(CONVERSION_TO_FR_ALGEBRICKS, 
annotate);
             searchM.setValue(functionCall);
             return true;
         }

Reply via email to