[−][src]Trait proc_quote::ToTokens
Types that can be interpolated inside a quote! invocation.
Required methods
fn to_tokens(&self, tokens: &mut TokenStream)
Write self to the given TokenStream.
The token append methods provided by the TokenStreamExt extension
trait may be useful for implementing ToTokens.
Example
Example implementation for a struct representing Rust paths like
std::cmp::PartialEq:
use proc_macro2::{TokenTree, Spacing, Span, Punct, TokenStream}; use quote::{TokenStreamExt, ToTokens}; pub struct Path { pub global: bool, pub segments: Vec<PathSegment>, } impl ToTokens for Path { fn to_tokens(&self, tokens: &mut TokenStream) { for (i, segment) in self.segments.iter().enumerate() { if i > 0 || self.global { // Double colon `::` tokens.append(Punct::new(':', Spacing::Joint)); tokens.append(Punct::new(':', Spacing::Alone)); } segment.to_tokens(tokens); } } }
Provided methods
fn to_token_stream(&self) -> TokenStream
Convert self directly into a TokenStream object.
This method is implicitly implemented using to_tokens, and acts as a
convenience method for consumers of the ToTokens trait.
fn into_token_stream(self) -> TokenStream
Convert self directly into a TokenStream object.
This method is implicitly implemented using to_tokens, and acts as a
convenience method for consumers of the ToTokens trait.
Implementations on Foreign Types
impl ToTokens for Group[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl<T> ToTokens for Rc<T> where
T: ToTokens + ?Sized, [src]
T: ToTokens + ?Sized,
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Ident[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for i16[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for i32[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for usize[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for str[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for TokenTree[src]
fn to_tokens(&self, dst: &mut TokenStream)[src]
impl ToTokens for u8[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for i8[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for bool[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for u128[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for TokenStream[src]
fn to_tokens(&self, dst: &mut TokenStream)[src]
fn into_token_stream(self) -> TokenStream[src]
impl ToTokens for Punct[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for u64[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl<'a, T> ToTokens for &'a mut T where
T: ToTokens + ?Sized, [src]
T: ToTokens + ?Sized,
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for String[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl<T> ToTokens for Option<T> where
T: ToTokens, [src]
T: ToTokens,
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for u32[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for u16[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for f64[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for i128[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl<'a, T> ToTokens for Cow<'a, T> where
T: ToTokens + ToOwned + ?Sized, [src]
T: ToTokens + ToOwned + ?Sized,
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for isize[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl<T> ToTokens for Box<T> where
T: ToTokens + ?Sized, [src]
T: ToTokens + ?Sized,
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl<'a, T> ToTokens for &'a T where
T: ToTokens + ?Sized, [src]
T: ToTokens + ?Sized,
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for i64[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for f32[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for char[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Literal[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for BoundLifetimes[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Type[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Ge[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Virtual[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for ExprGroup[src]
fn to_tokens(&self, &mut TokenStream)[src]
impl ToTokens for Binding[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Bang[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for TraitBoundModifier[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Ne[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for ExprTryBlock[src]
fn to_tokens(&self, &mut TokenStream)[src]
impl ToTokens for If[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for RArrow[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Unsafe[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for TypeArray[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Comma[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for TypeTraitObject[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for AndAnd[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for For[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for ExprForLoop[src]
fn to_tokens(&self, &mut TokenStream)[src]
impl ToTokens for ExprClosure[src]
fn to_tokens(&self, &mut TokenStream)[src]
impl ToTokens for Or[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Macro[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for TypeGroup[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Colon2[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for LitByteStr[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for RemEq[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for BareFnArg[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl<T, P> ToTokens for Punctuated<T, P> where
P: ToTokens,
T: ToTokens, [src]
P: ToTokens,
T: ToTokens,
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for LitStr[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for CaretEq[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Member[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Mut[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Try[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for GenericArgument[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for AndEq[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for PredicateType[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Abstract[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for DotDotEq[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for TypeParam[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for ExprYield[src]
fn to_tokens(&self, &mut TokenStream)[src]
impl ToTokens for ExprAsync[src]
fn to_tokens(&self, &mut TokenStream)[src]
impl ToTokens for Le[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for ConstParam[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for TypePath[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Gt[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for ExprAwait[src]
fn to_tokens(&self, &mut TokenStream)[src]
impl ToTokens for ExprLit[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for TypeParamBound[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for AddEq[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for ExprWhile[src]
fn to_tokens(&self, &mut TokenStream)[src]
impl ToTokens for Lifetime[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for ExprBox[src]
fn to_tokens(&self, &mut TokenStream)[src]
impl ToTokens for FieldsUnnamed[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for LitChar[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for LitByte[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Impl[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for TraitBound[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for While[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Index[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Lt[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for AngleBracketedGenericArguments[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for ParenthesizedGenericArguments[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for ExprField[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for LitBool[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Fn[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for SelfType[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Return[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Visibility[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for TypePtr[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Macro[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Add[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for SelfValue[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Star[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Typeof[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Do[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for ExprReference[src]
fn to_tokens(&self, &mut TokenStream)[src]
impl ToTokens for Colon[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Semi[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Constraint[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for ExprContinue[src]
fn to_tokens(&self, &mut TokenStream)[src]
impl ToTokens for Pub[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Await[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Field[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for LArrow[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Override[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for ShlEq[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for TypeReference[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for ExprCall[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for ExprArray[src]
fn to_tokens(&self, &mut TokenStream)[src]
impl ToTokens for Match[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for GenericParam[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Break[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Fields[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for ExprUnary[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for In[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Lit[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for PathSegment[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Enum[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Sub[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for VisCrate[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for ExprType[src]
fn to_tokens(&self, &mut TokenStream)[src]
impl ToTokens for Dyn[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for DeriveInput[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for SubEq[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for At[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for WhereClause[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for LitInt[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Path[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for TypeTuple[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for ExprReturn[src]
fn to_tokens(&self, &mut TokenStream)[src]
impl ToTokens for Ref[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for OrEq[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Continue[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Caret[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for MetaList[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Type[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for ExprPath[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Extern[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for ExprRepeat[src]
fn to_tokens(&self, &mut TokenStream)[src]
impl ToTokens for TypeInfer[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Unsized[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Expr[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for Abi[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for LitFloat[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for ExprStruct[src]
fn to_tokens(&self, &mut TokenStream)[src]
impl ToTokens for Yield[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl ToTokens for TypeMacro[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
impl<T, P> ToTokens for Pair<T, P> where
P: ToTokens,
T: ToTokens, [src]
P: ToTokens,
T: ToTokens,