]> git.lizzy.rs Git - rust.git/log
rust.git
4 years agoPass test
Jeremy Kolb [Wed, 18 Dec 2019 13:58:48 +0000 (08:58 -0500)]
Pass test

4 years agoWIP: See through Macros for SignatureHelp
kjeremy [Mon, 18 Nov 2019 23:08:39 +0000 (18:08 -0500)]
WIP: See through Macros for SignatureHelp

Note: we meed to skip the trivia filter to make sure that
`covers!(call_info_bad_offset)` succeeds otherwise we exit call_info
too early.

Also the test doesn't pass: `FnCallNode::with_node` always detects
a MacroCall.

4 years agoMerge #2545
bors[bot] [Wed, 18 Dec 2019 11:47:50 +0000 (11:47 +0000)]
Merge #2545

2545: Add Token id to all tt::TokenTree r=matklad a=edwin0cheng

This PR try to add token id to all `tt::Leaf` and `tt::Delimiter`.

~~Some tests are failed now because of #2544~~

~~Still blocked by a test in goto-definition : see https://github.com/rust-analyzer/rust-analyzer/pull/2544#issuecomment-565572553~~

Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com>
4 years agoRefactoring
Edwin Cheng [Wed, 18 Dec 2019 03:47:26 +0000 (11:47 +0800)]
Refactoring

4 years agoRename range to by_kind
Edwin Cheng [Wed, 18 Dec 2019 03:36:10 +0000 (11:36 +0800)]
Rename range to by_kind

4 years agoAdd test for token map
Edwin Cheng [Fri, 13 Dec 2019 19:39:15 +0000 (03:39 +0800)]
Add test for token map

4 years agoFix shift id for delim and other tokens
Edwin Cheng [Fri, 13 Dec 2019 19:37:04 +0000 (03:37 +0800)]
Fix shift id for delim and other tokens

4 years agoAdd TokenTextRange
Edwin Cheng [Fri, 13 Dec 2019 15:55:51 +0000 (23:55 +0800)]
Add TokenTextRange

4 years agoAdd token id to delims
Edwin Cheng [Thu, 12 Dec 2019 17:41:44 +0000 (01:41 +0800)]
Add token id to delims

4 years agoAdd token ids for all tt::Leaf
Edwin Cheng [Thu, 12 Dec 2019 13:47:54 +0000 (21:47 +0800)]
Add token ids for all tt::Leaf

4 years agoMerge #2575
bors[bot] [Wed, 18 Dec 2019 03:03:51 +0000 (03:03 +0000)]
Merge #2575

2575: [VS Code Extension] Remap error location if it extracted inside macros r=edwin0cheng a=edwin0cheng

It should fix for #2569

Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com>
4 years agoUse substr instead of endswith
Edwin Cheng [Tue, 17 Dec 2019 13:43:19 +0000 (21:43 +0800)]
Use substr instead of endswith

4 years agoAdd tests
Edwin Cheng [Tue, 17 Dec 2019 05:50:08 +0000 (13:50 +0800)]
Add tests

4 years agoAdd macro span handling
Edwin Cheng [Tue, 17 Dec 2019 05:50:00 +0000 (13:50 +0800)]
Add macro span handling

4 years agoMerge #2583
bors[bot] [Tue, 17 Dec 2019 21:12:18 +0000 (21:12 +0000)]
Merge #2583

2583: Use prettier settings in ts-lint r=matklad a=edwin0cheng

This PR add `tslint-plugin-prettier` extension in ts-lint, which "runs prettier rules as tslint rules." and remove  `quotemark` from ts-lint and let prettier to handle it.

And also fix #2515

Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com>
4 years agouse pretter settings in ts-lint
Edwin Cheng [Tue, 17 Dec 2019 15:48:26 +0000 (23:48 +0800)]
use pretter settings in ts-lint

4 years agoMerge #2582
bors[bot] [Tue, 17 Dec 2019 15:03:38 +0000 (15:03 +0000)]
Merge #2582

2582: Drop dead code r=matklad a=matklad

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
4 years agoDrop dead code
Aleksey Kladov [Tue, 17 Dec 2019 15:03:15 +0000 (16:03 +0100)]
Drop dead code

4 years agoMerge #2581
bors[bot] [Tue, 17 Dec 2019 14:39:07 +0000 (14:39 +0000)]
Merge #2581

2581: Refactor PathKind r=matklad a=matklad

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
4 years agoRefactor PathKind
Aleksey Kladov [Tue, 17 Dec 2019 14:38:28 +0000 (15:38 +0100)]
Refactor PathKind

