[
https://issues.apache.org/jira/browse/GROOVY-9416?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Daniel Sun updated GROOVY-9416:
-------------------------------
Description:
The fix for GROOVY-9408 has warmed up the cache of {{ResolveVisitor}}, thus the
cache contains *all* classes from the default imported packages, so it is not
necessary to look up non default imported classes against each defaut imported
packages. For example,
In the following code, we do not need to look up {{java.lang.Foo}},
{{java.util.Foo}}, ..., {{groovy.util.Foo}}
{code:java}
Foo foo = new Foo() // Foo is not a default imported classes
{code}
Some test classes are defined under package {{groovy.lang}} and
{{groovy.util}}, e.g. {{groovy.util.Person}}, {{groovy.lang.DummyGStringBase}},
they are not real Groovy core classes and should not be declared in the two
packages, so the fake classes will not be imported be default.
was:
The fix for GROOVY-9408 has warmed up the cache of {{ResolveVisitor}}, thus the
cache contains *all* classes from the default imported packages, so it is not
necessary to look up non default imported classes against each defaut imported
packages. For example,
In the following code, we do not need to look up {{java.lang.Foo}},
{{java.util.Foo}}, ..., {{groovy.util.Foo}}
{code:java}
Foo foo = new Foo() // Foo is not a default imported classes
{code}
> Avoid unnecessary looking up non default import classes when resolving types
> ----------------------------------------------------------------------------
>
> Key: GROOVY-9416
> URL: https://issues.apache.org/jira/browse/GROOVY-9416
> Project: Groovy
> Issue Type: Improvement
> Reporter: Daniel Sun
> Assignee: Daniel Sun
> Priority: Major
> Time Spent: 10m
> Remaining Estimate: 0h
>
> The fix for GROOVY-9408 has warmed up the cache of {{ResolveVisitor}}, thus
> the cache contains *all* classes from the default imported packages, so it is
> not necessary to look up non default imported classes against each defaut
> imported packages. For example,
> In the following code, we do not need to look up {{java.lang.Foo}},
> {{java.util.Foo}}, ..., {{groovy.util.Foo}}
> {code:java}
> Foo foo = new Foo() // Foo is not a default imported classes
> {code}
> Some test classes are defined under package {{groovy.lang}} and
> {{groovy.util}}, e.g. {{groovy.util.Person}},
> {{groovy.lang.DummyGStringBase}}, they are not real Groovy core classes and
> should not be declared in the two packages, so the fake classes will not be
> imported be default.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)