#macro-rules #transform #syntax #token-stream #text

macro-rules-rt

使用Rust的macro_rules语法转换文本或TokenStream

2个版本

0.1.1 2023年4月2日
0.1.0 2023年4月2日

#1285 in 进程宏

MIT/Apache

74KB
2K SLoC

macro-rules-rt

Crates.io Docs.rs Actions Status

macro-rules-rt是一个crate,使用macro-rules中的语法转换Rust源代码。

示例

use macro_rules_rt::Rule;

let from = "$e:literal".parse()?;
let to = "$e * 5".parse()?;
let rule = Rule::new(from, to)?;
let source = "1 + 2";
let expect = "1 * 5 + 2 * 5";
let result = rule.replace_all(source)?;
assert_eq!(result, expect);

许可证

本项目在Apache-2.0/MIT双重许可证下发行。有关详细信息,请参阅两个LICENSE-*文件。

贡献

除非你明确声明,否则任何提交以包含在作品中的贡献,根据Apache-2.0许可证定义,将按上述方式双重许可,不附加任何额外条款或条件。

依赖项

~325–780KB
~18K SLoC