From 3ca647331d10e622ab36467a02ff8c75f7b7ac61 Mon Sep 17 00:00:00 2001 From: Cody Schroeder Date: Fri, 13 Oct 2023 16:19:54 -0400 Subject: [PATCH] fix(java_indexer): add basic MarkedSource for wildcards (#5897) --- .../kythe/analyzers/java/JavaEntrySets.java | 8 +++++- .../java/testdata/pkg/RenderedCode.java | 25 +++++++++++++++++++ 2 files changed, 32 insertions(+), 1 deletion(-) diff --git a/kythe/java/com/google/devtools/kythe/analyzers/java/JavaEntrySets.java b/kythe/java/com/google/devtools/kythe/analyzers/java/JavaEntrySets.java index 74186e7d39..91c3553e3c 100644 --- a/kythe/java/com/google/devtools/kythe/analyzers/java/JavaEntrySets.java +++ b/kythe/java/com/google/devtools/kythe/analyzers/java/JavaEntrySets.java @@ -291,7 +291,13 @@ public EntrySet newWildcardNodeAndEmit(JCTree.JCWildcard wild, String sourcePath return emitAndReturn( newNode(NodeKind.TVAR) .addSignatureSalt(sourcePath + counter) - .setCorpusPath(defaultCorpusPath())); + .setCorpusPath(defaultCorpusPath()) + .setProperty( + "code", + MarkedSource.newBuilder() + .setKind(MarkedSource.Kind.IDENTIFIER) + .setPreText("?") + .build())); } /** Returns and emits a Java anchor for the given offset span. */ diff --git a/kythe/javatests/com/google/devtools/kythe/analyzers/java/testdata/pkg/RenderedCode.java b/kythe/javatests/com/google/devtools/kythe/analyzers/java/testdata/pkg/RenderedCode.java index 926191404e..77ab9b8854 100644 --- a/kythe/javatests/com/google/devtools/kythe/analyzers/java/testdata/pkg/RenderedCode.java +++ b/kythe/javatests/com/google/devtools/kythe/analyzers/java/testdata/pkg/RenderedCode.java @@ -2,6 +2,8 @@ // - Package.code/rendered/signature "package pkg" package pkg; +import java.util.List; + // - @RenderedCode defines/binding RenderedCode // - RenderedCode.code/rendered/signature "public final class RenderedCode" // - RenderedCode.code/rendered/qualified_name "pkg.RenderedCode" @@ -33,12 +35,35 @@ public static class Inner { public static Inner create() { return null; } + + // - @genericList defines/binding GenericList + // - GenericList.code/rendered/signature "List genericList" + List genericList; } // - @CONSTANT defines/binding Constant // - Constant.code/rendered/signature "public static final String CONSTANT" public static final String CONSTANT = "blah"; + // - @arry defines/binding Arry + // - Arry.code/rendered/signature "private int[] arry" + private int[] arry; + + // - @wildcardList defines/binding WildcardList + // - WildcardList.code/rendered/signature "List wildcardList" + // - WildcardList typed WildcardListType + // - WildcardListType param.1 Wildcard + // - Wildcard.code/rendered/signature "?" + List wildcardList; + + // - @extendsBoundedList defines/binding ExtendsBoundedList + // - ExtendsBoundedList.code/rendered/signature "List extendsBoundedList" + List extendsBoundedList; + + // - @superBoundedList defines/binding SuperBoundedList + // - SuperBoundedList.code/rendered/signature "List> superBoundedList" + List> superBoundedList; + // - @E defines/binding E // - E.code/rendered/signature "protected enum E" protected enum E {