pub enum TokenTree {
Group(Group),
Ident(Ident),
Punct(Punct),
Literal(Literal),
}
展开描述
单个 token 或用分隔符分隔的 token tree 序列(例如,[1, (), ..]
)。
变体§
Group(Group)
由括号分隔符包围的 token stream。
Ident(Ident)
一个标识符。
Punct(Punct)
单个标点符号字符(+
, ,
, $
等)。
Literal(Literal)
一个字面量字符('a'
)、字符串("hello"
)、数字(2.3
)等。
实现§
Trait 实现§
1.29.0 · 源码§impl Display for TokenTree
将 token tree 打印为字符串,该字符串应能无损地转换回相同的 token tree(跨度除外),但可能不包括带有 Delimiter::None
分隔符的 TokenTree::Group
和负数字面量。
impl Display for TokenTree
将 token tree 打印为字符串,该字符串应能无损地转换回相同的 token tree(跨度除外),但可能不包括带有 Delimiter::None
分隔符的 TokenTree::Group
和负数字面量。
注意:输出的确切形式可能会发生变化,例如 token 之间使用的空格可能会发生变化。因此,您不应对输出字符串(由 to_string
生成)进行任何简单的子字符串匹配来实现 proc macro,因为如果发生此类变化,该匹配可能会停止工作。相反,您应该在 TokenTree
级别进行操作,例如匹配 TokenTree::Ident
、TokenTree::Punct
或 TokenTree::Literal
。
1.30.0 · 源码§impl Extend<TokenTree> for TokenStream
impl Extend<TokenTree> for TokenStream
1.29.0 · 源码§impl From<TokenTree> for TokenStream
创建一个包含单个 token tree 的 token stream。
impl From<TokenTree> for TokenStream
创建一个包含单个 token tree 的 token stream。
源码§fn from(tree: TokenTree) -> TokenStream
fn from(tree: TokenTree) -> TokenStream
从输入类型转换为此类型。
1.29.0 · 源码§impl FromIterator<TokenTree> for TokenStream
将多个 token tree 收集到单个 stream 中。
impl FromIterator<TokenTree> for TokenStream
将多个 token tree 收集到单个 stream 中。
源码§impl ToTokens for TokenTree
impl ToTokens for TokenTree
源码§fn to_tokens(&self, tokens: &mut TokenStream)
fn to_tokens(&self, tokens: &mut TokenStream)
🔬这是一个仅限 nightly 的实验性 API。(
proc_macro_totokens
#130977)源码§fn into_token_stream(self) -> TokenStream
fn into_token_stream(self) -> TokenStream
🔬这是一个仅限 nightly 的实验性 API。(
proc_macro_totokens
#130977)源码§fn to_token_stream(&self) -> TokenStream
fn to_token_stream(&self) -> TokenStream
🔬这是一个仅限 nightly 的实验性 API。(
proc_macro_totokens
#130977)