3个版本
0.1.2 | 2020年7月9日 |
---|---|
0.1.1 | 2020年7月7日 |
0.1.0 | 2020年6月30日 |
#29 in #tokenization
33KB
794 行
Iroha
Iroha是一个用于Rust的令牌化库。
用法
Iroha提供衍生宏 iroha::ToTokens
。派生的结构体或枚举将实现 quote::ToTokens
。
use iroha::ToTokens;
use proc_macro2::TokenStream;
use quote::quote;
#[derive(ToTokens)]
struct Foo {
a: i32,
b: i64
}
#[derive(ToTokens)]
enum Bar {
A,
B
}
fn some_fn() -> TokenStream {
let foo = Foo {a: 1, b: 2};
let bar = Bar::A;
quote! {
|| (#foo, #bar)
}
}
支持类型
- 实现了
quote::ToTokens
的任何类型 字符串
Vec
、HashMap
、HashSet
Result
、Option
依赖关系
~2MB
~43K SLoC