-
-
Notifications
You must be signed in to change notification settings - Fork 78
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
feat(lsp): support for completions #306
Conversation
Codecov Report
@@ Coverage Diff @@
## master #306 +/- ##
==========================================
- Coverage 80.86% 80.80% -0.07%
==========================================
Files 245 258 +13
Lines 14937 15480 +543
==========================================
+ Hits 12079 12508 +429
- Misses 2858 2972 +114
Continue to review full report at Codecov.
|
7231701
to
613064a
Compare
2f7cbb0
to
90f1a79
Compare
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.
Generally looks good. It's a lot of complex code though, so I didn't comprehend it all. I noticed that quite a lot of code was untested. As this is (seemingly) complex code, it'd be good to add a broader suite of tests (as we keep expanding on our LSP.
// context. The actual original_file will be used for completion. | ||
let file_with_fake_ident = { | ||
let parse = db.parse(position.file_id); | ||
let edit = Indel::insert(position.offset, String::from("intellijRulezz")); |
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.
Mun Rulezz!
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.
"intellijRulezz" is a standard string used for this purpose
8993d02
to
b1f50b2
Compare
b1f50b2
to
012fa9e
Compare
Adds initial support for completions for IDEs. This is far from finished, there is a lot more to add but I didn't want to make this too big. Currently supports two types of completion:
I used the same design as Rust Analyzer.
This PR depends on #298