This is an automated email from the ASF dual-hosted git repository.
paulk pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/groovy.git
The following commit(s) were added to refs/heads/master by this push:
new cf301a3a5b minor additional performance tweak
cf301a3a5b is described below
commit cf301a3a5bae91c4ad03511a48cb2d49fbeccf9e
Author: Paul King <[email protected]>
AuthorDate: Sun Nov 30 08:27:28 2025 +1000
minor additional performance tweak
---
src/main/java/org/codehaus/groovy/vmplugin/v9/ClassFinder.java | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/src/main/java/org/codehaus/groovy/vmplugin/v9/ClassFinder.java
b/src/main/java/org/codehaus/groovy/vmplugin/v9/ClassFinder.java
index 6231648859..c66f17d4a1 100644
--- a/src/main/java/org/codehaus/groovy/vmplugin/v9/ClassFinder.java
+++ b/src/main/java/org/codehaus/groovy/vmplugin/v9/ClassFinder.java
@@ -61,6 +61,9 @@ import java.util.regex.Pattern;
* @since 3.0.2
*/
public class ClassFinder {
+ private static final Pattern FILE_SEP_PATTERN =
Pattern.compile(Pattern.quote(File.separator));
+ private static final Pattern SLASH_PATTERN = Pattern.compile("/");
+
/**
* Returns the found classes
*
@@ -125,9 +128,10 @@ public class ClassFinder {
static Map<String, Set<String>> find(URI uri, String prefix, String
packageName, boolean recursive, final boolean innerClasses) {
boolean wfs = "file".equals(uri.getScheme());
+ final Pattern sepPattern = wfs ? FILE_SEP_PATTERN : SLASH_PATTERN;
+
if (wfs) prefix = prefix.replace("/", File.separator);
- final Pattern sepPattern = Pattern.compile(Pattern.quote(wfs ?
File.separator : "/"));
final int prefixElemCnt = prefix.trim().isEmpty() ? 0 :
sepPattern.split(prefix).length;
Map<String, Set<String>> result = new LinkedHashMap<>();