aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge #2667bors[bot]2019-12-2921-114/+609
|\ | | | | | | | | | | | | | | 2667: Visibility r=matklad a=flodiebold This adds the infrastructure for handling visibility (for fields and methods, not in name resolution) in the HIR and code model, and as a first application hides struct fields from completions if they're not visible from the current module. (We might want to relax this again later, but I think it's ok for now?) Co-authored-by: Florian Diebold <[email protected]>
| * visible_from -> is_visible_fromFlorian Diebold2019-12-274-10/+10
| |
| * Remove Arc from RawVisibilityFlorian Diebold2019-12-261-11/+6
| | | | | | | | | | Now that it's not used as a direct query return value anymore, it doesn't need to be cheaply cloneable anymore.
| * Fix cross-crate glob privacy handlingFlorian Diebold2019-12-263-6/+28
| |
| * Remove visibility query, instead add struct field visibility to dataFlorian Diebold2019-12-265-102/+35
| | | | | | | | | | Methods should be handled the same, and for items the visibility will be in the def map.
| * Rename ResolvedVisibility -> VisibilityFlorian Diebold2019-12-268-67/+54
| |
| * Rename Visibility -> RawVisibilityFlorian Diebold2019-12-266-40/+40
| |
| * Handle privacy for modulesFlorian Diebold2019-12-263-11/+36
| |
| * Check for `todo!` macros in no_todoFlorian Diebold2019-12-261-1/+1
| |
| * Take visibility into account for glob importsFlorian Diebold2019-12-267-43/+165
| |
| * Keep track of visibility during def collectionFlorian Diebold2019-12-266-54/+120
| |
| * Collect visibility of items during nameresFlorian Diebold2019-12-266-19/+63
| |
| * Add doc commentFlorian Diebold2019-12-261-0/+2
| |
| * Make enum variant fields publicFlorian Diebold2019-12-261-2/+9
| |
| * Hide completions for private struct fieldsFlorian Diebold2019-12-261-1/+56
| |
| * Add visibility in code model for fieldsFlorian Diebold2019-12-262-3/+20
| |
| * Add logic for resolving and checking visibilityFlorian Diebold2019-12-262-1/+60
| |
| * Add infrastructure for visibility on syntax and hir_def levelFlorian Diebold2019-12-265-2/+163
| |
* | Merge #2671bors[bot]2019-12-271-7/+8
|\ \ | | | | | | | | | | | | | | | | | | | | | 2671: anyhow and crossbeam-queue r=kjeremy a=kjeremy Co-authored-by: Jeremy Kolb <[email protected]>
| * | anyhow and crossbeam-queueJeremy Kolb2019-12-271-7/+8
|/ /
* | Merge #2657bors[bot]2019-12-273-18/+62
|\ \ | |/ |/| | | | | | | | | | | | | | | 2657: Omit closure parameters in closure type display strings r=flodiebold a=SomeoneToIgnore Part of https://github.com/rust-analyzer/rust-analyzer/issues/1946 I wonder, should we display the the closure trait (Fn/FnMut/FnOnce) in inlay hints instead of `|...|` at all? Co-authored-by: Kirill Bulatov <[email protected]>
| * Omit closure parametersKirill Bulatov2019-12-233-18/+62
| |
* | Merge #2658bors[bot]2019-12-251-1/+1
|\ \ | | | | | | | | | | | | | | | | | | | | | 2658: Only add features flags if non-empty r=matklad a=edwin0cheng This prevent error when disabled `all-features` in a cargo workspace, because of `--features is not allowed in the root of a virtual workspace` when running `cargo metadata`. Co-authored-by: Edwin Cheng <[email protected]>
| * | Only add features flags if non-emptyEdwin Cheng2019-12-231-1/+1
| | |
* | | Merge #2663bors[bot]2019-12-255-37/+151
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2663: Fill in type params in 'add missing impl members' assist r=flodiebold a=flodiebold Co-authored-by: Florian Diebold <[email protected]>
| * | | Fill in type params in 'add missing impl members' assistFlorian Diebold2019-12-245-37/+151
| | | |
* | | | Merge #2662bors[bot]2019-12-251-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2662: Notify that latest version of VS Code is required r=matklad a=spebern Suggested in #2660. Co-authored-by: bold <[email protected]>
| * | | | Notify that latest version of VS Code is requiredbold2019-12-241-1/+1
| |/ / /
* | | | Merge #2661bors[bot]2019-12-245-3/+110
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2661: Implement infer await from async function r=flodiebold a=edwin0cheng This PR is my attempt for trying to add support for infer `.await` expression from an `async` function, by desugaring its return type to `Impl Future<Output=RetType>`. Note that I don't know it is supposed to desugaring it in that phase, if it is not suitable in current design, just feel free to reject it :) r=@flodiebold Co-authored-by: Edwin Cheng <[email protected]>
| * | | Remove AsyncOwnerEdwin Cheng2019-12-245-13/+6
| | | |
| * | | Check if parameters is emptyEdwin Cheng2019-12-241-4/+6
| | | |
| * | | Add FIXMEEdwin Cheng2019-12-241-1/+5
| | | |
| * | | FormattingEdwin Cheng2019-12-242-3/+4
| | | |
| * | | Implement infer await from async funcEdwin Cheng2019-12-247-5/+112
| |/ /
* | | Merge #2659bors[bot]2019-12-231-9/+9
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | 2659: Update lsp-types and rayon r=kjeremy a=kjeremy Brings in https://github.com/gluon-lang/lsp-types/pull/129 for https://github.com/rust-analyzer/rust-analyzer/issues/2651#issuecomment-568554427 Co-authored-by: Jeremy Kolb <[email protected]>
| * | Update lsp-types and rayonJeremy Kolb2019-12-231-9/+9
|/ /
* | Merge #2655bors[bot]2019-12-233-4/+12
|\ \ | | | | | | | | | | | | | | | | | | | | | 2655: lsp-types 0.67 r=matklad a=kjeremy Co-authored-by: Jeremy Kolb <[email protected]>
| * | lsp-types 0.67Jeremy Kolb2019-12-233-4/+12
|/ /
* | Merge #2636bors[bot]2019-12-238-306/+354
|\ \ | | | | | | | | | | | | | | | | | | | | | 2636: Chalk update and refactoring r=flodiebold a=flodiebold This updates the Chalk integration to https://github.com/rust-lang/chalk/pull/311, which will presumably get merged soon, and refactors it some more, most notably introducing our own `TypeFamily` instead of reusing `ChalkIr`. It's still mostly the same as `ChalkIr` though, except for using Salsa `InternId`s directly. Co-authored-by: Florian Diebold <[email protected]>
| * | Filter out error predicates in type bounds as wellFlorian Diebold2019-12-222-2/+29
| | |
| * | Introduce our own Chalk TypeFamily, instead of using ChalkIrFlorian Diebold2019-12-224-87/+126
| | | | | | | | | | | | | | | | | | It's not very different, except we can directly use Salsa IDs instead of casting them. This means we need to refactor the handling of errors to get rid of UNKNOWN_TRAIT though.
| * | Refactor Chalk integration some moreFlorian Diebold2019-12-222-79/+83
| | |
| * | Update Chalk, clean up Chalk integration a bitFlorian Diebold2019-12-225-153/+131
| |/
* | Merge #2652bors[bot]2019-12-232-4/+4
|\ \ | |/ |/| | | | | | | | | | | 2652: Bump lsp-types to 0.66.0 (fixes #2651) r=matklad a=udoprog Co-authored-by: John-John Tedro <[email protected]>
| * Bump lsp-types to 0.66.0 (fixes #2651)John-John Tedro2019-12-232-4/+4
|/
* Merge #2648bors[bot]2019-12-227-65/+163
|\ | | | | | | | | | | | | | | 2648: Rudimentary name resolution for local items r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * Rudimentary name resolution for local itemsAleksey Kladov2019-12-226-49/+145
| |
| * SimplifyAleksey Kladov2019-12-222-16/+17
| |
| * RefactorAleksey Kladov2019-12-222-10/+11
|/
* Merge #2646bors[bot]2019-12-223-53/+56
|\ | | | | | | | | | | | | | | 2646: Share impl Scope between modules and blocks r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>