You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@groovy.apache.org by pa...@apache.org on 2022/05/03 00:45:51 UTC

[groovy] 03/04: bugfix: (groovy-doc) add star imports in the list of imports used by SimpleGroovyClassDoc

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

commit 7926dd8b1e32b7a72172902221ef5e1a45334509
Author: Stephane Talbot <St...@univ-savoie.fr>
AuthorDate: Sun Apr 24 16:32:05 2022 +0200

    bugfix: (groovy-doc) add star imports in the list of imports used by SimpleGroovyClassDoc
---
 .../src/main/java/org/apache/groovy/antlr/GroovydocVisitor.java       | 4 ++++
 .../org/codehaus/groovy/tools/groovydoc/SimpleGroovyClassDoc.java     | 2 +-
 .../codehaus/groovy/tools/groovydoc/antlr4/GroovydocJavaVisitor.java  | 1 +
 3 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/subprojects/groovy-groovydoc/src/main/java/org/apache/groovy/antlr/GroovydocVisitor.java b/subprojects/groovy-groovydoc/src/main/java/org/apache/groovy/antlr/GroovydocVisitor.java
index 1f90685fd6..b1fa2a06ae 100644
--- a/subprojects/groovy-groovydoc/src/main/java/org/apache/groovy/antlr/GroovydocVisitor.java
+++ b/subprojects/groovy-groovydoc/src/main/java/org/apache/groovy/antlr/GroovydocVisitor.java
@@ -97,6 +97,10 @@ public class GroovydocVisitor extends ClassCodeVisitorSupport {
                 aliases.put(iNode.getAlias(), name.replace('.', '/'));
             }
         }
+        for (ImportNode iNode : node.getModule().getStarImports()) {
+            String name = iNode.getPackageName()+"*";
+            imports.add(name.replace('.', '/'));
+        }
         String name = node.getNameWithoutPackage();
 
         if (node instanceof InnerClassNode) {
diff --git a/subprojects/groovy-groovydoc/src/main/java/org/codehaus/groovy/tools/groovydoc/SimpleGroovyClassDoc.java b/subprojects/groovy-groovydoc/src/main/java/org/codehaus/groovy/tools/groovydoc/SimpleGroovyClassDoc.java
index 0011bbe00b..99f2dfcbfe 100644
--- a/subprojects/groovy-groovydoc/src/main/java/org/codehaus/groovy/tools/groovydoc/SimpleGroovyClassDoc.java
+++ b/subprojects/groovy-groovydoc/src/main/java/org/codehaus/groovy/tools/groovydoc/SimpleGroovyClassDoc.java
@@ -686,7 +686,7 @@ public class SimpleGroovyClassDoc extends SimpleGroovyAbstractableElementDoc imp
                 GroovyClassDoc doc = ((SimpleGroovyRootDoc)rootDoc).classNamedExact(importName);
                 if (doc != null) return doc;
             } else if (importName.endsWith("/*")) {
-                GroovyClassDoc doc = ((SimpleGroovyRootDoc)rootDoc).classNamedExact(importName.substring(0, importName.length() - 2) + baseName);
+                GroovyClassDoc doc = ((SimpleGroovyRootDoc)rootDoc).classNamedExact(importName.substring(0, importName.length() - 1) + baseName);
                 if (doc != null) return doc;
             }
         }
diff --git a/subprojects/groovy-groovydoc/src/main/java/org/codehaus/groovy/tools/groovydoc/antlr4/GroovydocJavaVisitor.java b/subprojects/groovy-groovydoc/src/main/java/org/codehaus/groovy/tools/groovydoc/antlr4/GroovydocJavaVisitor.java
index 184863141d..7b8b1ee7a8 100644
--- a/subprojects/groovy-groovydoc/src/main/java/org/codehaus/groovy/tools/groovydoc/antlr4/GroovydocJavaVisitor.java
+++ b/subprojects/groovy-groovydoc/src/main/java/org/codehaus/groovy/tools/groovydoc/antlr4/GroovydocJavaVisitor.java
@@ -82,6 +82,7 @@ public class GroovydocJavaVisitor extends VoidVisitorAdapter<Object> {
         String qual = qualPath.map(value -> value.asString().replace('.', '/') + "/").orElse("");
         String id = n.getName().getIdentifier();
         String name = qual + id;
+        if (n.isAsterisk()) name +="/*";
         imports.add(name);
         aliases.put(id, name);
         super.visit(n, arg);