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 3e39e7022e667173dafda9813ad0165dec29419d Author: Daniel Sun <[email protected]> AuthorDate: Mon Oct 5 00:32:21 2020 +0800 GROOVY-8258: Add macro method LINQ entry --- subprojects/groovy-linq/build.gradle | 11 +++++++++-- .../groovy/org/apache/groovy/linq/LinqGroovyMethods.java} | 14 +++++++++++--- .../{java => groovy}/org/apache/groovy/linq/Queryable.java | 0 .../apache/groovy/linq/provider/QueryableCollection.java | 0 4 files changed, 20 insertions(+), 5 deletions(-) diff --git a/subprojects/groovy-linq/build.gradle b/subprojects/groovy-linq/build.gradle index 8e249dd..5c6a05b 100644 --- a/subprojects/groovy-linq/build.gradle +++ b/subprojects/groovy-linq/build.gradle @@ -17,8 +17,15 @@ * under the License. */ - dependencies { - api rootProject + implementation rootProject + implementation project(':groovy-macro') + testImplementation rootProject.sourceSets.test.runtimeClasspath testImplementation project(':groovy-test') } + +task moduleDescriptor(type: org.codehaus.groovy.gradle.WriteExtensionDescriptorTask) { + extensionClasses = 'org.apache.groovy.linq.LinqGroovyMethods' +} + +compileJava.dependsOn moduleDescriptor diff --git a/subprojects/groovy-linq/build.gradle b/subprojects/groovy-linq/src/main/groovy/org/apache/groovy/linq/LinqGroovyMethods.java similarity index 66% copy from subprojects/groovy-linq/build.gradle copy to subprojects/groovy-linq/src/main/groovy/org/apache/groovy/linq/LinqGroovyMethods.java index 8e249dd..936e6be 100644 --- a/subprojects/groovy-linq/build.gradle +++ b/subprojects/groovy-linq/src/main/groovy/org/apache/groovy/linq/LinqGroovyMethods.java @@ -16,9 +16,17 @@ * specific language governing permissions and limitations * under the License. */ +package org.apache.groovy.linq; +import org.codehaus.groovy.ast.expr.ClosureExpression; +import org.codehaus.groovy.ast.expr.Expression; +import org.codehaus.groovy.macro.runtime.Macro; +import org.codehaus.groovy.macro.runtime.MacroContext; -dependencies { - api rootProject - testImplementation project(':groovy-test') +public class LinqGroovyMethods { + @Macro + public static Expression LINQ(MacroContext ctx, final ClosureExpression closureExpression) { + return null; // TODO + } } + diff --git a/subprojects/groovy-linq/src/main/java/org/apache/groovy/linq/Queryable.java b/subprojects/groovy-linq/src/main/groovy/org/apache/groovy/linq/Queryable.java similarity index 100% rename from subprojects/groovy-linq/src/main/java/org/apache/groovy/linq/Queryable.java rename to subprojects/groovy-linq/src/main/groovy/org/apache/groovy/linq/Queryable.java diff --git a/subprojects/groovy-linq/src/main/java/org/apache/groovy/linq/provider/QueryableCollection.java b/subprojects/groovy-linq/src/main/groovy/org/apache/groovy/linq/provider/QueryableCollection.java similarity index 100% rename from subprojects/groovy-linq/src/main/java/org/apache/groovy/linq/provider/QueryableCollection.java rename to subprojects/groovy-linq/src/main/groovy/org/apache/groovy/linq/provider/QueryableCollection.java
