From fa8ee06ee5456a70edffd768e907f790a7060757 Mon Sep 17 00:00:00 2001 From: David Tolnay Date: Sun, 7 Jun 2020 10:53:57 -0700 Subject: [PATCH] Generate more concise code for empty quote --- src/lib.rs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/lib.rs b/src/lib.rs index e2869e3..2977e47 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -472,6 +472,9 @@ pub mod spanned; /// ``` #[macro_export] macro_rules! quote { + () => { + $crate::__private::TokenStream::new() + }; ($($tt:tt)*) => {{ let mut _s = $crate::__private::TokenStream::new(); $crate::quote_each_token!(_s $($tt)*); @@ -577,6 +580,10 @@ macro_rules! quote { /// placed appropriately by the compiler. #[macro_export] macro_rules! quote_spanned { + ($span:expr=>) => {{ + let _: $crate::__private::Span = $span; + $crate::__private::TokenStream::new() + }}; ($span:expr=> $($tt:tt)*) => {{ let mut _s = $crate::__private::TokenStream::new(); let _span: $crate::__private::Span = $span;