[
https://issues.apache.org/jira/browse/GROOVY-10771?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17610252#comment-17610252
]
Eric Milles edited comment on GROOVY-10771 at 9/27/22 10:07 PM:
----------------------------------------------------------------
Current script imports are as follows (from
{{GroovyTypeCheckingExtensionSupport}}):
{code:java}
public void setup() {
CompilerConfiguration config = new CompilerConfiguration();
config.setScriptBaseClass("org.codehaus.groovy.transform.stc.GroovyTypeCheckingExtensionSupport.TypeCheckingDSL");
ImportCustomizer ic = new ImportCustomizer();
ic.addStarImports("org.codehaus.groovy.ast.expr");
ic.addStaticStars("org.codehaus.groovy.ast.ClassHelper");
ic.addStaticStars("org.codehaus.groovy.transform.stc.StaticTypeCheckingSupport");
config.addCompilationCustomizers(ic);
{code}
so you get:
{code:groovy}
import java.lang.*
import java.util.*
import java.io.*
import java.net.*
import groovy.lang.*
import groovy.util.*
import java.math.BigDecimal
import java.math.BigInteger
import org.codehaus.groovy.ast.expr.*
import static org.codehaus.groovy.ast.ClassHelper.*
import static org.codehaus.groovy.transform.stc.StaticTypeCheckingSupport.*
@groovy.transform.BaseScript(org.codehaus.groovy.transform.stc.GroovyTypeCheckingExtensionSupport.TypeCheckingDSL)
// ...
{code}
was (Author: emilles):
Current script imports are as follows (from
{{GroovyTypeCheckingExtensionSupport}}):
{code:java}
public void setup() {
CompilerConfiguration config = new CompilerConfiguration();
config.setScriptBaseClass("org.codehaus.groovy.transform.stc.GroovyTypeCheckingExtensionSupport.TypeCheckingDSL");
ImportCustomizer ic = new ImportCustomizer();
ic.addStarImports("org.codehaus.groovy.ast.expr");
ic.addStaticStars("org.codehaus.groovy.ast.ClassHelper");
ic.addStaticStars("org.codehaus.groovy.transform.stc.StaticTypeCheckingSupport");
config.addCompilationCustomizers(ic);
{code}
so you get:
{code:groovy}
import org.codehaus.groovy.ast.expr.*
import static org.codehaus.groovy.ast.ClassHelper.*
import static org.codehaus.groovy.transform.stc.StaticTypeCheckingSupport.*
@groovy.transform.BaseScript(org.codehaus.groovy.transform.stc.GroovyTypeCheckingExtensionSupport.TypeCheckingDSL)
// ...
{code}
> Type-checking extension scripts should import AST classes
> ---------------------------------------------------------
>
> Key: GROOVY-10771
> URL: https://issues.apache.org/jira/browse/GROOVY-10771
> Project: Groovy
> Issue Type: Improvement
> Components: Static Type Checker
> Affects Versions: 4.0.5
> Reporter: Christopher Smith
> Assignee: Eric Milles
> Priority: Minor
>
> Scripts used as type-checking extensions have some imports applied
> automatically, but these imports do not include, for example, {{ClassNode}},
> which is the type of some of the callback signatures to be implemented. It
> seems to me that the automatic imports should include
> {code}
> org.codehaus.groovy.ast.*
> org.codehaus.groovy.ast.expr.*
> {code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)