You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@groovy.apache.org by su...@apache.org on 2020/10/06 13:36:42 UTC
[groovy] 17/22: GROOVY-8258: Use `in` instead of `of` for better
readability
This is an automated email from the ASF dual-hosted git repository.
sunlan pushed a commit to branch GROOVY-8258
in repository https://gitbox.apache.org/repos/asf/groovy.git
commit 2318b694c78743658a7f1db347403ac4f1bed849
Author: Daniel Sun <su...@apache.org>
AuthorDate: Mon Oct 5 22:39:21 2020 +0800
GROOVY-8258: Use `in` instead of `of` for better readability
---
.../groovy/org/apache/groovy/linq/dsl/GinqAstBuilder.java | 12 +++++-------
.../src/test/groovy/org/apache/groovy/linq/GinqTest.groovy | 6 +++---
2 files changed, 8 insertions(+), 10 deletions(-)
diff --git a/subprojects/groovy-linq/src/main/groovy/org/apache/groovy/linq/dsl/GinqAstBuilder.java b/subprojects/groovy-linq/src/main/groovy/org/apache/groovy/linq/dsl/GinqAstBuilder.java
index 0e75468..9a365e5 100644
--- a/subprojects/groovy-linq/src/main/groovy/org/apache/groovy/linq/dsl/GinqAstBuilder.java
+++ b/subprojects/groovy-linq/src/main/groovy/org/apache/groovy/linq/dsl/GinqAstBuilder.java
@@ -27,6 +27,7 @@ import org.apache.groovy.linq.dsl.expression.WhereExpression;
import org.codehaus.groovy.GroovyBugError;
import org.codehaus.groovy.ast.CodeVisitorSupport;
import org.codehaus.groovy.ast.expr.ArgumentListExpression;
+import org.codehaus.groovy.ast.expr.BinaryExpression;
import org.codehaus.groovy.ast.expr.Expression;
import org.codehaus.groovy.ast.expr.MethodCallExpression;
@@ -50,13 +51,10 @@ public class GinqAstBuilder extends CodeVisitorSupport {
System.out.println(methodName + " : " + call);
if ("from".equals(methodName)) {
- return;
- }
-
- if ("of".equals(methodName)) {
- MethodCallExpression fromMethodCallExpression = (MethodCallExpression) call.getObjectExpression();
- Expression aliasExpr = ((ArgumentListExpression) fromMethodCallExpression.getArguments()).getExpression(0);
- Expression dataSourceExpr = ((ArgumentListExpression) call.getArguments()).getExpression(0);
+ ArgumentListExpression arguments = (ArgumentListExpression) call.getArguments();
+ BinaryExpression binaryExpression = (BinaryExpression) arguments.getExpression(0);
+ Expression aliasExpr = binaryExpression.getLeftExpression();
+ Expression dataSourceExpr = binaryExpression.getRightExpression();
FromExpression fromExpression = new FromExpression(aliasExpr, dataSourceExpr);
simpleGinqExpression.addFromExpression(fromExpression);
diff --git a/subprojects/groovy-linq/src/test/groovy/org/apache/groovy/linq/GinqTest.groovy b/subprojects/groovy-linq/src/test/groovy/org/apache/groovy/linq/GinqTest.groovy
index d164a65..1cdb0ef 100644
--- a/subprojects/groovy-linq/src/test/groovy/org/apache/groovy/linq/GinqTest.groovy
+++ b/subprojects/groovy-linq/src/test/groovy/org/apache/groovy/linq/GinqTest.groovy
@@ -32,7 +32,7 @@ class GinqTest {
assertScript '''
def numbers = [0, 1, 2]
assert [0, 1, 2] == GINQ {
- from n of numbers
+ from n in numbers
select n
}.toList()
'''
@@ -43,7 +43,7 @@ class GinqTest {
assertScript '''
def numbers = [0, 1, 2]
assert [0, 2, 4] == GINQ {
- from n of numbers
+ from n in numbers
select n * 2
}.toList()
'''
@@ -54,7 +54,7 @@ class GinqTest {
assertScript '''
def numbers = [0, 1, 2, 3, 4, 5]
assert [2, 4, 6] == GINQ {
- from n of numbers
+ from n in numbers
where n > 0 && n <= 3
select n * 2
}.toList()