aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir_ty/src/tests/patterns.rs
Commit message (Collapse)AuthorAgeFilesLines
* Handle `Self` in values and patternsFlorian Diebold2020-05-151-0/+39
| | | | | | | | | I.e. - `Self(x)` or `Self` in tuple/unit struct impls - `Self::Variant(x)` or `Self::Variant` in enum impls - the same in patterns Fixes #4454.
* Convert tests to text-sizeAleksey Kladov2020-04-251-240/+240
|
* Correctly infer types in guard expressionsAleksey Kladov2020-04-181-0/+26
| | | | | | | The root cause was that we forgot to add bindings from the arm to the guard expression closes #3980
* Align grammar for record patterns and literalsAleksey Kladov2020-04-111-1/+2
| | | | | | The grammar now looks like this [name_ref :] pat
* Add inference for literal and range patternsFlorian Diebold2020-04-011-0/+85
|
* handle array pattern matching type inferenceJosh Mcguigan2020-03-011-0/+41
|
* remove match statement, handle suffixJosh Mcguigan2020-03-011-2/+2
|
* handle arbitrary length slicesJosh Mcguigan2020-03-011-9/+24
|
* match single prefix sliceJosh Mcguigan2020-03-011-0/+33
|
* Fix handling of const patternsFlorian Diebold2020-02-211-1/+45
| | | | | | | | | E.g. in `match x { None => ... }`, `None` is a path pattern (resolving to the option variant), not a binding. To determine this, we need to try to resolve the name during lowering. This isn't too hard since we already need to resolve names for macro expansion anyway (though maybe a bit hacky). Fixes #1618.
* Fix printing of function typesFlorian Diebold2020-02-071-2/+2
|
* Split up ty tests a bitFlorian Diebold2019-12-031-0/+238