3个版本

0.1.2 2020年7月9日
0.1.1 2020年7月7日
0.1.0 2020年6月30日

#29 in #tokenization

MIT/Apache

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 的任何类型
  • 字符串
  • VecHashMapHashSet
  • ResultOption

依赖关系

~2MB
~43K SLoC