From 9f414a44a747edc7dc229e0eaf6fbda5e6ea10e1 Mon Sep 17 00:00:00 2001 From: Vadim Petrochenkov Date: Sat, 13 Feb 2016 15:51:27 +0300 Subject: Split ast::PatKind::Enum into tuple struct and path patterns --- src/libsyntax/ext/build.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/libsyntax/ext') diff --git a/src/libsyntax/ext/build.rs b/src/libsyntax/ext/build.rs index 312154e5a8d..0eb42f17f68 100644 --- a/src/libsyntax/ext/build.rs +++ b/src/libsyntax/ext/build.rs @@ -827,7 +827,11 @@ impl<'a> AstBuilder for ExtCtxt<'a> { self.pat(span, pat) } fn pat_enum(&self, span: Span, path: ast::Path, subpats: Vec>) -> P { - let pat = PatKind::Enum(path, Some(subpats)); + let pat = if subpats.is_empty() { + PatKind::Path(path) + } else { + PatKind::TupleStruct(path, Some(subpats)) + }; self.pat(span, pat) } fn pat_struct(&self, span: Span, -- cgit 1.4.1-3-g733a5