#proc-macro #pyo3 #impl-block #wrapping #helper #procedural #generate

nightly macro pyo3-helper-macros

一个过程宏,用于帮助包装 Rust 结构体以供 PyO3 使用

6 个版本

0.0.6 2024 年 1 月 3 日
0.0.5 2023 年 12 月 31 日

#27 in #impl-block

50 每月下载量
用于 ferric_crypto_lib

MIT 许可证

31KB
564 代码行

PyO3 辅助宏

这是一个提供辅助宏的 crate,用于 PyO3 crate。目前,它只支持包装 impl 块,使其能够与 PyO3 一起工作,而无需重新编写函数。

为了使这个 crate 不使用任何黑客手段来使其工作,您必须为 PyO3 crate 使用功能 multiple-pymethod,同样也要为本 crate 使用。这将使您能够为类型使用多个 impl 块并激活本 crate 中的 wrap_impl 宏。如果不使用此功能,您将需要使用 pyo3_bindings 宏来生成并将包装的函数存储在文件中,直到调用 impl_pyo3 宏,该宏将生成一个包含所有函数的单个 impl 块。

请注意,宏的名称将在未来版本中更改

未来计划

  • 添加对用户可以指定支持的自定义类型的参数的支持
  • 添加一个可选参数,用户可以指定应更改哪些类型以及如何更改

请参阅文档以获取有关如何使用宏的信息。

依赖项

~0.5–1MB
~21K SLoC