about summary refs log tree commit diff
path: root/compiler/rustc_mir_build/src/thir/pattern/usefulness.rs
AgeCommit message (Expand)AuthorLines
2022-07-28Pass PatCtxt instead of passing MatchCtxt + Ty separatelyOli Scherer-5/+5
2022-07-28Don't pass (the rather large) `PatCtxt` by valueOli Scherer-4/+4
2022-07-28Move constructor into the branch that actually uses itOli Scherer-5/+5
2022-07-20Revert "Rollup merge of #98582 - oli-obk:unconstrained_opaque_type, r=estebank"Oli Scherer-18/+10
2022-07-15Infer wildcard type from other patterns at every pattern levelOli Scherer-6/+14
2022-07-15Move constructor into the branch that actually uses itOli Scherer-5/+5
2022-07-15Revert a hack that only ever worked on level deepOli Scherer-5/+1
2022-07-15Allow destructuring opaque types, since the patterns constrain the opaque typesOli Scherer-1/+5
2022-06-24use true recursionouz-a-14/+19
2022-06-17expand inner `or` patternouz-a-1/+11
2022-05-20Remove `crate` visibility usage in compilerJacob Pratt-15/+15
2022-05-02fix most compiler/ doctestsElliot Roberts-13/+24
2022-04-02do use ty::Const in patterns and abstract constsb-naber-5/+8
2022-03-30Spellchecking compiler commentsYuri Astrakhan-3/+3
2022-03-11Improve `AdtDef` interning.Nicholas Nethercote-1/+1
2021-11-23Fix stack overflow in `usefulness.rs`Badel2-4/+7
2021-11-12Auto merge of #90813 - notriddle:notriddle/vec-extend, r=GuillaumeGomezbors-3/+1
2021-11-11Use `Vec::extend`, instead of calling `Vec::push` in a loopMichael Howell-3/+1
2021-11-09Change the `assert` in `is_useful` to a `debug_assert`.Nicholas Nethercote-1/+1
2021-10-12Filter unstable and doc hidden variants in usefulness checkingDevin Ragotzy-6/+26
2021-10-01Normalize after substituting via `field.ty()`Nadrieril-2/+1
2021-09-26Trivialize tracking of unreachable subpatternsNadrieril-278/+35
2021-09-26Avoid double-deref in `Fields`Nadrieril-2/+1
2021-09-26Replace `Pat` with a new intermediate representationNadrieril-161/+64
2021-09-26Remove dependency of `SubPatSet` on `Pat`Nadrieril-27/+23
2021-09-26Move special `&str` handling to `Constructor` and `Fields`Nadrieril-18/+4
2021-09-26Rework `Fields` internals.Nadrieril-10/+18
2021-09-26A for loop is a lot faster apparentlyNadrieril-29/+9
2021-09-26Remove premature shortcuttingNadrieril-26/+12
2021-09-14Add reachable_patterns lint to rfc-2008-non_exhaustiveDevin Ragotzy-33/+121
2021-08-22Fix more “a”/“an” typosFrank Steffahn-1/+1
2021-05-22Make THIR building a stealable queryLeSeulArtichaut-1/+1
2021-05-22Move THIR structure definitions to `rustc_middle`LeSeulArtichaut-28/+26
2021-02-22Auto merge of #81978 - tmiasko:head-ctor, r=Mark-Simulacrumbors-0/+1
2021-02-18Inline hot part of PatStack::head_ctorTomasz Miąsko-0/+1
2021-02-15Use !Sync std::lazy::OnceCell in usefulness checkingTomasz Miąsko-1/+1
2021-02-13Use debug log level for developer oriented logsTomasz Miąsko-1/+4
2021-02-01Make `SubPatSet` clearer by flipping its meaningNadrieril-94/+119
2021-01-24Specialized `Usefulness` variants are redundantNadrieril-39/+19
2021-01-24Identify subpatterns by the path to them instead of spansNadrieril-107/+234
2021-01-24Factor or-pattern expansionNadrieril-24/+36
2021-01-24Split `Usefulness::NotUseful` into twoNadrieril-32/+52
2021-01-24Reimplement `Usefulness::merge` in terms of a binopNadrieril-39/+24
2021-01-24Don't expose `Usefulness` in the apiNadrieril-3/+16
2021-01-24Improve the debugging experienceNadrieril-23/+30
2021-01-14Use Option::map_or instead of `.map(..).unwrap_or(..)`LingMan-1/+1
2020-12-22Fix a commentNadrieril-4/+4
2020-12-22Apply suggestions from code reviewNadrieril-9/+10
2020-12-22Simplify field filteringNadrieril-1/+1
2020-12-22Make the special "missing patterns" constructor realNadrieril-2/+11