Better refinement symbols in semanticDB - #18604
Conversation
|
@tanishiking @rochala @natsukagami is this still relevant? Do you mean to work on this in the near future, or should we close it? |
It does still seem relevant, we would have to rebase an make sure it all still passes. I will take a look |
9652846 to
a66dd3e
Compare
a66dd3e to
938a6af
Compare
|
Rebased again, since #25296 would likely fix the CI failure. |
| val s/*<-advanced::Test.s.*/ = new Structural/*->advanced::Structural#*/ | ||
| val s1/*<-advanced::Test.s1.*/ = s/*->advanced::Test.s.*/.s1/*->advanced::Structural#s1().*/ | ||
| val s1x/*<-advanced::Test.s1x.*/ = s/*->advanced::Test.s.*/.s1/*->advanced::Structural#s1().*/.x/*->scala::reflect::Selectable#selectDynamic().*/ | ||
| val s1x/*<-advanced::Test.s1x.*/ = s/*->advanced::Test.s.*/.s1/*->advanced::Structural#s1().*/.x/*->local13*/ |
There was a problem hiding this comment.
This change might be unexpected, but the issue is that we don't have a way to represent a member of a type that is defined as result of the method. We should do a follow up for this. Maybe go the route of parameters?
Previosuly all `Select` on refined types have had symbol from `reflect.Selectable` and their definitions were not global. This change should improve navigation and rename in Metals and allow further changes in presentation compiler module, in order to provide better highlighting and hover
938a6af to
0ddde96
Compare
|
Ok., this is ready to review. I think this is an overall improvement, though there might be some things to improve later on still. |
Previosuly all `Select` on refined types have had symbol from `reflect.Selectable` and their definitions were not global. This change should improve navigation and rename in Metals and allow further changes in presentation compiler module, in order to provide better highlighting and hover --------- Co-authored-by: Jakub Ciesluk <323892@uwr.edu.pl> Co-authored-by: Tomasz Godzik <tgodzik@virtuslab.com> [Cherry-picked f33c7d4][modified]
Previosuly all
Selecton refined types have had symbol fromreflect.Selectableand their definitions were not global. This change should improve navigation and rename in Metals and allow further changes in presentation compiler module, in order to provide better highlighting and hover