[−][src]Trait quote::ToTokens
Types that can be interpolated inside a quote! invocation.
Required methods
fn to_tokens(&self, tokens: &mut Tokens)
Write self to the given Tokens.
Example implementation for a struct representing Rust paths like
std::cmp::PartialEq:
extern crate quote; use quote::{Tokens, ToTokens}; extern crate proc_macro2; use proc_macro2::{TokenTree, Spacing, Span, Op}; pub struct Path { pub global: bool, pub segments: Vec<PathSegment>, } impl ToTokens for Path { fn to_tokens(&self, tokens: &mut Tokens) { for (i, segment) in self.segments.iter().enumerate() { if i > 0 || self.global { // Double colon `::` tokens.append(Op::new(':', Spacing::Joint)); tokens.append(Op::new(':', Spacing::Alone)); } segment.to_tokens(tokens); } } }
Provided methods
fn into_tokens(self) -> Tokens where
Self: Sized,
Self: Sized,
Convert self directly into a Tokens object.
This method is implicitly implemented using to_tokens, and acts as a
convenience method for consumers of the ToTokens trait.