4 years agoMerge #2580
bors[bot] [Tue, 17 Dec 2019 13:46:12 +0000 (13:46 +0000)]
Merge #2580

2580: Fix highlighting token names r=matklad a=matklad

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
4 years agoFix highlighting token names
Aleksey Kladov [Tue, 17 Dec 2019 13:43:37 +0000 (14:43 +0100)]
Fix highlighting token names

4 years agoMerge #2562
bors[bot] [Tue, 17 Dec 2019 13:37:32 +0000 (13:37 +0000)]
Merge #2562

2562: Fix NavigationTarget ranges r=matklad a=edwin0cheng

Fix the issue described in https://github.com/rust-analyzer/rust-analyzer/pull/2544#issuecomment-565572553

This PR change the order for finding `full_range` of `focus_range` in following orders:
1. map both ranges to macro_call
2. map focus range to a token inside macro call, and full range to the whole of macro call
3. map both ranges to the whole of macro call

And fix the corresponding tests and make these tests easily to follow.

Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com>
4 years agoMerge #2568
bors[bot] [Tue, 17 Dec 2019 13:28:37 +0000 (13:28 +0000)]
Merge #2568

2568: Add option to disable all-targets. r=matklad a=pftbest

Can be useful in embedded.

Co-authored-by: Vadzim Dambrouski <vadzim.dambrouski@promwad.com>
4 years agoMerge #2571
bors[bot] [Tue, 17 Dec 2019 13:19:59 +0000 (13:19 +0000)]
Merge #2571

2571: Fixed a typo in settings r=matklad a=omerbenamram

@lnicola found a typo in the description for one of the settings introduced in #2559.

Co-authored-by: Omer Ben-Amram <omerbenamram@gmail.com>
4 years agoMerge #2578
bors[bot] [Tue, 17 Dec 2019 11:42:19 +0000 (11:42 +0000)]
Merge #2578

2578: Default to client watching on VS Code r=matklad a=matklad

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
4 years agoDefault to client watching on VS Code
Aleksey Kladov [Tue, 17 Dec 2019 11:41:44 +0000 (12:41 +0100)]
Default to client watching on VS Code

4 years agoMerge #2577
bors[bot] [Tue, 17 Dec 2019 11:12:50 +0000 (11:12 +0000)]
Merge #2577

2577: Improve recovery for incomplete lambdas r=matklad a=matklad

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
4 years agoImprove recovery for incomplete lambdas
Aleksey Kladov [Tue, 17 Dec 2019 11:11:01 +0000 (12:11 +0100)]
Improve recovery for incomplete lambdas

4 years agoMerge #2572
bors[bot] [Mon, 16 Dec 2019 17:47:43 +0000 (17:47 +0000)]
Merge #2572

2572: link website r=matklad a=matklad

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
4 years agolink website
Aleksey Kladov [Mon, 16 Dec 2019 17:41:03 +0000 (18:41 +0100)]
link website

4 years agoFixed a typo
Omer Ben-Amram [Mon, 16 Dec 2019 15:32:46 +0000 (17:32 +0200)]
Fixed a typo

thanks @lnicola

4 years agoFix formatting
Vadzim Dambrouski [Mon, 16 Dec 2019 03:31:38 +0000 (09:01 +0530)]
Fix formatting

4 years agoMerge #2567
bors[bot] [Sun, 15 Dec 2019 20:08:12 +0000 (20:08 +0000)]
Merge #2567

2567: Handle impl Trait more correctly r=flodiebold a=flodiebold

When calling a function, argument-position impl Trait is transparent; same for return-position impl Trait when inside the function.

So in these cases, we need to represent that type not by `Ty::Opaque`, but by a type variable that can be unified with whatever flows into there.

Co-authored-by: Florian Diebold <flodiebold@gmail.com>
4 years agoAdd test mark
Florian Diebold [Sun, 15 Dec 2019 20:06:08 +0000 (21:06 +0100)]
Add test mark

4 years agoAdd option to disable all-targets.
Vadzim Dambrouski [Sun, 15 Dec 2019 17:32:13 +0000 (23:02 +0530)]
Add option to disable all-targets.

Can be useful in embedded.

4 years agoHandle impl Trait more correctly
Florian Diebold [Sun, 15 Dec 2019 17:56:38 +0000 (18:56 +0100)]
Handle impl Trait more correctly

