aboutsummaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
* Switch from Vec<InlayKind> to object with propsSteffen Lyngbaek2020-03-127-56/+21
| | | | | | | - Instead of a single object type, use several individual nested types to allow toggling from the settings GUI - Remove unused struct definitions - Install and test that the toggles work
* Deduplicate some Inlay definitionsSteffen Lyngbaek2020-03-113-36/+31
| | | | - Remove match conversion for InlayKind since we're using remote
* Address Issues from GithubSteffen Lyngbaek2020-03-108-43/+74
| | | | | | | - Updated naming of config - Define struct in ra_ide and use remote derive in rust-analyzer/config - Make inlayConfig type more flexible to support more future types - Remove constructor only used in tests
* Parameter inlay hint separate from variable type inlay? #2876Steffen Lyngbaek2020-03-107-24/+123
| | | | | | | | | Add setting to allow enabling either type inlay hints or parameter inlay hints or both. Group the the max inlay hint length option into the object. - Add a new type for the inlayHint options. - Add tests to ensure the inlays don't happen on the server side
* Fix completion with a partially unknown typeFlorian Diebold2020-03-102-3/+56
| | | | | | | | | | | | | | To test whether the receiver type matches for the impl, we unify the given self type (in this case `HashSet<{unknown}>`) with the self type of the impl (`HashSet<?0>`), but if the given self type contains Unknowns, they won't be unified with the variables in those places. So we got a receiver type that was different from the expected one, and concluded the impl doesn't match. The fix is slightly hacky; if after the unification, our variables are still there, we make them fall back to Unknown. This does make some sense though, since we don't want to 'leak' the variables. Fixes #3547.
* Move FeatureFlagsAleksey Kladov2020-03-108-42/+24
|
* Pull completion options up to the rust-analyzerAleksey Kladov2020-03-105-23/+31
|
* Introduce CompletionOptionsAleksey Kladov2020-03-106-18/+48
|
* Merge #3536bors[bot]2020-03-103-15/+61
|\ | | | | | | | | | | | | | | | | | | | | | | 3536: Add get and set for `Env` r=matklad a=edwin0cheng This PR add three things : 1. Add `get` and `set` in `Env`. 2. Implement fixture meta for `with_single_file`. 3. Add `env` meta in fixture. Co-authored-by: Edwin Cheng <[email protected]>
| * Check only one fixtureEdwin Cheng2020-03-101-1/+6
| |
| * Add fixture meta for single file fixtureEdwin Cheng2020-03-103-15/+56
| |
* | Merge pull request #3506 from slyngbaek/3183Aleksey Kladov2020-03-101-16/+128
|\ \ | |/ |/| Next steps in assoc item completion #3183
| * Switch to explicit offsets for impl_defSteffen Lyngbaek2020-03-091-26/+11
| | | | | | | | Blacklists are prone to more errors
| * Clean up completion matching.Steffen Lyngbaek2020-03-091-24/+53
| | | | | | | | - Add test to ensure nested completions don't happen
| * Don't allow nested completionsSteffen Lyngbaek2020-03-081-13/+18
| |
| * Next steps in assoc item completion #3183Steffen Lyngbaek2020-03-071-6/+99
| | | | | | | | | | | | | | | | Allow trait autocompletions for unimplemented associated fn's, types, and consts without using explicit keywords before hand (fn, type, const). The sequel to #3108.
* | :arrow_up: fstAleksey Kladov2020-03-102-3/+3
| |
* | Merge #3533bors[bot]2020-03-094-4/+4
|\ \ | | | | | | | | | | | | | | | | | | | | | 3533: Updates insta to 0.15.0 and bumps console to 0.10.0 r=matklad a=kjeremy Co-authored-by: kjeremy <[email protected]>
| * | Updates insta to 0.15.0 and bumps console to 0.10.0kjeremy2020-03-094-4/+4
| | |
* | | Fix SelectionRange return typekjeremy2020-03-093-5/+7
|/ /
* | Print crate name in profilAleksey Kladov2020-03-091-1/+2
| |
* | Merge #3527bors[bot]2020-03-099-56/+37
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3527: Simplify r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | SimplifyAleksey Kladov2020-03-092-8/+2
| | |
| * | SimplifyAleksey Kladov2020-03-091-18/+8
| | |
| * | Minimize APIAleksey Kladov2020-03-092-7/+3
| | |
| * | Use `Index` for CrateGraphAleksey Kladov2020-03-099-23/+24
| | |
* | | Merge #3526bors[bot]2020-03-092-3/+12
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | | | | 3526: Silence "file out of workspace" errors r=matklad a=matklad We really should fix this limitation of the VFS, but it's some way off at the moment, so let's just silence the user-visible error for now. Co-authored-by: Aleksey Kladov <[email protected]>
| * | Silence "file out of workspace" errorsAleksey Kladov2020-03-092-3/+12
| | | | | | | | | | | | | | | We really should fix this limitation of the VFS, but it's some way off at the moment, so let's just silence the user-visible error for now.
* | | Merge #3519bors[bot]2020-03-0918-121/+270
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | 3519: Show mod path on hover r=matklad a=SomeoneToIgnore Closes #1064 Co-authored-by: Kirill Bulatov <[email protected]>
| * | Less abstract CrateData apiKirill Bulatov2020-03-099-51/+48
| | |
| * | Consider crate declaration namesKirill Bulatov2020-03-0811-86/+135
| | |
| * | Show mod path in hover tooltipKirill Bulatov2020-03-074-29/+132
| | |
* | | Merge #3513bors[bot]2020-03-0913-42/+527
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3513: Completion in macros r=matklad a=flodiebold I experimented a bit with completion in macros. It's kind of working, but there are a lot of rough edges. - I'm trying to expand the macro call with the inserted fake token. This requires some hacky additions on the HIR level to be able to do "hypothetical" expansions. There should probably be a nicer API for this, if we want to do it this way. I'm not sure whether it's worth it, because we still can't do a lot if the original macro call didn't expand in nearly the same way. E.g. if we have something like `println!("", x<|>)` the expansions will look the same and everything is fine; but in that case we could maybe have achieved the same result in a simpler way. If we have something like `m!(<|>)` where `m!()` doesn't even expand or expands to something very different, we don't really know what to do anyway. - Relatedly, there are a lot of cases where this doesn't work because either the original call or the hypothetical call doesn't expand. E.g. if we have `m!(x.<|>)` the original token tree doesn't parse as an expression; if we have `m!(match x { <|> })` the hypothetical token tree doesn't parse. It would be nice if we could have better error recovery in these cases. Co-authored-by: Florian Diebold <[email protected]>
| * | | Move hypothetical expansion to hir_expandFlorian Diebold2020-03-084-39/+43
| | | |
| * | | Remove TODOsFlorian Diebold2020-03-071-5/+6
| | | |
| * | | Fix CompletionContext module field (by removing it)Florian Diebold2020-03-073-8/+6
| | | | | | | | | | | | | | | | | | | | Two uses only needed the crate; one was wrong and should use the module from the scope instead.
| * | | Add some sanity checksFlorian Diebold2020-03-071-1/+10
| | | |
| * | | Fix record pattern completionFlorian Diebold2020-03-073-1/+30
| | | |
| * | | Fix record literal completionFlorian Diebold2020-03-072-3/+33
| | | |
| * | | Fix range for postfix snippetsFlorian Diebold2020-03-071-2/+63
| | | |
| * | | Add more testsFlorian Diebold2020-03-073-1/+54
| | | |
| * | | Try to complete within macrosFlorian Diebold2020-03-078-38/+338
| |/ /
* | | Merge #3516bors[bot]2020-03-094-19/+217
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3516: Handle visibility in more cases in completion r=matklad a=flodiebold This means we don't show private items when completing paths or method calls. We might want to show private items if we can edit their definition and provide a "make public" assist, but I feel like we'd need better sorting of completion items for that, so they can be not shown or sorted to the bottom by default. Until then, they're usually more of a distraction to me. Co-authored-by: Florian Diebold <[email protected]>
| * | | Handle visibility for assoc item path completion as wellFlorian Diebold2020-03-083-22/+124
| | | |
| * | | Handle visibility for path completion (not in all cases yet)Florian Diebold2020-03-082-5/+51
| | | |
| * | | Handle visibility in method call completionFlorian Diebold2020-03-073-4/+54
| |/ /
* | | Merge #3518bors[bot]2020-03-095-37/+213
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3518: Add parse_to_token_tree r=matklad a=edwin0cheng This PR introduce a function for parsing `&str` to `tt::TokenTree`: ```rust // Convert a string to a `TokenTree` pub fn parse_to_token_tree(text: &str) -> Option<(tt::Subtree, TokenMap)> { ```` Co-authored-by: Edwin Cheng <[email protected]>
| * | | Add parse_to_token_treeEdwin Cheng2020-03-085-37/+213
| |/ /
* | | Merge #3524bors[bot]2020-03-091-0/+3
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3524: Ignore client-specific notifications r=matklad a=matklad closes #3523 bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | Ignore client-specific notificationsAleksey Kladov2020-03-091-0/+3
| |/ / | | | | | | | | | closes #3523