1 use syntax_expand::base::{self, ExtCtxt};
2 use syntax::symbol::kw;
4 use syntax::tokenstream::{TokenTree, TokenStream};
6 pub fn expand_trace_macros(cx: &mut ExtCtxt<'_>,
9 -> Box<dyn base::MacResult + 'static> {
10 let mut cursor = tt.into_trees();
12 let value = match &cursor.next() {
13 Some(TokenTree::Token(token)) if token.is_keyword(kw::True) => true,
14 Some(TokenTree::Token(token)) if token.is_keyword(kw::False) => false,
20 err |= cursor.next().is_some();
22 cx.span_err(sp, "trace_macros! accepts only `true` or `false`")
24 cx.set_trace_macros(value);
27 base::DummyResult::any_valid(sp)