2个不稳定版本
0.2.0 | 2023年10月3日 |
---|---|
0.1.0 | 2023年7月11日 |
#963 in 过程宏
6KB
57 行
Literify
在传递的令牌流中字符串化(并连接)括号内的字面量。也可以在括号内与其他字符串连接。
当您需要在宏中使用字面量,但宏期望一个字面量令牌树时,这很有用,此时无法使用 stringify!
。
示例
use logos::Logos;
literify::literify! {
#[derive(Debug, PartialEq, Logos)]
enum Token {
#[token(~("amog" u s))]
Amogus,
#[token(~(.))]
Dot,
}
}
let mut lexer = Token::lexer("amogus.");
assert_eq!(
lexer.next(),
Some(Ok(Token::Amogus)),
);
assert_eq!(
lexer.next(),
Some(Ok(Token::Dot)),
)
依赖项
~190–255KB