You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@groovy.apache.org by em...@apache.org on 2020/12/07 18:06:36 UTC
[groovy] 01/03: fix parameter passing and use map interface
This is an automated email from the ASF dual-hosted git repository.
emilles pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/groovy.git
commit 1adf2561145061133d3a6e93a3b4202f24c4396f
Author: Eric Milles <er...@thomsonreuters.com>
AuthorDate: Mon Dec 7 11:44:32 2020 -0600
fix parameter passing and use map interface
---
src/main/java/org/codehaus/groovy/control/ResolveVisitor.java | 10 ++++------
1 file changed, 4 insertions(+), 6 deletions(-)
diff --git a/src/main/java/org/codehaus/groovy/control/ResolveVisitor.java b/src/main/java/org/codehaus/groovy/control/ResolveVisitor.java
index 2c05616..adf1a38 100644
--- a/src/main/java/org/codehaus/groovy/control/ResolveVisitor.java
+++ b/src/main/java/org/codehaus/groovy/control/ResolveVisitor.java
@@ -63,7 +63,6 @@ import org.codehaus.groovy.ast.stmt.CatchStatement;
import org.codehaus.groovy.ast.stmt.ForStatement;
import org.codehaus.groovy.ast.stmt.Statement;
import org.codehaus.groovy.control.ClassNodeResolver.LookupResult;
-import org.codehaus.groovy.runtime.memoize.EvictableCache;
import org.codehaus.groovy.runtime.memoize.UnlimitedConcurrentCache;
import org.codehaus.groovy.syntax.Types;
import org.codehaus.groovy.transform.trait.Traits;
@@ -327,7 +326,7 @@ public class ResolveVisitor extends ClassCodeExpressionTransformer {
}
private void resolveOrFail(final ClassNode type, final String msg, final ASTNode node) {
- resolveOrFail(type, "", node, false);
+ resolveOrFail(type, msg, node, false);
}
private void resolveOrFail(final ClassNode type, final String msg, final ASTNode node, final boolean preferImports) {
@@ -643,10 +642,9 @@ public class ResolveVisitor extends ClassCodeExpressionTransformer {
return false;
}
- private static final EvictableCache<String, Set<String>> DEFAULT_IMPORT_CLASS_AND_PACKAGES_CACHE = new UnlimitedConcurrentCache<>();
+ private static final Map<String, Set<String>> DEFAULT_IMPORT_CLASS_AND_PACKAGES_CACHE = new UnlimitedConcurrentCache<>();
static {
- Map<String, Set<String>> defaultImportClasses = VMPluginFactory.getPlugin().getDefaultImportClasses(DEFAULT_IMPORTS);
- DEFAULT_IMPORT_CLASS_AND_PACKAGES_CACHE.putAll(defaultImportClasses);
+ DEFAULT_IMPORT_CLASS_AND_PACKAGES_CACHE.putAll(VMPluginFactory.getPlugin().getDefaultImportClasses(DEFAULT_IMPORTS));
}
protected boolean resolveFromDefaultImports(final ClassNode type, final String[] packagePrefixes) {
@@ -664,7 +662,7 @@ public class ResolveVisitor extends ClassCodeExpressionTransformer {
type.setRedirect(tmp.redirect());
if (DEFAULT_IMPORTS == packagePrefixes) { // Only the non-cached type and packages should be cached
- Set<String> packagePrefixSet = DEFAULT_IMPORT_CLASS_AND_PACKAGES_CACHE.getAndPut(typeName, key -> new HashSet<>(2));
+ Set<String> packagePrefixSet = DEFAULT_IMPORT_CLASS_AND_PACKAGES_CACHE.computeIfAbsent(typeName, key -> new HashSet<>(2));
packagePrefixSet.add(packagePrefix);
}