aboutsummaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
* Merge #6862bors[bot]2020-12-148-39/+131
|\ | | | | | | | | | | | | | | 6862: Add LifetimeParam resolving to Semantics r=matklad a=Veykril This is stuff required for the lifetime references/definitions PR. I pulled this out to make it easier to review as well as because there is one thing that still has to be addressed which can be found in the review comments. Co-authored-by: Lukas Wirth <[email protected]>
| * Add LifetimeParam resolving to SemanticsLukas Wirth2020-12-148-39/+131
| |
* | Merge #6817bors[bot]2020-12-142-39/+28
|\ \ | |/ |/| | | | | | | | | | | 6817: Replace goblin crate with object r=matklad a=lnicola Continuation of #4385. Co-authored-by: Laurențiu Nicola <[email protected]>
| * Replace goblin crate with objectLaurențiu Nicola2020-12-132-39/+28
| |
* | Add test for #6852Florian Diebold2020-12-131-0/+37
| |
* | Change recommendation when source can't be loaded from sysrootFlorian Diebold2020-12-131-1/+1
| | | | | | | | | | | | | | | | | | Since we just tried running `rustup component add`, it doesn't make sense to me to recommend trying that again. If we're reaching this case, it's probably more likely that rustc was installed via package manager, in which case the source should be installed the same way (e.g. if you install the rust-src package on Ubuntu it will install a symlink in the right place to make our sysroot detection work).
* | Merge #6852bors[bot]2020-12-133-3/+17
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 6852: Ignore lifetime params in substitutions r=matklad a=Veykril [`hir_ty::utils::Generics`](https://github.com/rust-analyzer/rust-analyzer/blob/master/crates/hir_ty/src/utils.rs#L153) currently only assumes type parameters but not lifetime parameters and therefor creates incorrect index and length calculations, this PR just makes the use sites ignore LifetimeGenerics for now. This fixes the panic at least locally for me for `analysis-stats`. Funnily enough this panic prevented me from using reference search for the `args` field to fix this problem. Co-authored-by: Lukas Wirth <[email protected]>
| * | Ignore lifetime params in substitutionsLukas Wirth2020-12-133-3/+17
| | |
* | | Merge #6845bors[bot]2020-12-122-1/+34
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6845: Don't HirDisplay unknown types when displaying for source r=Veykril a=Veykril Was wondering why the add missing impl assist didn't do anything here: ![Code_JCA1Qo0V9P](https://user-images.githubusercontent.com/3757771/101990300-7af44a80-3ca6-11eb-8431-e5eb4de4e78c.png) Turns out me forgetting to set the Index::Idx type in the trait causes RA to panic due to it trying to to create an unparsable type in the `make` module. Now we get this instead which imo is definitely better to have. ![Code_MUFPJUCULY](https://user-images.githubusercontent.com/3757771/101990347-c9094e00-3ca6-11eb-9c6a-146bddf64b7c.png) Co-authored-by: Lukas Wirth <[email protected]>
| * | Don't HirDisplay unknown types when displaying for sourceLukas Wirth2020-12-122-1/+34
| | |
* | | Remove some redundant allocationsJeremy Kolb2020-12-129-9/+8
| | |
* | | Merge #6818bors[bot]2020-12-1216-96/+249
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6818: Add Lifetimes to the HIR r=matklad a=Veykril This doesn't handle resolve yet as I don't know yet how that will be used. I'll get to that once I start moving the lifetime reference PR to the hir. This also adds a new `hir` name type for lifetimes and labels, `hir::LifetimeName`. Co-authored-by: Lukas Wirth <[email protected]>
| * | | Add Lifetimes to the HIRLukas Wirth2020-12-1116-96/+249
| | |/ | |/|
* | | Added remove this semicolon testivan7702020-12-121-0/+10
| | |
* | | Merge #6839bors[bot]2020-12-122-4/+74
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6839: Infer labeled blocks r=flodiebold a=Veykril The test should cover all the interesting cases I believe(main part of it is copied from the loop label break test above it). The test is indented to stay consistent with the rest of the tests in the file, I can dedent all the tests in the file in a follow up PR if desired. Co-authored-by: Lukas Wirth <[email protected]>
| * | | Infer labeled blocksLukas Wirth2020-12-112-4/+74
| | |/ | |/|
* | | Merge #6813bors[bot]2020-12-112-6/+39
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6813: negative sign matching in mbe matching for literal r=edwin0cheng a=edwin0cheng Fix #6292 r @jonas-schievink Co-authored-by: Edwin Cheng <[email protected]>
| * | | Add missing arg for eat_charEdwin Cheng2020-12-111-3/+3
| | | |
| * | | negative sign matching in mbe matching for literalEdwin Cheng2020-12-112-6/+39
| | |/ | |/|
* | | Use Attrs::docs in NavigationTarget instead of DocCommentsOwnerLukas Wirth2020-12-112-25/+29
| |/ |/|
* | Merge #6834bors[bot]2020-12-112-12/+12
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6834: Use Attrs::docs in runnables instead of DocCommentsOwner r=kjeremy a=Veykril I figured that we should probably move as much of the doc usage to the HIR as possible hence this PR. If we should keep this AST-based feel free to close. This change does have the nice(but not really useful as I doubt anyones gonna write doc tests like these) side effect that these two doc string snippets allow being run now. ![image](https://user-images.githubusercontent.com/3757771/101945607-bf241400-3bee-11eb-96ce-ccae80028b1f.png) ![image](https://user-images.githubusercontent.com/3757771/101946375-2e9a0380-3bef-11eb-9950-e35168fdd048.png) Co-authored-by: Lukas Wirth <[email protected]>
| * | Use Attrs::docs in runnables instead of DocCommentsOwnerLukas Wirth2020-12-112-12/+12
| | |
* | | Add upstream commit to builtin_attr.rsJonas Schievink2020-12-111-0/+2
| | |
* | | Merge #6819bors[bot]2020-12-112-0/+429
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6819: Add builtin attributes for use in nameres r=jonas-schievink a=jonas-schievink These are not yet used, but have to go through nameres later in order to support procedural macro attributes Co-authored-by: Jonas Schievink <[email protected]>
| * | | Add builtin attributes for use in nameresJonas Schievink2020-12-112-0/+429
| | | |
* | | | Move print_memory_usage to cli.rsJonas Schievink2020-12-114-32/+26
| | | |
* | | | Avoid panic when collecting memory metricsJonas Schievink2020-12-111-1/+2
| | | |
* | | | Don't highlight parent nodes of comments on hoverLukas Wirth2020-12-111-0/+16
| |/ / |/| |
* | | Improve code structureAleksey Kladov2020-12-112-25/+23
|/ / | | | | | | | | Make sure that there's only one entry point, analyze, remove awkard analyzer2 name
* / Use natural trait ordering in derive completionAleksey Kladov2020-12-111-17/+18
|/ | | | | | | | derive(Clone, Copy) reads better than derive(Copy, Clone). However, we preserve the reverse ordering in the lookup text for sorting purposes. That way, it's convenient to type just `Ord` to derive everything.
* Merge #6807bors[bot]2020-12-102-0/+40
|\ | | | | | | | | | | | | | | | | | | 6807: Replicate Cargo environment variables r=jonas-schievink a=jonas-schievink These might be relied on by procedural macros, and can also be accessed via `env!`. Required for fixing https://github.com/rust-analyzer/rust-analyzer/issues/6696. We do not yet propagate these to any proc macros though. Co-authored-by: Jonas Schievink <[email protected]>
| * Use itertoolsJonas Schievink2020-12-102-3/+4
| |
| * Replicate Cargo environment variablesJonas Schievink2020-12-101-0/+39
| |
* | Merge #6804bors[bot]2020-12-101-3/+9
|\ \ | |/ |/| | | | | | | | | | | | | | | 6804: Bump the macro token limit r=jonas-schievink a=jonas-schievink Should fix https://github.com/rust-analyzer/rust-analyzer/issues/6504 Not entirely sure what the previous limit was based on, but it looks like it does get hit in practice. Co-authored-by: Jonas Schievink <[email protected]>
| * Use decimal notationJonas Schievink2020-12-101-1/+1
| |
| * Double the macro token limitJonas Schievink2020-12-101-1/+1
| |
| * Improve macro limit error and move to constJonas Schievink2020-12-101-3/+9
| |
* | Merge #6805bors[bot]2020-12-101-8/+14
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | 6805: Fix accidently quadratic syntax rewriter r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | Fix accidently quadratic syntax rewriterAleksey Kladov2020-12-101-8/+14
| | | | | | | | | | | | | | | | | | Switching from SyntaxNode to GreenNode is a costly operation (b/c dereferencing a synax ptr in `with_green` is linear), so we should avoid that.
* | | Merge #6769bors[bot]2020-12-105-5/+86
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | | | | | | | 6769: Add native "remove this semicolon" diagnostics r=matklad a=ivan770 Closes #6739 ![demo2](https://user-images.githubusercontent.com/14003886/101530533-b76c3180-399a-11eb-9d18-5c8457721655.gif) Co-authored-by: ivan770 <[email protected]>
| * | Cast to ExprStmt, style fixesivan7702020-12-102-10/+9
| | |
| * | Apply rustfmt changesivan7702020-12-091-9/+8
| | |
| * | Apply suggestions from code reviewivan7702020-12-091-17/+20
| | | | | | | | | Co-authored-by: bjorn3 <[email protected]>
| * | Format codeivan7702020-12-083-8/+24
| | |
| * | Remove unused useivan7702020-12-081-1/+1
| | |
| * | Remove use via superivan7702020-12-081-3/+1
| | |
| * | Remove this semicolonivan7702020-12-085-8/+74
| | |
* | | Remove debug printAleksey Kladov2020-12-101-7/+5
| |/ |/|
* | Merge #6798bors[bot]2020-12-105-446/+43
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 6798: Ignore extern items in incorrect-case check r=jonas-schievink a=jonas-schievink Fixes https://github.com/rust-analyzer/rust-analyzer/issues/6736 bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | Use mark/hitJonas Schievink2020-12-101-0/+7
| | |