aboutsummaryrefslogtreecommitdiff
path: root/crates/ide_completion/src
Commit message (Collapse)AuthorAgeFilesLines
* Implement dummy expansions for builtin attributesLukas Wirth2021-06-092-6/+32
|
*-. Merge #9181 #9182bors[bot]2021-06-088-58/+198
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9181: Don't complete values in type position r=jonas-schievink a=Veykril Will add some proper tests in a bit 9182: fix: don't complete derive macros as fn-like macros r=jonas-schievink a=jonas-schievink Part of https://github.com/rust-analyzer/rust-analyzer/issues/8518 bors r+ Co-authored-by: Lukas Wirth <[email protected]> Co-authored-by: Jonas Schievink <[email protected]>
| | * fix: don't complete derive macros as fn-like macrosJonas Schievink2021-06-083-4/+81
| |/ |/|
| * Add tests checking no value completion in type posLukas Wirth2021-06-083-0/+55
| |
| * Don't complete values in type positionLukas Wirth2021-06-086-54/+62
|/
* simplifyLukas Wirth2021-06-075-36/+33
|
* Remove unnecessary completion::macro_in_item_positionLukas Wirth2021-06-076-72/+17
|
* Reorder CompletionContext fieldsLukas Wirth2021-06-071-16/+14
|
* Move more things into PathCompletionContextLukas Wirth2021-06-078-46/+62
|
* Simplify CompletionContext by introducing a path CallKind enumLukas Wirth2021-06-066-32/+49
|
* Merge #9140bors[bot]2021-06-053-40/+71
|\ | | | | | | | | | | | | | | | | | | 9140: feat: Render documentation for derive completion r=Veykril a=Veykril ![eEzGiq2wNa](https://user-images.githubusercontent.com/3757771/120847308-9c5a3300-c573-11eb-958d-e0f22f4757ed.gif) Nothing fancy as all the std derives aren't really documented though maybe some 3rd party crates document them equally to their trait counterparts. Co-authored-by: Lukas Wirth <[email protected]>
| * Complete third-party attributesLukas Wirth2021-06-041-0/+19
| |
| * Render documentation for derive completionLukas Wirth2021-06-042-40/+52
| |
* | Fix incorrect list nesting in format_like feature descriptionLukas Wirth2021-06-051-9/+9
|/
* Generate default lint completionsLukas Wirth2021-06-044-6618/+4
|
* Implement hover for lintsLukas Wirth2021-06-043-2821/+2930
|
* NFC: remove redundant clones (clippy::perf)Matthias Krüger2021-06-031-1/+1
|
* Remove obsolete is_new_item field on CompletionContextLukas Wirth2021-06-024-17/+5
|
* Add MethodCall and FieldAccess variants to ImmediateLocationLukas Wirth2021-06-027-49/+81
|
* Implement per-edition preludesJonas Schievink2021-06-011-18/+19
|
* Merge #9079bors[bot]2021-05-311-3/+53
|\ | | | | | | | | | | | | | | | | 9079: Don't take the parent kind of trailing attributes in attr completion r=Veykril a=Veykril bors r+ fixes https://github.com/rust-analyzer/rust-analyzer/issues/9076 Co-authored-by: Lukas Wirth <[email protected]>
| * Don't take the parent kind of trailing attributes in attr completionLukas Wirth2021-05-311-3/+53
| |
* | Add config setting for self-on-the-flyLukas Wirth2021-05-314-2/+4
| |
* | Move unprefixed field/method completion to `dot`Lukas Wirth2021-05-313-93/+101
| |
* | Less strings, more hir::NamesLukas Wirth2021-05-314-13/+13
| |
* | Complete `self.` prefixed fields and methods inside methodsLukas Wirth2021-05-316-54/+165
|/
* Use `Name`s instead of Strings in the completion rendering apiLukas Wirth2021-05-3110-142/+165
|
* Merge #9068bors[bot]2021-05-306-146/+163
|\ | | | | | | | | | | | | | | 9068: Move more `CompletinoContext` fields to `ImmediateLocation` r=Veykril a=Veykril bors r+ Co-authored-by: Lukas Wirth <[email protected]>
| * Move more fields to `ImmediateLocation`Lukas Wirth2021-05-306-146/+163
| |
* | Fix incorrect prefer_inner calls on some attribute completionsLukas Wirth2021-05-301-6/+31
|/
* Only complete derive proc macros in `#[derive]`Jonas Schievink2021-05-291-2/+1
|
* Add some lint completion testsLukas Wirth2021-05-293-30/+67
|
* Merge #9027bors[bot]2021-05-293-359/+851
|\ | | | | | | | | | | | | | | | | | | | | 9027: feat: Attribute completion is context aware r=Veykril a=Veykril This splits off the `lint` and `derive` completions into their own submodules of `attribute`. The idea is to create a lazy global hashmap that maps `SyntaxKind` to attribute names(`&[&str]`) in which we index with the syntax kind of the "thing" we are attributing giving us the attributes back that are valid for this kind. Then we use this name to do a binary search on the attribute list to fetch and build the corresponding completion item. Co-authored-by: Lukas Wirth <[email protected]>
| * simplifyLukas Wirth2021-05-293-85/+92
| |
| * Add another attribute completion testLukas Wirth2021-05-281-5/+20
| |
| * Add attribute completion testsLukas Wirth2021-05-281-8/+399
| |
| * tt muncher timeLukas Wirth2021-05-273-27/+57
| |
| * Split attribute completion module into attribute, derive and lint modulesLukas Wirth2021-05-273-366/+302
| |
| * Attribute completion is context awareLukas Wirth2021-05-271-28/+141
| |
* | More completion pattern testsLukas Wirth2021-05-282-86/+109
| |
* | Implement prev sibling determination for `CompletionContext`Lukas Wirth2021-05-283-54/+114
| |
* | simplifyLukas Wirth2021-05-284-112/+117
| |
* | Don't label derive macros with their banged_nameLukas Wirth2021-05-281-1/+5
| |
* | Complete keywords in (Assoc)ItemList with leading attributeLukas Wirth2021-05-282-4/+33
| |
* | Only complete modules in empty use-statementsLukas Wirth2021-05-283-14/+27
|/
* Complete modules in item listsLukas Wirth2021-05-273-4/+45
|
* Complete modules in assoc item listsLukas Wirth2021-05-273-5/+13
|
* Cleanup `ImmediateLocation` determinationLukas Wirth2021-05-275-115/+132
|
* Don't complete non-macro item paths in impls and modulesLukas Wirth2021-05-276-29/+76
|
* simplifyLukas Wirth2021-05-277-36/+37
|