å—到 Python-fire çš„å¯å‘,写了Rust版本。
利用过程å®ï¼Œåœ¨ç¼–译期修改 AST
æ¥è¾¾æˆã€‚
å‡ ä¸ªé‡è¦çš„package:
TokenStream
```rust use fire_rs::fire;
fn hello(a: i64, b: i64, c: String) { println!("{} is {}", a + b, c) }
fn main() { hello_fire();// 利用å®ç”Ÿæˆå‡ºçš„新函数 }
```
命令行输入 cargo run -- 2 4 cool
或 cargo run -- --a 2 --b 4 --c cool
输出 6 is cool