mquote 0.1.0

Quasi-quoting library aimed on better readability and usability
Documentation
use std::iter;

use super::proc_macro2::{TokenStream, TokenTree, Ident};

pub trait ToTokens {
    fn to_tokens(&self, token_stream: &mut TokenStream);
}

impl ToTokens for Ident {
    fn to_tokens(&self, token_stream: &mut TokenStream) {
        token_stream.extend(iter::once(TokenTree::Ident(self.clone())))
    }
}

impl<T: ToTokens+?Sized> ToTokens for &T {
    fn to_tokens(&self, token_stream: &mut TokenStream) {
        <T as ToTokens>::to_tokens(self, token_stream)
    }
}