1.15.0[−][src]Struct proc_macro::TokenStream
The main type provided by this crate, representing an abstract stream of tokens, or, more specifically, a sequence of token trees. The type provide interfaces for iterating over those token trees and, conversely, collecting a number of token trees into one stream.
This is both the input and output of #[proc_macro]
, #[proc_macro_attribute]
and #[proc_macro_derive]
definitions.
Methods
impl TokenStream
[src][−]
pub fn new() -> TokenStream
1.29.0[src][−]
Returns an empty TokenStream
containing no token trees.
pub fn is_empty(&self) -> bool
1.29.0[src][−]
Checks if this TokenStream
is empty.
Trait Implementations
impl ToString for TokenStream
[src][+]
impl !Send for TokenStream
[src]
impl Clone for TokenStream
[src][+]
impl Extend<TokenTree> for TokenStream
1.30.0[src][+]
impl Extend<TokenStream> for TokenStream
1.30.0[src][+]
impl !Sync for TokenStream
[src]
impl From<TokenTree> for TokenStream
1.29.0[src][+]
fn from(tree: TokenTree) -> TokenStream
[src][−]
impl IntoIterator for TokenStream
1.29.0[src][+]
impl Display for TokenStream
[src][+]
impl Debug for TokenStream
[src][+]
impl FromStr for TokenStream
[src][+]
impl FromIterator<TokenTree> for TokenStream
1.29.0[src][+]
fn from_iter<I: IntoIterator<Item = TokenTree>>(trees: I) -> Self
[src][−]
impl FromIterator<TokenStream> for TokenStream
[src][+]
fn from_iter<I: IntoIterator<Item = TokenStream>>(streams: I) -> Self
[src][−]
Blanket Implementations
impl<T> ToString for T where
T: Display + ?Sized,
[src][+]
T: Display + ?Sized,
impl<T, U> Into<U> for T where
U: From<T>,
[src][+]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src][+]
T: Clone,
impl<T> From<T> for T
[src][+]
impl<I> IntoIterator for I where
I: Iterator,
[src][+]
I: Iterator,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src][+]
U: Into<T>,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src][+]
U: TryFrom<T>,
impl<T> Borrow<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src][+]
T: 'static + ?Sized,