| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2024-09-22 | Reformat using the new identifier sorting from rustfmt | Michael Goulet | -1/+1 | |
| 2024-07-29 | Reformat `use` declarations. | Nicholas Nethercote | -2/+1 | |
| The previous commit updated `rustfmt.toml` appropriately. This commit is the outcome of running `x fmt --all` with the new formatting options. | ||||
| 2024-07-24 | Explain why a given pattern is considered unreachable | Nadrieril | -1/+16 | |
| 2024-07-20 | Expand or-patterns as a separate step | Nadrieril | -1/+12 | |
| 2024-06-20 | Add blank lines after module-level `//!` comments. | Nicholas Nethercote | -0/+1 | |
| Most modules have such a blank line, but some don't. Inserting the blank line makes it clearer that the `//!` comments are describing the entire module, rather than the `use` declaration(s) that immediately follows. | ||||
| 2024-03-19 | Improve the `WitnessPat: Debug` impl | Nadrieril | -72/+8 | |
| 2024-03-18 | Rollup merge of #121823 - Nadrieril:never-witnesses, r=compiler-errors | Matthias Krüger | -3/+18 | |
| never patterns: suggest `!` patterns on non-exhaustive matches When a match is non-exhaustive we now suggest never patterns whenever it makes sense. r? ``@compiler-errors`` | ||||
| 2024-03-13 | Rename `TypeCx` -> `PatCx` | Nadrieril | -13/+13 | |
| 2024-03-12 | Don't suggest an arm when suggesting a never pattern | Nadrieril | -0/+8 | |
| 2024-03-12 | Suggest never pattern instead of `_` for empty types | Nadrieril | -3/+9 | |
| 2024-03-12 | Add `Constructor::Never` | Nadrieril | -0/+1 | |
| 2024-03-11 | `DeconstructedPat.data` is always present now | Nadrieril | -8/+6 | |
| 2024-03-11 | Store field indices in `DeconstructedPat` to avoid virtual wildcards | Nadrieril | -50/+60 | |
| 2024-03-11 | Store pattern arity in `DeconstructedPat` | Nadrieril | -2/+14 | |
| Right now this is just `self.fields.len()` but that'll change in the next commit. `arity` will be useful for the `Debug` impl. | ||||
| 2024-02-28 | Rename `Skip` to `PrivateUninhabited` | Nadrieril | -4/+6 | |
| 2024-02-28 | Don't filter out skipped fields | Nadrieril | -5/+0 | |
| 2024-02-28 | Add special `Skip` constructor | Nadrieril | -1/+3 | |
| 2024-02-28 | Push the decision to skip fields further down | Nadrieril | -2/+6 | |
| 2024-02-07 | Use a unique id instead of by-address indexing | Nadrieril | -2/+15 | |
| 2024-02-07 | Cleanup comments and dead code | Nadrieril | -28/+4 | |
| 2024-02-07 | Move usefulness-specific pattern computations to `usefulness` | Nadrieril | -27/+10 | |
| 2024-02-06 | Rollup merge of #120331 - Nadrieril:no-arena, r=compiler-errors | Matthias Krüger | -13/+19 | |
| pattern_analysis: use a plain `Vec` in `DeconstructedPat` The use of an arena-allocated slice in `DeconstructedPat` dates to when we needed the arena anyway for lifetime reasons. Now that we don't, I'm thinking that if `thir::Pat` can use plain old `Vec`s, maybe so can I. r? ```@ghost``` | ||||
| 2024-02-03 | Rollup merge of #120516 - Nadrieril:cleanup-impls, r=compiler-errors | Matthias Krüger | -10/+1 | |
| pattern_analysis: cleanup manual impls https://github.com/rust-lang/rust/pull/120420 introduced some unneeded manual impls. I remove them here. r? ```@Nilstrieb``` | ||||
| 2024-01-31 | Use a `Vec` instead of a slice in `DeconstructedPat` | Nadrieril | -13/+19 | |
| 2024-01-31 | Manual `Debug` impls are not needed since `TypeCx: Debug` | Nadrieril | -10/+1 | |
| 2024-01-30 | Limit the use of `PlaceCtxt` | Nadrieril | -4/+3 | |
| 2024-01-27 | Stop using derivative in rustc_pattern_analysis | Laurențiu Nicola | -4/+27 | |
| 2024-01-25 | Rollup merge of #120318 - Nadrieril:share-debug-impl, r=compiler-errors | Matthias Krüger | -1/+69 | |
| pattern_analysis: Reuse most of the `DeconstructedPat` `Debug` impl The `DeconstructedPat: Debug` is best-effort because we'd need `tcx` to get things like field names etc. Since rust-analyzer has a similar constraint, this PR moves most the impl to be shared between the two. While I was at it I also fixed a nit in the `IntRange: Debug` impl. r? `@compiler-errors` | ||||
| 2024-01-24 | Most of the `DeconstructedPat` `Debug` impl is reusable | Nadrieril | -1/+69 | |
| 2024-01-24 | Let `ctor_sub_tys` return any Iterator they want | Nadrieril | -2/+1 | |
| Since we always clone and allocate the types somewhere else ourselves, no need to ask for `Cx` to do the allocation. | ||||
| 2024-01-20 | Remove Ty: Copy bound | Nadrieril | -6/+6 | |
| 2024-01-12 | rustc_pattern_analysis no longer needs to be passed an arena | Nadrieril | -1/+1 | |
| 2024-01-09 | Avoid `PatOrWild` glob import | Nadrieril | -18/+18 | |
| 2024-01-07 | We only need the arity of the subtype list now | Nadrieril | -7/+5 | |
| 2024-01-07 | Use special enum to represent algorithm-generated wildcards in the matrix | Nadrieril | -22/+82 | |
| 2024-01-06 | Reuse `ctor_sub_tys` when we have one around | Nadrieril | -2/+3 | |
| 2023-12-26 | Clean up more lifetimes | Michael Goulet | -6/+4 | |
| 2023-12-26 | Yeet some lifetimes | Michael Goulet | -1/+1 | |
| 2023-12-23 | Clarify the situation with dummy patterns and `PatData` | Nadrieril | -7/+11 | |
| Use an explicit `Option` instead of requiring a `Default` bound | ||||
| 2023-12-23 | Use `derivative` for better derive bounds | Nadrieril | -1/+2 | |
| 2023-12-15 | s/MatchCx/TypeCx/ | Nadrieril | -6/+6 | |
| 2023-12-15 | Introduce `MatchCtxt` | Nadrieril | -3/+3 | |
| 2023-12-15 | s/PatCtxt/PlaceCtxt/ | Nadrieril | -3/+3 | |
| 2023-12-15 | `pattern_analysis` doesn't need to know what spans are | Nadrieril | -18/+18 | |
| 2023-12-15 | Make the `rustc_data_structures` dependency optional | Nadrieril | -5/+3 | |
| 2023-12-15 | Abstract `MatchCheckCtxt` into a trait | Nadrieril | -39/+37 | |
| 2023-12-15 | Disentangle the arena from `MatchCheckCtxt` | Nadrieril | -16/+19 | |
| 2023-12-15 | Remove all matching on `ty.kind()` outside `cx` | Nadrieril | -28/+21 | |
| 2023-12-11 | Fix item visibilities | Nadrieril | -11/+11 | |
| 2023-12-11 | Gather rustc-specific functions around `MatchCheckCtxt` | Nadrieril | -560/+21 | |
