aboutsummaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
* Avoid lossy OsString conversionsLaurențiu Nicola2020-04-255-9/+14
|
* Adds attribute completions (#3941)Roberto Vidal2020-04-245-0/+595
|
* Better label for macros completionAleksey Kladov2020-04-245-48/+59
|
* Merge #4101bors[bot]2020-04-242-12/+5
|\ | | | | | | | | | | | | | | 4101: Panic proc macro srv if read request failed r=matklad a=edwin0cheng This PR fixed a bug when the rust-analyzer is killed suddenly, the `rust-analyzer proc-macro` will become stale. Co-authored-by: Edwin Cheng <[email protected]>
| * Refactor a bitEdwin Cheng2020-04-241-8/+3
| |
| * Bubble up errorEdwin Cheng2020-04-232-10/+7
| |
| * Fix typoEdwin Cheng2020-04-231-1/+1
| |
| * Panic proc macro srv if read request failedEdwin Cheng2020-04-231-2/+3
| |
* | Honor snippet capabilityAleksey Kladov2020-04-242-0/+14
| | | | | | | | closes #2518
* | Make sure that adding a snippet requires corresponding capabilityAleksey Kladov2020-04-246-44/+107
| |
* | Introduce internal snippet capAleksey Kladov2020-04-242-0/+14
| |
* | Move CompletionConfig to a separate moduleAleksey Kladov2020-04-242-19/+20
| |
* | Don't set sortTextAleksey Kladov2020-04-242-18/+10
| | | | | | | | | | | | I might be reading this wrong, but it looks like we are setting it to essentially arbitrary string at the moment, as there are no defined order on the items in the *set* of completions.
* | Add test marksAleksey Kladov2020-04-242-0/+6
| |
* | Introduce ActiveParameterAleksey Kladov2020-04-245-30/+35
| |
* | Move tests to where they belongAleksey Kladov2020-04-242-231/+231
| |
* | RefactorAleksey Kladov2020-04-241-24/+18
| |
* | Restore CompletionItem immutabilityAleksey Kladov2020-04-242-31/+23
| |
* | More functionalAleksey Kladov2020-04-242-11/+18
| |
* | MoveAleksey Kladov2020-04-231-9/+9
| |
* | Merge #4106bors[bot]2020-04-232-1/+42
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 4106: Fix wrong substitution code r=matklad a=flodiebold We need to shift in when we're substituting inside a binder. This should fix #4053 (it doesn't fix the occasional overflow that also occurs on the Diesel codebase though). Co-authored-by: Florian Diebold <[email protected]>
| * | Fix wrong substitution codeFlorian Diebold2020-04-232-1/+42
| | | | | | | | | | | | | | | | | | | | | We need to shift in when we're substituting inside a binder. This should fix #4053 (it doesn't fix the occasional overflow that also occurs on the Diesel codebase though).
* | | Merge #3954bors[bot]2020-04-239-40/+412
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3954: Improve autocompletion by looking on the type and name r=matklad a=bnjjj This tweet (https://twitter.com/tjholowaychuk/status/1248918374731714560) gaves me the idea to implement that in rust-analyzer. Basically for this first example I made some examples when we are in a function call definition. I look on the parameter list to prioritize autocompletions for the same types and if it's the same type + the same name then it's displayed first in the completion list. So here is a draft, first step to open a discussion and know what you think about the implementation. It works (cf tests) but maybe I can make a better implementation at some places. Be careful the code needs some refactoring to be better and concise. PS: It was lot of fun writing this haha Co-authored-by: Benjamin Coenen <[email protected]>
| * | | Improve autocompletion by looking on the type and nameBenjamin Coenen2020-04-212-5/+6
| | | | | | | | | | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
| * | | Improve autocompletion by looking on the type and nameBenjamin Coenen2020-04-211-3/+1
| | | | | | | | | | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
| * | | Merge branch 'master' of github.com:rust-analyzer/rust-analyzerBenjamin Coenen2020-04-2156-392/+1031
| |\ \ \
| * | | | Improve autocompletion by looking on the type and nameBenjamin Coenen2020-04-214-48/+47
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
| * | | | Merge branch 'master' of github.com:rust-analyzer/rust-analyzerBenjamin Coenen2020-04-1828-180/+691
| |\ \ \ \
| * | | | | feat: improve dot completions with scoringBenjamin Coenen2020-04-171-5/+1
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
| * | | | | Merge branch 'master' of github.com:rust-analyzer/rust-analyzerBenjamin Coenen2020-04-1744-322/+1061
| |\ \ \ \ \
| * | | | | | feat: improve dot completions with scoringBenjamin Coenen2020-04-174-77/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
| * | | | | | feat: improve dot completions with scoringBenjamin Coenen2020-04-167-113/+103
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
| * | | | | | feat: improve dot completions in a struct literal expressionBenjamin Coenen2020-04-154-31/+196
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
| * | | | | | add sort_text to sort in editor viewBenjamin Coenen2020-04-142-8/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
| * | | | | | Merge branch 'master' of github.com:rust-analyzer/rust-analyzerBenjamin Coenen2020-04-1424-144/+556
| |\ \ \ \ \ \
| * | | | | | | Improve autocompletion by looking on the type and name, change ↵Benjamin Coenen2020-04-123-26/+96
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | implementation, include sort in Completions struct Signed-off-by: Benjamin Coenen <[email protected]>
| * | | | | | | Improve autocompletion by looking on the type and nameBenjamin Coenen2020-04-11280-4971/+3500
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
| * | | | | | | | Improve autocompletion by looking on the type and nameBenjamin Coenen2020-04-116-30/+194
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
* | | | | | | | | Merge #4111 #4112bors[bot]2020-04-232-3/+38
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4111: Record definitions in `extern` blocks r=jonas-schievink a=jonas-schievink Enables completion of extern functions and statics. Closes https://github.com/rust-analyzer/rust-analyzer/issues/3711 4112: Add Launch configuration for release build r=matklad a=jonas-schievink The debug build takes very long until I can test anything useful, with the release build it's much quicker. Add another Run configuration for it. Co-authored-by: Jonas Schievink <[email protected]>
* | | | | | | | | | minorAleksey Kladov2020-04-231-4/+0
| | | | | | | | | |
| * | | | | | | | | Record definitions in `extern` blocksJonas Schievink2020-04-232-3/+38
|/ / / / / / / / /
* | | | | | | / / Fully get rid of SyntaxNodePtr::rangeAleksey Kladov2020-04-233-24/+40
| |_|_|_|_|_|/ / |/| | | | | | |
* | | | | | | | Cleanup proc_macro configAleksey Kladov2020-04-233-11/+8
| |_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In general, there should be no reason to call `.to_string_lossy`. If you want to display the path, use `.display()`. If you want to pass the path to an OS API (like std::process::Command) than use `PathBuf` or `OsString`.
* | | | | | | Merge #4065bors[bot]2020-04-232-7/+217
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4065: Complete unqualified enum names in patterns and expressions r=matklad a=nathanwhit This PR implements the completion described in #4014. The result looks like so for patterns: <img width="542" alt="Screen Shot 2020-04-20 at 3 53 55 PM" src="https://user-images.githubusercontent.com/17734409/79794010-8f529400-831f-11ea-9673-f838aa9bc962.png"> and for `expr`s: <img width="620" alt="Screen Shot 2020-04-21 at 3 51 24 PM" src="https://user-images.githubusercontent.com/17734409/79908784-d73ded80-83e9-11ea-991d-921f0cb27e6f.png"> I'm not confident that the completion text itself is very robust, as it will unconditionally add completions for enum variants with the form `Enum::Variant`. This means (I believe) it would still suggest `Enum::Variant` even if the local name is changed i.e. `use Enum as Foo` or the variants are brought into scope such as through `use Enum::*`. Co-authored-by: nathanwhit <[email protected]>
| * | | | | | | Update tests to reflect new completionsnathanwhit2020-04-221-1/+1
| | | | | | | |
| * | | | | | | Add tests for enum completionnathanwhit2020-04-221-0/+178
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds tests for completion of enum variants in match arms, if-let statements, and basic expressions.
| * | | | | | | Complete unqualified enum variants when possiblenathanwhit2020-04-221-5/+26
| | | | | | | |
| * | | | | | | Add utility fn for expected type of a nodenathanwhit2020-04-221-1/+12
| | |_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | Adds `expected_type_of` to `CompletionContext` to return the expected type of a node, if it is known.
* | | | | | | Remove SyntaxPtr::range from more placesAleksey Kladov2020-04-233-3/+8
| | | | | | |
* | | | | | | Merge #4093bors[bot]2020-04-231-1/+1
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4093: Simplify config r=matklad a=Veetaha Co-authored-by: veetaha <[email protected]>