When calling a function, argument-position impl Trait is transparent; same for
return-position impl Trait when inside the function. So in these cases, we need
to represent that type not by `Ty::Opaque`, but by a type variable that can be
unified with whatever flows into there.

4 years agoAdd test for unifying impl Trait
Florian Diebold [Fri, 6 Dec 2019 11:45:00 +0000 (12:45 +0100)]
Add test for unifying impl Trait

4 years agoMerge #2565
bors[bot] [Sun, 15 Dec 2019 16:35:23 +0000 (16:35 +0000)]
Merge #2565

2565: Fixed syntax highlighting not refreshing on windows. r=matklad a=omerbenamram

I was encoutering the same probelm described in #1690.

It seems that events initiated by the frontend with `rust-analyzer/decorationsRequest` would go through.
So whenever a user switches tabs, highlighting will update.

However, when decorations are initiated by a notification with `rust-analyzer/publishDecorations`, it would fail on this check here https://github.com/rust-analyzer/rust-analyzer/blob/6cbd8a4a4bbca8a7656df9f3ef849acebbf9ef9b/editors/code/src/notifications/publish_decorations.ts#L15 (`targetEditor` will always be `undefined`).

This is because it's trying to match the uri `rust-analyzer` sends (which uses an uppercase drive letter) to the uri provided at `editor.document.uri.toString()`, which is both escaped (uses `%3a` for `:`), and uses a lowercase letter drive.

Aparrently this was an issue for some other extensions aswell - https://github.com/Microsoft/vscode/issues/68325.

But this is the defined behavior - https://github.com/microsoft/vscode/blob/c110d84460b3e45842a8fe753562341003595e1d/src/vs/vscode.d.ts#L1304

This fix is only relevant for windows.
I've opted for a server-side fix, since rust will always return uppercase letters for drives, there seems to be no other easy solution than manipulating the Url string before sending it to the frontend.

Closes #1690.

Co-authored-by: Omer Ben-Amram <omerbenamram@gmail.com>
4 years agoMerge #2566
bors[bot] [Sun, 15 Dec 2019 16:20:13 +0000 (16:20 +0000)]
Merge #2566

2566: Add a rudimentary json regex to get at information like `endLine` r=matklad a=oli-obk

Co-authored-by: Oliver Scherer <github35764891676564198441@oli-obk.de>
4 years agoProperly format json
Oliver Scherer [Sun, 15 Dec 2019 16:19:41 +0000 (17:19 +0100)]
Properly format json

4 years agoremove unnecessary turbofish.
Omer Ben-Amram [Sun, 15 Dec 2019 16:15:24 +0000 (18:15 +0200)]
remove unnecessary turbofish.

4 years agoAdd a rudimentary json regex to get at information like `endLine`
Oliver Scherer [Sun, 15 Dec 2019 16:12:52 +0000 (17:12 +0100)]
Add a rudimentary json regex to get at information like `endLine`

4 years agocfg gated tests that only work on windows.
Omer Ben-Amram [Sun, 15 Dec 2019 15:54:24 +0000 (17:54 +0200)]
cfg gated tests that only work on windows.

4 years agoimproved path checking to consider only paths that may contain a windows drive.
Omer Ben-Amram [Sun, 15 Dec 2019 15:46:00 +0000 (17:46 +0200)]
improved path checking to consider only paths that may contain a windows drive.

4 years ago`npm run fix`
Omer Ben-Amram [Sun, 15 Dec 2019 15:10:39 +0000 (17:10 +0200)]
`npm run fix`

4 years agomove import inside cfg block
Omer Ben-Amram [Sun, 15 Dec 2019 15:03:39 +0000 (17:03 +0200)]
move import inside cfg block

4 years agofixed comment
Omer Ben-Amram [Sun, 15 Dec 2019 14:55:39 +0000 (16:55 +0200)]
fixed comment

4 years agoLowercase drive letters on windows before sending to extension.
Omer Ben-Amram [Sun, 15 Dec 2019 14:51:57 +0000 (16:51 +0200)]
Lowercase drive letters on windows before sending to extension.

4 years agomake drive comparison case-insensitive.
Omer Ben-Amram [Sun, 15 Dec 2019 13:07:33 +0000 (15:07 +0200)]
make drive comparison case-insensitive.

4 years agoMerge #2564
bors[bot] [Sun, 15 Dec 2019 11:20:50 +0000 (11:20 +0000)]
Merge #2564

2564: Introduce named constants for highlighting tag names. r=matklad a=omerbenamram

Refers to #2563 .

