-
-
Couldn't load subscription status.
- Fork 32
Fix navigation to method calls within lambdas and static initializers #308
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Ready |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
enigma/src/main/java/org/quiltmc/enigma/impl/source/vineflower/EnigmaTextTokenCollector.java
Outdated
Show resolved
Hide resolved
enigma/src/main/java/org/quiltmc/enigma/impl/source/vineflower/EnigmaTextTokenCollector.java
Outdated
Show resolved
Hide resolved
|
This fixes the issue for VineFlower but not Procyon; I've created sub-issues. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i may be doing something wrong but i was unable to get this to work for lambdas. using enigma's built in :lambdaTestGui, navigating to the top call (in the top level of the method) works, but as before, the two calls inside the lambda and nested lambda do not navigate properly.

however, this does fix the issue for static init!
enigma/src/main/java/org/quiltmc/enigma/impl/source/vineflower/EnigmaTextTokenCollector.java
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks great! this is a huge fix, i'm so happy to get it in.
i'd appreciate if you could add some unit testing for this, but if not i can always just open an issue and get to it when i have time. thanks for the PR!
|
I think I'll let you handle the unit tests for this one. |
|
sounds good! |

Fixes #311
This PR uses a Java parsing library to parse the source code to obtain ranges. This means it would add an additional dependency, but this seems like the better option compared to the alternative of parsing it manually.