aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir/src/marks.rs
Commit message (Collapse)AuthorAgeFilesLines
* Merge #982bors[bot]2019-03-171-0/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 982: Implement BindingMode for pattern matching. r=flodiebold a=mjkillough Implement `BindingMode` for pattern matching, so that types can be correctly inferred using match ergonomics. The binding mode defaults to `Move` (referred to as 'BindingMode::BindByValue` in rustc), and is updated by automatic dereferencing of the value being matched. Fixes #888. - [Binding modes in The Reference](https://doc.rust-lang.org/reference/patterns.html#binding-modes) - [`rustc` implementation](https://github.com/rust-lang/rust/blob/e17c48e2f21eefd59748e364234efc7037a3ec96/src/librustc_typeck/check/_match.rs#L77) (and [definition of `BindingMode`](https://github.com/rust-lang/rust/blob/e957ed9d10ec589bdd523b88b4b44c41b1ecf763/src/librustc/ty/binding.rs)) - [Match Ergonomics RFC](https://github.com/rust-lang/rfcs/blob/master/text/2005-match-ergonomics.md#binding-mode-rules) Co-authored-by: Michael Killough <[email protected]>
| * Split test case and use tested_by!.Michael Killough2019-03-171-0/+1
| |
* | fix error on wrong pathAleksey Kladov2019-03-171-0/+1
| |
* | move tests over to crate-def-mapAleksey Kladov2019-03-171-1/+1
|/
* Import the preludeFlorian Diebold2019-02-131-0/+1
|
* Import glob imports from other cratesFlorian Diebold2019-02-101-0/+1
| | | | This is the easy part since we don't have to consider the fixpoint algorithm.
* Add some testsFlorian Diebold2019-02-101-0/+1
|
* Add comment and markFlorian Diebold2019-02-091-0/+1
|
* Add marksFlorian Diebold2019-01-261-0/+2
|
* refactor import resolutionAleksey Kladov2019-01-251-3/+4
| | | | | extract path resolution use enums instead of bools
* move completion item tests closer to the codeAleksey Kladov2019-01-231-1/+3
| | | | | this is the reason why we need marks: the tests were spread across two files, because I've forgotten that there were tests already
* generalize marking infrastructureAleksey Kladov2019-01-231-82/+1
|
* introduce marking infrastructure for maintainable testsAleksey Kladov2019-01-101-0/+82
This also fixes a particular edge case in name resolution.