This is just a refactor of all the tag strings to named constants as suggested by @matklad.
An enum could _probably_ prevent some future inconsistencies (since strings are still accepted), but I think the constants here are just fine - since the frontend only cares about strings anyways.

The frontend doesn't know about about those constants, so we'll still need to be mindful for them there.

Note: I didn't touch the `STYLE` const (big css blob), we could probably make it a `format!` string using something like `once_cell::Lazy`, let me know if this is something that needs fixing (since it doesn't seem like a useful API outside of tests).

Also - I left those consts private, I assume if they were some kind of API we would have made it into an enum?

Co-authored-by: Omer Ben-Amram <omerbenamram@gmail.com>
4 years agouse a module instead of prefixed consts.
Omer Ben-Amram [Sun, 15 Dec 2019 11:18:37 +0000 (13:18 +0200)]
use a module instead of prefixed consts.

4 years agointroduce named constants for highlighting tag names.
Omer Ben-Amram [Sun, 15 Dec 2019 10:33:14 +0000 (12:33 +0200)]
introduce named constants for highlighting tag names.

4 years agoMerge #2559
bors[bot] [Sun, 15 Dec 2019 09:00:11 +0000 (09:00 +0000)]
Merge #2559

2559: Add some granularity to syntax highlighting. r=matklad a=omerbenamram

Hi,

I wanted to start using `rust-analyzer` a bit more frequently - one of the main blockers for me so far was the highlighting.

I just discovered it's possible to override the default colors with `ralsp.<something>` setting without waiting for #2061!

However, the current implementation was lumping a bunch of different tokens into `type` and `literal`.
The golden standard IMO is what Clion is currently doing (and is my current daily driver for rust).

Clion allows users to control the coloring for specific literal kinds, and the default is to distinguish between them (numerics get a different color from strings, and special colors for bytestrings).

I've also splitted the builtin types, which are also allowed to be highlighted speratly.
My goal is to match the default experience I'm getting with clion.
The only blockers now I think is that `rust-analyzer` doesn't corrently infer types in some situations, so the highlighting information is incorrect in those cases.

