mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-22 14:55:26 +00:00
Remove PatKind::Box
This commit is contained in:
parent
ed3e38f336
commit
15cc0e1b5c
@ -832,7 +832,7 @@ impl<'p, 'tcx: 'p> RustcPatCtxt<'p, 'tcx> {
|
|||||||
Struct if pat.ty().is_box() => {
|
Struct if pat.ty().is_box() => {
|
||||||
// Outside of the `alloc` crate, the only way to create a struct pattern
|
// Outside of the `alloc` crate, the only way to create a struct pattern
|
||||||
// of type `Box` is to use a `box` pattern via #[feature(box_patterns)].
|
// of type `Box` is to use a `box` pattern via #[feature(box_patterns)].
|
||||||
PatKind::Box { subpattern: hoist(&pat.fields[0]) }
|
PatKind::Print(format!("box {}", hoist(&pat.fields[0])))
|
||||||
}
|
}
|
||||||
Struct | Variant(_) | UnionField => {
|
Struct | Variant(_) | UnionField => {
|
||||||
let enum_info = match *pat.ty().kind() {
|
let enum_info = match *pat.ty().kind() {
|
||||||
|
@ -32,10 +32,6 @@ pub(crate) struct Pat<'tcx> {
|
|||||||
|
|
||||||
#[derive(Clone, Debug)]
|
#[derive(Clone, Debug)]
|
||||||
pub(crate) enum PatKind<'tcx> {
|
pub(crate) enum PatKind<'tcx> {
|
||||||
Box {
|
|
||||||
subpattern: Box<Pat<'tcx>>,
|
|
||||||
},
|
|
||||||
|
|
||||||
Deref {
|
Deref {
|
||||||
subpattern: Box<Pat<'tcx>>,
|
subpattern: Box<Pat<'tcx>>,
|
||||||
},
|
},
|
||||||
@ -63,7 +59,6 @@ impl<'tcx> fmt::Display for Pat<'tcx> {
|
|||||||
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||||
match self.kind {
|
match self.kind {
|
||||||
PatKind::Never => write!(f, "!"),
|
PatKind::Never => write!(f, "!"),
|
||||||
PatKind::Box { ref subpattern } => write!(f, "box {subpattern}"),
|
|
||||||
PatKind::Deref { ref subpattern } => write_ref_like(f, self.ty, subpattern),
|
PatKind::Deref { ref subpattern } => write_ref_like(f, self.ty, subpattern),
|
||||||
PatKind::Constant { value } => write!(f, "{value}"),
|
PatKind::Constant { value } => write!(f, "{value}"),
|
||||||
PatKind::Range(ref range) => write!(f, "{range}"),
|
PatKind::Range(ref range) => write!(f, "{range}"),
|
||||||
|
Loading…
Reference in New Issue
Block a user