aboutsummaryrefslogtreecommitdiff
path: root/crates/ide_completion/src/context.rs
Commit message (Collapse)AuthorAgeFilesLines
* Move more fields to `ImmediateLocation`Lukas Wirth2021-05-301-64/+35
|
* Implement prev sibling determination for `CompletionContext`Lukas Wirth2021-05-281-28/+12
|
* simplifyLukas Wirth2021-05-281-3/+6
|
* Only complete modules in empty use-statementsLukas Wirth2021-05-281-0/+4
|
* Cleanup `ImmediateLocation` determinationLukas Wirth2021-05-271-36/+8
|
* Don't complete non-macro item paths in impls and modulesLukas Wirth2021-05-271-10/+11
|
* simplifyLukas Wirth2021-05-271-3/+10
|
* simplifyLukas Wirth2021-05-271-6/+5
|
* Collapse more CompletionContext booleans into enumsLukas Wirth2021-05-271-49/+94
|
* Set `record_pat_syntax` more precisely in CompletionContextLukas Wirth2021-05-261-29/+25
|
* Merge pattern completion related bools into an enumLukas Wirth2021-05-261-70/+82
|
* simplifyLukas Wirth2021-05-261-29/+34
|
* internal: rename hypothetical -> speculativeAleksey Kladov2021-05-241-10/+10
| | | | | Lets steal this good naming from Roslyn before I forget about it yet again.
* Get rid of field_type againFlorian Diebold2021-05-231-4/+3
|
* Infer correct expected type in closureFlorian Diebold2021-05-231-1/+8
| | | | Sadly currently only works if the closure body isn't completely missing.
* Infer correct expected type for generic struct fieldsFlorian Diebold2021-05-231-16/+16
|
* Record method call substs and use them in call infoFlorian Diebold2021-05-231-0/+60
|
* Add `=` to pattern recoveryLukas Wirth2021-05-081-1/+22
|
* Small macro fixKirill Bulatov2021-05-061-1/+1
|
* internal: use API stabilized in 1.52Aleksey Kladov2021-05-061-1/+1
|
* Make CompletionContext expected_type smarterLukas Tobias Wirth2021-05-031-95/+113
|
* internal: normalize nameAleksey Kladov2021-04-301-2/+2
| | | | All def types in hir are unsubstituted
* Add `'` to trigger_characters, allowing more direct lifetime completionsLukas Wirth2021-03-211-1/+5
|
* Fix incorrect scoping in while expressionsLukas Wirth2021-03-211-13/+11
|
* Add label completionLukas Wirth2021-03-211-6/+22
|
* Merge #8124bors[bot]2021-03-201-3/+31
|\ | | | | | | | | | | | | | | | | | | | | | | | | 8124: Add basic lifetime completion r=Veykril a=Veykril This adds basic lifetime completion, basic in the sense that the completions for lifetimes are only shown when the user enters `'` followed by a char. Showing them when nothing is entered is kind of a pain, as we would want them to only show up where they are useful which in turn requires a lot of tree traversal and cursor position checking to verify whether the position is valid for a lifetime. This in itself doesn't seem too bad as usually when you know you want to write a lifetime putting `'` to ask for lifetime completions seems fine. ~~I'll take a look at whether its possible to lift the restriction of having to put a char after `'`.~~ This actually already works so I guess this is the clients responsibility, in which case VSCode doesn't like it. ![TYH9gIlyVo](https://user-images.githubusercontent.com/3757771/111886437-c9b02f80-89cd-11eb-9bee-340f1536b0de.gif) Co-authored-by: Lukas Wirth <[email protected]>
| * Add basic lifetime completionLukas Wirth2021-03-201-3/+31
| |
* | Don't use an untyped String for ActiveParam trackingLukas Wirth2021-03-201-16/+22
|/
* Merge #8051bors[bot]2021-03-161-3/+3
|\ | | | | | | | | | | | | | | | | | | 8051: Fix more unused wariable warnings r=lnicola a=lnicola bors r+ changelog skip Co-authored-by: Laurențiu Nicola <[email protected]>
| * Fix more unused wariable warningsLaurențiu Nicola2021-03-161-3/+3
| |
* | Upgrade rowanAleksey Kladov2021-03-161-6/+9
|/ | | | Notably, new rowan comes with support for mutable syntax trees.
* Drop non-working markLaurențiu Nicola2021-03-151-2/+0
|
* update algorithm for determining expected type of completionJosh Mcguigan2021-03-151-14/+283
|
* Use upstream cov-markLaurențiu Nicola2021-03-081-2/+2
|
* rename completion -> ide_completionAleksey Kladov2021-02-171-0/+537
We don't have completion-related PRs in flight, so lets do it