aboutsummaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
* Anchor file-system operations to the file, and not to the source root.Aleksey Kladov2020-06-168-81/+67
| | | | | | | | | | | | | | | | Anchoring to the SourceRoot wont' work if the path is absolute: #[path = "/tmp/foo.rs"] mod foo; Anchoring to a file will. However, we *should* anchor, instead of just producing an abs path. I can imagine a situation where, for example, rust-analyzer processes crates from different machines (or, for example, from in-memory git branch), where the same absolute path in different crates might refer to different files in the end!
* Merge #4891bors[bot]2020-06-167-0/+508
|\ | | | | | | | | | | | | | | 4891: New VFS API r=matklad a=matklad cc @flodiebold , @jonas-schievink Co-authored-by: Aleksey Kladov <[email protected]>
| * New VFS APIAleksey Kladov2020-06-167-0/+508
| |
* | Merge #4876bors[bot]2020-06-1612-16/+102
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4876: Syntactic highlighting of NAME_REF for injections r=matklad a=ltentrup This commit adds a function that tries to determine the syntax highlighting class of NAME_REFs based on the usage. It is used for highlighting injections (such as highlighting of doctests) as the semantic logic will most of the time result in unresolved references. It also adds a color to unresolved references in HTML encoding. Follow up of #4683. Fixes #4809. Co-authored-by: Leander Tentrup <[email protected]>
| * | Syntactic highlighting of NAME_REF for injectionsLeander Tentrup2020-06-1512-16/+102
| | | | | | | | | | | | | | | | | | This commit adds a function that tries to determine the syntax highlighting class of NAME_REFs based on the usage. It is used for highlighting injections (such as highlighting of doctests) as the semantic logic will most of the time result in unresolved references. It also adds a color to unresolved references in HTML encoding.
* | | Merge #4878bors[bot]2020-06-165-59/+257
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | 4878: Make "Replace qualified name with use" replace *all* mentions of the path r=matklad a=jonas-schievink Fixes https://github.com/rust-analyzer/rust-analyzer/issues/4836 Co-authored-by: Jonas Schievink <[email protected]>
| * | Operate only on AST paths instead of HIRJonas Schievink2020-06-151-30/+36
| | |
| * | SimplifyJonas Schievink2020-06-151-13/+6
| | |
| * | It's fookin' rawJonas Schievink2020-06-151-48/+48
| | |
| * | Shorten *all* qualified paths when adding useJonas Schievink2020-06-132-11/+192
| | |
| * | Expose `find_insert_use_container`Jonas Schievink2020-06-132-8/+18
| | |
| * | Fix `rewrite_root` when there's only 1 replacementJonas Schievink2020-06-131-0/+8
| | |
* | | Merge #4860bors[bot]2020-06-154-22/+31
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4860: Accept relative paths in rust-project.json r=matklad a=tweksteen If a relative path is found as part of Crate.root_module or Root.path, interpret it as relative to the location of the rust-project.json file. Fixes: #4816 Co-authored-by: Thiébaud Weksteen <[email protected]>
| * | | Accept relative paths in rust-project.jsonThiébaud Weksteen2020-06-154-22/+31
| | | | | | | | | | | | | | | | | | | | If a relative path is found as part of Crate.root_module or Root.path, interpret it as relative to the location of the rust-project.json file.
* | | | Merge #4877bors[bot]2020-06-153-16/+37
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4877: Fix syntax highlighting of recursive macros r=matklad a=ltentrup Add syntax highlighting for the BANG (`!`) token if the parent is `MACRO_CALL`. Before: <img width="514" alt="before" src="https://user-images.githubusercontent.com/201808/84595030-11f65c00-ae56-11ea-9bb2-b1abe2236990.png"> After: <img width="516" alt="recursive-macro" src="https://user-images.githubusercontent.com/201808/84594981-d196de00-ae55-11ea-8636-f877d5d795ff.png"> Fixes #4694. Co-authored-by: Leander Tentrup <[email protected]>
| * | | | Fix syntax highlighting of recursive macrosLeander Tentrup2020-06-153-16/+37
| |/ / / | | | | | | | | | | | | Add syntax highlighting for the BANG (`!`) token if the parent is `MACRO_CALL`.
* | | / Make ra_syntax::{SyntaxNodeChildren, SyntaxElementChildren} public.David Lattimore2020-06-151-1/+2
| |_|/ |/| | | | | | | | SyntaxNode::children and SyntaxNode::children_with_tokens return these types, but there's currently no way AFAIK to name them.
* | | Merge #4889bors[bot]2020-06-156-13/+11
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4889: Deprecate hir::Path::from_ast r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | Update parser tests with env varAleksey Kladov2020-06-152-8/+5
| | | |
| * | | Allow attributes on expressionsAleksey Kladov2020-06-151-4/+2
| | | | | | | | | | | | | | | | https://github.com/rust-lang/rust/pull/69201/
| * | | Deprecate hir::Path::from_astAleksey Kladov2020-06-153-1/+4
| |/ /
* | | Merge #4882bors[bot]2020-06-151-113/+142
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4882: _match.rs: improve comment formatting r=matklad a=jonas-schievink This results in much nicer rustdoc output Co-authored-by: Jonas Schievink <[email protected]>
| * | | _match.rs: improve comment formattingJonas Schievink2020-06-141-113/+142
| | |/ | |/|
* | | fill_match_arms bind pattern implementationToby Dimmick2020-06-141-2/+14
| | |
* | | fill_match_arms bind pattern testToby Dimmick2020-06-141-0/+34
| |/ |/|
* | Introduce paths crateAleksey Kladov2020-06-142-0/+131
|/ | | | | | It's a good idea to distinguish between absolute and relative paths at the type level, to avoid accidental dependency on the cwd, which really shouldn't matter for rust-analyzer service
* Merge #4867bors[bot]2020-06-136-160/+134
|\ | | | | | | | | | | | | | | | | | | | | 4867: Cleanup URL handling r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * Cleanup URL handlingAleksey Kladov2020-06-136-160/+134
| |
* | Merge #4868bors[bot]2020-06-131-4/+4
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4868: Fix if and while postfix completions r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | Fix if and while postfix completionsAleksey Kladov2020-06-131-4/+4
| |/
* | Merge #4700bors[bot]2020-06-136-640/+618
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4700: Add top level keywords completion r=matklad a=mcrakhman This fixes the following issue: https://github.com/rust-analyzer/rust-analyzer/issues/4566. Also added simple logic which filters the keywords which can be used with unsafe on the top level. Co-authored-by: Mikhail Rakhmanov <[email protected]> Co-authored-by: Aleksey Kladov <[email protected]>
| * | More concise completion testsAleksey Kladov2020-06-132-182/+146
| | |
| * | CleanupAleksey Kladov2020-06-134-255/+154
| | |
| * | Add keywords completions on source file positionMikhail Rakhmanov2020-06-133-21/+124
| | |
| * | Merge branch 'master' into keyword_completionMikhail Rakhmanov2020-06-13148-2458/+6455
| |\| | | | | | | | | | | | | # Conflicts: # docs/user/generated_features.adoc
| * | Fix tests and remove unused methodsMikhail Rakhmanov2020-06-133-13/+6
| | |
| * | Add more patterns, tests and fix keywordsMikhail Rakhmanov2020-06-123-473/+297
| | |
| * | Rewrite snapshot checksMikhail Rakhmanov2020-06-124-245/+100
| | |
| * | Remove comment and incorrect assertMikhail Rakhmanov2020-06-121-7/+1
| | |
| * | Return snapshots to testsMikhail Rakhmanov2020-06-121-18/+34
| | |
| * | More assert refactoringMikhail Rakhmanov2020-06-121-7/+8
| | |
| * | Add more pattern testsMikhail Rakhmanov2020-06-122-11/+50
| | |
| * | New testing approach for keywordsMikhail Rakhmanov2020-06-122-6/+56
| | |
| * | Add few smoke tests for patterns and refactoringMikhail Rakhmanov2020-06-114-10/+111
| | |
| * | Add more patterns and keywordsMikhail Rakhmanov2020-06-113-55/+59
| | |
| * | Add todoMikhail Rakhmanov2020-06-111-1/+2
| | |
| * | Add more keywordsMikhail Rakhmanov2020-06-114-234/+183
| | |
| * | Add top level keywords completionMikhail Rakhmanov2020-06-021-1/+186
| | |
* | | Revert "Hide squiggly for unused and unnecessary"Gabriel Valfridsson2020-06-122-3/+2
| |/ |/| | | | | This reverts commit 599c105e6fabb2b81c2d0a11b86c0c96f6ab1b88.
* | Merge #4857bors[bot]2020-06-121-1/+14
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4857: Fix invalid shorthand initialization diagnostic for tuple structs r=jonas-schievink a=OptimalStrategy Initializing tuple structs explicitly, like in the example below, produces a "Shorthand struct initialization" diagnostic that leads to a compilation error when applied: ```rust struct S(usize); fn main() { let s = S { 0: 0 }; // OK, but triggers the diagnostic // let s = S { 0 }; // Compilation error } ``` This PR adds a check that the field name is not a literal. Co-authored-by: OptimalStrategy <[email protected]> Co-authored-by: OptimalStrategy <[email protected]>