Trait TokenStreamExt

Source
pub trait TokenStreamExt:
    Default
    + Extend<TokenTree>
    + Extend<TokenStream>
    + IntoIterator<Item = TokenTree>
    + Sized {
    // Required method
    fn split_puncts(
        self,
        puncts: impl AsRef<[u8]>,
    ) -> Option<(Self, ParseIter<Self::IntoIter>)>;

    // Provided methods
    fn push(&mut self, tt: TokenTree) -> &mut Self { ... }
    fn add(&mut self, stream: TokenStream) -> &mut Self { ... }
    fn parse_iter(self) -> ParseIter<Self::IntoIter>  { ... }
}

Required Methods§

Source

fn split_puncts( self, puncts: impl AsRef<[u8]>, ) -> Option<(Self, ParseIter<Self::IntoIter>)>

Split TokenStream to predicate false and true

Like "+-,-+".split_puncts(",") -> ("+-", "-+")

Provided Methods§

Source

fn push(&mut self, tt: TokenTree) -> &mut Self

Source

fn add(&mut self, stream: TokenStream) -> &mut Self

Source

fn parse_iter(self) -> ParseIter<Self::IntoIter>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl TokenStreamExt for TokenStream

Source§

fn split_puncts( self, puncts: impl AsRef<[u8]>, ) -> Option<(Self, ParseIter<Self::IntoIter>)>

Implementors§