2个不稳定版本
0.2.0 | 2022年12月4日 |
---|---|
0.1.0 | 2022年12月2日 |
#8 in #emulating
16KB
320 代码行
safe-goto
在Rust中模仿类似于IRLO的“安全goto值”预RFC的类似安全goto指令。
该包包含一个宏,safe_goto
,它通过在枚举上的match操作包装循环来模仿使用值的goto。
目标
本包的目的是双重的
- 提供一个测试平台,用于在Rust中实验安全版本goto的模式
- 突出rust编译器在分支相关优化方面可以改进的领域
非目标
- 该包不追求最大性能。内联汇编违背了目标
- 该包不旨在成为其他构建的基础。语法可能会改变以反映stdlib或语言中可能最终实现的内容。此外,宏非常脆弱,因为它必须处理几乎任意的rust代码
示例
测试和示例包含一些功能示例。您可以使用cargo-expand等工具查看展开的宏。
依赖项
~1.5MB
~36K SLoC