This is what it looks like so far (with colors overriden to match clion's theme):
![image](https://user-images.githubusercontent.com/2467993/70848219-ccd97900-1e76-11ea-89e1-2e467cfcc9fb.png)

If there are any other changes you feel is necessary let me know.

I did leave the default colors to match the current behavior, since I'm not familiar with the colors for this theme, I added some random (different) colors in the test to check that it indeed was working.

Co-authored-by: Omer Ben-Amram <omerbenamram@gmail.com>
4 years agofixed rainbow-highlighting test
Omer Ben-Amram [Sun, 15 Dec 2019 08:20:22 +0000 (10:20 +0200)]
fixed rainbow-highlighting test

4 years agoUse simpler logic on original_range
Edwin Cheng [Sat, 14 Dec 2019 18:34:16 +0000 (02:34 +0800)]
Use simpler logic on original_range

4 years agoMerge #2561
bors[bot] [Sat, 14 Dec 2019 18:16:48 +0000 (18:16 +0000)]
Merge #2561

2561: Split generic and non-generic paths r=matklad a=matklad

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
4 years agoUse different types for path with and without generics
Aleksey Kladov [Fri, 13 Dec 2019 11:12:36 +0000 (12:12 +0100)]
Use different types for path with and without generics

4 years agoRe-export Origin to replace ExpansionOrigin
Edwin Cheng [Sat, 14 Dec 2019 17:46:39 +0000 (01:46 +0800)]
Re-export Origin to replace ExpansionOrigin

4 years agoFix original_source find order
Edwin Cheng [Sat, 14 Dec 2019 17:20:07 +0000 (01:20 +0800)]
Fix original_source find order

4 years agoMerge #2552
bors[bot] [Sat, 14 Dec 2019 17:20:18 +0000 (17:20 +0000)]
Merge #2552

2552: fix goto definition when inbetween tokens r=matklad a=succcubbus

fixes both goto_definition and goto_type_definition.
before, when running goto between some non-trivia token and an
identifier, goto would be attempted for the non-trivia token.
but this does not make sense for e.g. L_PAREN or COLONCOLON only for
IDENTs.

this resulted in goto actions not working when running them on the first
character of some identifier e.g. for `module::<|>method()` or
`method(<|>parameter)`.

now only IDENTs will be searched for in goto actions, though i'm not sure
if this is correct or if goto should also work for some other token types.

Co-authored-by: succcubbus <16743652+succcubbus@users.noreply.github.com>
4 years agoUse all-features by default
Aleksey Kladov [Sat, 14 Dec 2019 15:45:14 +0000 (16:45 +0100)]
Use all-features by default

4 years agoMerge branch 'refs/heads/master' into feature/granular-scopes
Omer Ben-Amram [Sat, 14 Dec 2019 15:29:30 +0000 (17:29 +0200)]
Merge branch 'refs/heads/master' into feature/granular-scopes

4 years agoMerge #2554
bors[bot] [Sat, 14 Dec 2019 14:08:08 +0000 (14:08 +0000)]
Merge #2554

2554: Add macros for known names and paths r=matklad a=flodiebold

Co-authored-by: Florian Diebold <flodiebold@gmail.com>
4 years agoMerge #2548
bors[bot] [Sat, 14 Dec 2019 11:57:49 +0000 (11:57 +0000)]
Merge #2548

2548: Support setting cargo features and resolve `default` features by default r=matklad a=oxalica

Fixes #2524

Co-authored-by: oxalica <oxalicc@pm.me>
4 years agoremoved `type.alias`
Omer Ben-Amram [Sat, 14 Dec 2019 11:29:42 +0000 (13:29 +0200)]
removed `type.alias`

4 years agoadded decorations
Omer Ben-Amram [Sat, 14 Dec 2019 11:24:07 +0000 (13:24 +0200)]
added decorations

4 years agoMerge #2557
bors[bot] [Fri, 13 Dec 2019 23:55:16 +0000 (23:55 +0000)]
Merge #2557

2557: Remove some unwraps in add_new r=flodiebold a=kjeremy

I think this file could probably be simplified a little more but this at least gets me around the panic.

Fixes #2556

Co-authored-by: kjeremy <kjeremy@gmail.com>
4 years agoRemove some unwraps in add_new
kjeremy [Fri, 13 Dec 2019 22:35:15 +0000 (17:35 -0500)]
Remove some unwraps in add_new

4 years agoUse path macro
Florian Diebold [Fri, 13 Dec 2019 21:32:44 +0000 (22:32 +0100)]
Use path macro

4 years agoRename N! to name!
Florian Diebold [Fri, 13 Dec 2019 21:01:06 +0000 (22:01 +0100)]
Rename N! to name!

4 years agoAdd macros for known names and paths
Florian Diebold [Fri, 13 Dec 2019 20:43:53 +0000 (21:43 +0100)]
Add macros for known names and paths

4 years agoMerge #2555
bors[bot] [Fri, 13 Dec 2019 21:17:41 +0000 (21:17 +0000)]
Merge #2555

2555: LSP 3.15 supports the deprecated tag on completions r=matklad a=kjeremy

So let's set it.

Co-authored-by: kjeremy <kjeremy@gmail.com>
4 years agoLSP 3.15 supports the deprecated tag on completions
kjeremy [Fri, 13 Dec 2019 21:08:47 +0000 (16:08 -0500)]
LSP 3.15 supports the deprecated tag on completions

4 years agofor goto and hover pick the token based on a priority
succcubbus [Fri, 13 Dec 2019 21:00:05 +0000 (22:00 +0100)]
for goto and hover pick the token based on a priority

4 years agoadd tests for goto on tuple fields
succcubbus [Fri, 13 Dec 2019 20:59:25 +0000 (21:59 +0100)]
add tests for goto on tuple fields

4 years agotry both surrounding tokens for hover
succcubbus [Fri, 13 Dec 2019 20:10:25 +0000 (21:10 +0100)]
try both surrounding tokens for hover

4 years agoMerge #2550
bors[bot] [Fri, 13 Dec 2019 19:49:01 +0000 (19:49 +0000)]
Merge #2550

2550: Infer - and ! using std::ops::{Neg, Not} r=flodiebold a=kiljacken

Found some low hanging fruit while taking a cursory look at index inferring.

Co-authored-by: Emil Lauridsen <mine809@gmail.com>
4 years agoadd failing test
succcubbus [Fri, 13 Dec 2019 18:54:07 +0000 (19:54 +0100)]
add failing test

4 years agouse find() instead of filter().next()
succcubbus [Fri, 13 Dec 2019 18:54:02 +0000 (19:54 +0100)]
use find() instead of filter().next()

4 years agofix goto definition when inbetween tokens
succcubbus [Fri, 13 Dec 2019 18:20:02 +0000 (19:20 +0100)]
fix goto definition when inbetween tokens

fixes both goto_definition and goto_type_definition.
before, when running goto between some non-trivia token and an
identifier, goto would be attempted for the non-trivia token.
but this does not make sense for e.g. L_PAREN or COLONCOLON only for
IDENTs. now only IDENTs will be searched for in goto actions.

4 years agoscopes resolution is more granular
Omer Ben-Amram [Fri, 13 Dec 2019 17:00:55 +0000 (19:00 +0200)]
scopes resolution is more granular

4 years agoEnable `allFeatures` by default and fix lints
oxalica [Fri, 13 Dec 2019 16:48:47 +0000 (00:48 +0800)]
Enable `allFeatures` by default and fix lints

4 years agoMerge #2551
bors[bot] [Fri, 13 Dec 2019 14:02:26 +0000 (14:02 +0000)]
Merge #2551

2551: Refactor tt::Subtree delimiter r=matklad a=edwin0cheng

Refactor to :
```
#[derive(Debug, Clone, PartialEq, Eq, Hash, Default)]
pub struct Subtree {
    pub delimiter: Option<Delimiter>,
    pub token_trees: Vec<TokenTree>,
}

#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)]
pub enum Delimiter {
    Parenthesis,
    Brace,
    Bracket,
}
```

Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com>
4 years agoRefactor tt::Delimiter
Edwin Cheng [Fri, 13 Dec 2019 13:53:34 +0000 (21:53 +0800)]
Refactor tt::Delimiter

4 years agoCorrectly infer - and ! using std::ops::{Neg,Not}
Emil Lauridsen [Fri, 13 Dec 2019 11:44:42 +0000 (12:44 +0100)]
Correctly infer - and ! using std::ops::{Neg,Not}

4 years agoAdd helper for resolving associated type of trait in infer
Emil Lauridsen [Fri, 13 Dec 2019 11:44:07 +0000 (12:44 +0100)]
Add helper for resolving associated type of trait in infer

4 years agoMerge #2544
bors[bot] [Fri, 13 Dec 2019 10:21:19 +0000 (10:21 +0000)]
Merge #2544

2544: Map first and last tokens in original_range r=matklad a=edwin0cheng

This PR try to fix the first part of the `original_range` : Try to map the first token and last token of a `SyntaxNode` , If success, return the union range of mapped tokens.

Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com>
4 years agoSupport setting cargo features
oxalica [Fri, 13 Dec 2019 10:16:34 +0000 (18:16 +0800)]
Support setting cargo features

4 years agoMap first and last node in original_range
Edwin Cheng [Thu, 12 Dec 2019 18:39:14 +0000 (02:39 +0800)]
Map first and last node in original_range

4 years agoMerge #2543
bors[bot] [Thu, 12 Dec 2019 16:18:31 +0000 (16:18 +0000)]
Merge #2543

2543: Move use tree lowering to a separate module r=matklad a=matklad

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
4 years agoCorrect obsolete comment
Aleksey Kladov [Thu, 12 Dec 2019 16:17:57 +0000 (17:17 +0100)]
Correct obsolete comment

4 years agoMove use tree lowering to a separate module
Aleksey Kladov [Thu, 12 Dec 2019 16:15:57 +0000 (17:15 +0100)]
Move use tree lowering to a separate module

4 years agoMerge #2540
bors[bot] [Thu, 12 Dec 2019 14:51:02 +0000 (14:51 +0000)]
Merge #2540

2540: Dedupe from_source impls r=matklad a=matklad

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
4 years agoDedupe from_source impls
Aleksey Kladov [Thu, 12 Dec 2019 14:50:16 +0000 (15:50 +0100)]
Dedupe from_source impls

4 years agoMerge #2539
bors[bot] [Thu, 12 Dec 2019 14:20:02 +0000 (14:20 +0000)]
Merge #2539

2539: Remove old location infra r=matklad a=matklad

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
4 years agoRemove old location infra
Aleksey Kladov [Thu, 12 Dec 2019 14:13:05 +0000 (15:13 +0100)]
Remove old location infra

4 years agoMove enum&union to new loc
Aleksey Kladov [Thu, 12 Dec 2019 14:11:57 +0000 (15:11 +0100)]
Move enum&union to new loc

4 years agoMove structs to new loc
Aleksey Kladov [Thu, 12 Dec 2019 13:58:04 +0000 (14:58 +0100)]
Move structs to new loc

4 years agoSimplify from_source
Aleksey Kladov [Thu, 12 Dec 2019 13:48:33 +0000 (14:48 +0100)]
Simplify from_source