-
Notifications
You must be signed in to change notification settings - Fork 165
Use ImplementationProvider API #288
Comments
Alternatively, albeit a bigger change, you can implement the implementation-provider logic in the LSP, not the client. Then all editor will benefit from this. |
FYI @jonathandturner |
Hi I'm looking to get started contributing to the Rust community, specifically with regards to improving the tools I'm currently using to develop Rust. This seems like an easy enough issue for me to start on. Hopefully I'll get it taken care of this week. Just wanted to stake my claim on it so that two people aren't working on it at the same time. |
I swapped out the API calls but I can't seem to get it to work on any of my projects. Up until now I haven't used this feature of the extension. Can someone give a simple example of the rust code this feature should work on and the expected results? My understanding is that in the below example when Go To Implementation is called on Foo it should jump to the impl Display block struct Foo {
bar: i32
}
impl Display for Foo {
fn fmt(&self, f: &mut std::fmt::Formatter) -> Result<(), std::fmt::Error> {
...
}
} |
@chuck-flowers hey, great to see more people involved! However, the timing is (un?)fortunate, since we moved to LSP 3.6 I've tagged few more issues with good-first-issue label - might I suggest looking at few of these instead? Some are going to be easier than others - I'll try and help get you started if you want to work on any of these! In the meantime, closing this since it's implemented and new version containing the fix should be published now. |
Re on how the feature should work: currently you can request that on „trait
MyTrait” and jump to any „impl MyTrait for ...” items.
…On Sat, 21 Jul 2018 at 12:40, chuck-flowers ***@***.***> wrote:
I swapped out the API calls but I can't seem to get it to work on any of
my projects. Up until now I haven't used this feature of the extension. Can
someone give a simple example of the rust code this feature should work on
and the expected results?
My understanding is that in the below example when Go To Implementation is
called on Foo it should jump to the impl Display block
struct Foo {
bar: i32
}
impl Display for Foo {
fn fmt(&self, f: &mut std::fmt::Formatter) -> Result<(), std::fmt::Error> {
...
}
}
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#288 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AC8y3fBHgT98SMoiUIutARKXmTb3nrt4ks5uIwUKgaJpZM4S-rqe>
.
|
Travis: improve speed
This extension comes with a command that find implementations for traits, structs, and enums. That's pretty cool but even cooler would be if the
ImplementationProvider
-api would be used. That gives a nicer integration and prevents double commands as shown below:The implementation should be straight forward and is more or less swapping the command with a provider here. Error handling, showing results in peek or jumping to the first implementation then comes for free.
Something like this:
The text was updated successfully, but these errors were encountered: