#llvm #wrapper #bindings #safe-wrapper #proc-macro #tablegen

tblgen-alt

TableGen的安全Rust绑定。更新后的替代版本。

5个版本

0.3.6 2024年6月6日
0.3.5 2024年6月6日
0.3.3 2024年5月2日
0.3.2 2024年4月29日
0.3.1 2024年4月29日

#88FFI

Download history 420/week @ 2024-04-28 157/week @ 2024-05-05 148/week @ 2024-05-12 417/week @ 2024-05-19 706/week @ 2024-05-26 1367/week @ 2024-06-02 586/week @ 2024-06-09 393/week @ 2024-06-16 444/week @ 2024-06-23 327/week @ 2024-06-30 285/week @ 2024-07-07 254/week @ 2024-07-14 334/week @ 2024-07-21 369/week @ 2024-07-28 281/week @ 2024-08-04

1,248 每月下载量
2 个crate中使用(通过 melior-macro

MIT/Apache

86KB
2K SLoC

Rust 1.5K SLoC // 0.0% comments C++ 459 SLoC // 0.1% comments Shell 8 SLoC

tblgen

GitHub Action Crate Crates.io Total Downloads Crates.io License

这是一个更新版(LLVM 18)的分支,源自 https://gitlab.com/Danacus/tblgen-rs。原始作者:Daan Vanoverloop。

这个crate提供对TableGen的原生绑定和一个安全包装,TableGen是LLVM项目使用的领域特定语言。

这个crate的目标是允许用户在Rust中开发自定义的TableGen后端。因此,这个crate的主要用途是从TableGen描述文件生成Rust代码的过程宏。

文档

https://danacus.gitlab.io/tblgen-rs/tblgen/ 阅读文档。

支持的LLVM版本

需要安装LLVM才能使用此crate。支持LLVM 16、17和18,可以使用功能标志进行选择。

可以使用环境变量 TABLEGEN_<version>_PREFIX 指定LLVM安装的自定义目录。

依赖

~0.2–2.6MB
~54K SLoC