| extern crate proc_macro; | |
| use proc_macro::{Delimiter, Group, Ident, Span, TokenStream, TokenTree}; | |
| #[proc_macro] | |
| pub fn forge_unsafe_block(input: TokenStream) -> TokenStream { | |
| let mut output = TokenStream::new(); | |
| output.extend(Some(TokenTree::from(Ident::new("unsafe", Span::call_site())))); | |
| output.extend(Some(TokenTree::from(Group::new(Delimiter::Brace, input)))); | |
| output | |
| } |