[−][src]Trait quote::TokenStreamExt
TokenStream extension trait with methods for appending tokens.
This trait is sealed and cannot be implemented outside of the quote
crate.
Required methods
fn append<U>(&mut self, token: U) where
U: Into<TokenTree>,
U: Into<TokenTree>,
For use by ToTokens
implementations.
Appends the token specified to this list of tokens.
fn append_all<T, I>(&mut self, iter: I) where
T: ToTokens,
I: IntoIterator<Item = T>,
T: ToTokens,
I: IntoIterator<Item = T>,
For use by ToTokens
implementations.
# use quote::{quote, TokenStreamExt, ToTokens};
# use proc_macro2::TokenStream;
#
struct X;
impl ToTokens for X {
fn to_tokens(&self, tokens: &mut TokenStream) {
tokens.append_all(&[true, false]);
}
}
let tokens = quote!(#X);
assert_eq!(tokens.to_string(), "true false");
fn append_separated<T, I, U>(&mut self, iter: I, op: U) where
T: ToTokens,
I: IntoIterator<Item = T>,
U: ToTokens,
T: ToTokens,
I: IntoIterator<Item = T>,
U: ToTokens,
For use by ToTokens
implementations.
Appends all of the items in the iterator I
, separated by the tokens
U
.
fn append_terminated<T, I, U>(&mut self, iter: I, term: U) where
T: ToTokens,
I: IntoIterator<Item = T>,
U: ToTokens,
T: ToTokens,
I: IntoIterator<Item = T>,
U: ToTokens,
For use by ToTokens
implementations.
Appends all tokens in the iterator I
, appending U
after each
element, including after the last element of the iterator.
Implementations on Foreign Types
impl TokenStreamExt for TokenStream
[src]
fn append<U>(&mut self, token: U) where
U: Into<TokenTree>,
[src]
U: Into<TokenTree>,
fn append_all<T, I>(&mut self, iter: I) where
T: ToTokens,
I: IntoIterator<Item = T>,
[src]
T: ToTokens,
I: IntoIterator<Item = T>,
fn append_separated<T, I, U>(&mut self, iter: I, op: U) where
T: ToTokens,
I: IntoIterator<Item = T>,
U: ToTokens,
[src]
T: ToTokens,
I: IntoIterator<Item = T>,
U: ToTokens,
fn append_terminated<T, I, U>(&mut self, iter: I, term: U) where
T: ToTokens,
I: IntoIterator<Item = T>,
U: ToTokens,
[src]
T: ToTokens,
I: IntoIterator<Item = T>,
U: ToTokens,