Include implementations in Find References for interface methods#19
Merged
ogiekako merged 1 commit intogoogle:mainfrom Feb 4, 2026
Merged
Include implementations in Find References for interface methods#19ogiekako merged 1 commit intogoogle:mainfrom
ogiekako merged 1 commit intogoogle:mainfrom
Conversation
Previously, "Find References" for an interface method missed the implementations of that method in classes implementing the interface. This change overrides `visitMethod` in `FindReferences.java` to check if a visited method overrides the target method using `Elements.overrides`. If it does, it is added to the list of references. The method definition itself is excluded from the references list, making the results strictly "usages" (including overrides/implementations). Additionally, the location of the reference for implementations is now refined to point exactly to the method name, rather than the entire method declaration. Tests are updated to: 1. Verify implementations are found for interface methods. 2. Verify unrelated methods with the same name are not found. 3. Verify definitions are NOT included in the results. 4. Verify the reference location points to the method name. For google#16
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Previously, "Find References" for an interface method missed the implementations of that method in classes implementing the interface.
This change overrides
visitMethodinFindReferences.javato check if a visited method overrides the target method usingElements.overrides. If it does, it is added to the list of references.The method definition itself is excluded from the references list, making the results strictly "usages" (including overrides/implementations).
Additionally, the location of the reference for implementations is now refined to point exactly to the method name, rather than the entire method declaration.
Tests are updated to:
For #16