aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Remove InsertPos::Before variant in Syntax RewriterLukas Wirth2020-10-241-13/+20
|
* Support insertion in SyntaxRewriterLukas Wirth2020-10-241-24/+134
|
* Merge #6337bors[bot]2020-10-242-37/+135
|\ | | | | | | | | | | | | | | 6337: Fix indentation of inserted use statements r=flodiebold a=flodiebold Co-authored-by: Florian Diebold <[email protected]>
| * Fix indentation of inserted use statementsFlorian Diebold2020-10-242-37/+135
|/
* Merge #6330bors[bot]2020-10-241-16/+17
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6330: Textmate grammar: raw IDs, underscore fixes (closes #6293, #6340) r=dustypomerleau a=dustypomerleau Fixes https://github.com/rust-analyzer/rust-analyzer/issues/6293. I've included the possibility of the `r#` prefix in: - function definitions - function/method calls - variables/parameters This way the raw ID will simply get whatever the intended scope was, instead of a unique scope that might be inappropriately themed for its purpose. Will wait a bit for feedback, in case there are other places you might use raw IDs. Co-authored-by: Dusty Pomerleau <[email protected]>
| * fix: underscores, raw IDsDusty Pomerleau2020-10-241-16/+17
|/ | | | | | - remove comment scope from ignored params - underscores will automatically receive variable/param scope - add raw ID syntax to modules, functions, and variables
*-. Merge #6251 #6310bors[bot]2020-10-2313-32/+469
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6251: Semantic Highlight: Add Callable modifier for variables r=matklad a=GrayJack This PR added the `HighlightModifier::Callable` variant and assigned it to variables and parameters that are fn pointers, closures and implements FnOnce trait. This allows to colorize these variables/parameters when used in call expression. 6310: Rewrite algo::diff to support insertion and deletion r=matklad a=Veykril This in turn also makes `algo::diff` generate finer diffs(maybe even minimal diffs?) as insertions and deletions aren't always represented as as replacements of parent nodes now. Required for #6287 to go on. Co-authored-by: GrayJack <[email protected]> Co-authored-by: Lukas Wirth <[email protected]>
| | * algo::diff testsLukas Wirth2020-10-222-4/+327
| | |
| | * Rewrite algo::diff to support insertion and deletionLukas Wirth2020-10-225-25/+68
| | |
| * | Add tests for callable modifierGrayJack2020-10-212-0/+38
| | |
| * | Editor: Code: Add callable to package.jsonGrayJack2020-10-161-0/+4
| | |
| * | Add Callable modifier for variables that implements FnonceGrayJack2020-10-162-3/+24
| | |
| * | Add HighlightModifier::Callable and add it for localsGrayJack2020-10-164-0/+8
| | |
* | | Merge #6339bors[bot]2020-10-239-104/+224
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6339: Diagnose #[cfg]s in bodies r=matklad a=jonas-schievink This PR threads diagnostics through body lowering using the `BodySourceMap`, and emits `InactiveCode` diagnostics for expressions, statements, and match arms that are `#[cfg]`d out. Co-authored-by: Jonas Schievink <[email protected]>
| * | | Fix name of InactiveCode diagnosticJonas Schievink2020-10-232-7/+7
| | | |
| * | | Diagnose #[cfg]s in bodiesJonas Schievink2020-10-239-98/+218
| | | |
* | | | Merge #6336bors[bot]2020-10-231-7/+23
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6336: Improve Chalk debugging r=matklad a=flodiebold - add panic context for the trait goal if CHALK_DEBUG is set - print the Chalk program even if we're panicking - log goal/solution while TLS is still set Co-authored-by: Florian Diebold <[email protected]>
| * | | | Improve Chalk debuggingFlorian Diebold2020-10-231-7/+23
| |/ / / | | | | | | | | | | | | | | | | | | | | - add panic context for the trait goal if CHALK_DEBUG is set - print the Chalk program even if we're panicking - log goal/solution while TLS is still set
* | | | Merge #6341bors[bot]2020-10-231-8/+62
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | 6341: Complete variants when only enun name is typed r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | Complete variants when only enun name is typedAleksey Kladov2020-10-231-8/+62
|/ / / | | | | | | | | | | | | This allows the client to filter `Foo::Bar` when *either* `Foo` or `Bar` is typed.
* | | Merge #6335bors[bot]2020-10-232-5/+5
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6335: Fix panic context r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | Fix panic contextAleksey Kladov2020-10-232-5/+5
| | | |
* | | | Merge #6324bors[bot]2020-10-2315-140/+816
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6324: Improve #[cfg] diagnostics r=jonas-schievink a=jonas-schievink Unfortunately I ran into https://github.com/rust-analyzer/rust-analyzer/issues/4058 while testing this on https://github.com/nrf-rs/nrf-hal/, so I didn't see much of it in action yet, but it does seem to work. Co-authored-by: Jonas Schievink <[email protected]> Co-authored-by: Jonas Schievink <[email protected]>
| * | | | cfg: move tests to separate fileJonas Schievink2020-10-234-208/+195
| | | | | | | | | | | | | | | | | | | | | | | | | that way we don't have to re-check the entire project when a test is changed
| * | | | Reorder itemsJonas Schievink2020-10-231-9/+9
| | | | |
| * | | | Use format_toJonas Schievink2020-10-231-4/+3
| | | | | | | | | | | | | | | | | | | | Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | Update crates/cfg/src/cfg_expr.rsJonas Schievink2020-10-221-1/+1
| | | | | | | | | | | | | | | Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | Emit better #[cfg] diagnosticsJonas Schievink2020-10-229-65/+124
| | | | |
| * | | | Fix typoJonas Schievink2020-10-222-1/+2
| | | | |
| * | | | Implement DNF-based `#[cfg]` introspectionJonas Schievink2020-10-225-2/+622
| | | | |
| * | | | Simplify cfg representationJonas Schievink2020-10-213-31/+41
| | | | |
* | | | | Merge #6098bors[bot]2020-10-225-26/+132
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6098: Insert ref for completions r=adamrk a=adamrk Follow up to https://github.com/rust-analyzer/rust-analyzer/pull/5846. When we have a local in scope which needs a ref or mutable ref to match the name and type of the active in the completion context then a new completion item with `&` or `&mut ` is inserted. E.g. ```rust fn foo(arg: &i32){}; fn main() { let arg = 1_i32; foo(a<|>) } ``` now offers `&arg` as a completion option with the highest score. Co-authored-by: adamrk <[email protected]>
| * | | | | Insert ref for completionsadamrk2020-10-225-26/+132
|/ / / / /
| | | | |
| \ \ \ \
*-. \ \ \ \ Merge #6325 #6327bors[bot]2020-10-222-1/+8
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6325: Add generated diagnostic docs to the manual r=matklad a=flodiebold It seemed that we're not actually including the generated diagnostic docs anywhere yet? So I added something to the manual. This is completely untested though. 6327: Update debugging.md r=matklad a=stanciuadrian `on_task` is no longer there. I have used `on_request` instead. Co-authored-by: Florian Diebold <[email protected]> Co-authored-by: Adrian Stanciu <[email protected]>
| | * | | | | Update debugging.mdAdrian Stanciu2020-10-221-1/+1
| | | |/ / / | | |/| | |
| * / | | | Add generated diagnostic docs to the manualFlorian Diebold2020-10-221-0/+7
| |/ / / /
* | | | | Merge #6326bors[bot]2020-10-221-1/+28
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6326: hide paramater inlay hints for cloned vars if applicable r=SomeoneToIgnore a=Veykril This causes `foo.clone()` parameters to be handled as if they were just `foo` parameters for inlay hint logic. Fixes #6315 Co-authored-by: Lukas Wirth <[email protected]>
| * | | | Hide paramater inlay hints for cloned vars if applicableLukas Wirth2020-10-221-1/+28
| | |_|/ | |/| |
* | | | Merge #6319bors[bot]2020-10-222-3/+34
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6319: Properly identify camel cased acronyms as UpperCamelCase r=popzxc a=ArifRoktim This closes #6305. Co-authored-by: Arif Roktim <[email protected]>
| * | | | Properly identify camel cased acronyms as UpperCamelCaseArif Roktim2020-10-212-3/+34
| |/ / /
| | | |
| \ \ \
*-. \ \ \ Merge #6320 #6321bors[bot]2020-10-222-23/+58
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6320: Textmate grammar: prevent line comments from breaking block comments (closes #6281) r=matklad a=dustypomerleau Fixes https://github.com/rust-analyzer/rust-analyzer/issues/6281. Previously, line comments were able to break block comments by essentially commenting out the closing `*/`, resulting in a never-ending comment. This PR splits block comments into a separate repository group to fix this problem. Since the comment scopes also include ignored parameters and inferred types, I've added the change proposed by @bnjjj in https://github.com/rust-analyzer/rust-analyzer/pull/6317, in order to close https://github.com/rust-analyzer/rust-analyzer/issues/6311 as well. 6321: Fix opening module documentation opening parent documentation instead r=matklad a=zacps The whole path/URL joining code is kind of ugly which is what led to this, but at the same time I don't really want to rewrite it right now... Fixes https://github.com/rust-analyzer/rust-analyzer/issues/6286 Co-authored-by: Dusty Pomerleau <[email protected]> Co-authored-by: Zac Pullar-Strecker <[email protected]>
| | * | | | Fix opening module documentation opening parent documentation insteadZac Pullar-Strecker2020-10-221-4/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The whole path/URL joining code is kind of ugly which is what led to this, but at the same time I don't really want to rewrite it right now...
| * | | | | fix: prevent line comments inside block commentsDusty Pomerleau2020-10-221-19/+34
| |/ / / / | | | | | | | | | | | | | | | | | | | | - prevent line comments inside block comments - prevent underscore-prefixed functions and macros from receiving comment scope
* | | | | Merge #6314bors[bot]2020-10-221-2/+40
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6314: generate assist respect cfg attributes r=matklad a=bnjjj close #6312 Co-authored-by: Benjamin Coenen <[email protected]>
| * | | | generate_impl assist respect cfg attributes #6312Benjamin Coenen2020-10-221-2/+40
| |/ / / | | | | | | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
* | | | Merge #6307bors[bot]2020-10-213-2/+99
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6307: Add whitelist of safe intrinsics r=frazar a=frazar This PR should fix #5996, where intrinsic operations where all marked as unsafe. I'm rather new to this codebase, so I might be doing something *very* wrong. Please forgive me! In particular, I'm not sure how to "check that we are in extern `rust-intrinsics`" as mentioned [in this comment](https://github.com/rust-analyzer/rust-analyzer/issues/5996#issuecomment-709234802). Co-authored-by: Francesco Zardi <[email protected]>
| * | | Refactor is_intrinsic_fn_unsafe() and make it privateFrancesco Zardi2020-10-211-39/+42
| | | |
| * | | Move safe intrinsic testsFrancesco Zardi2020-10-212-20/+18
| | | |
| * | | Fix typo in commentFrancesco Zardi2020-10-211-1/+1
| | | |
| * | | Add whitelist of safe intrinsicsFrancesco Zardi2020-10-213-2/+98
| | | |