18个版本
0.6.3 | 2023年6月4日 |
---|---|
0.6.0-pre3 | 2023年3月1日 |
0.5.0 | 2022年8月11日 |
0.1.2 | 2022年7月27日 |
#493 在 算法
90 每月下载量
170KB
3.5K SLoC
Rustmex
一个库,为Matlab的MEX C API提供便捷的Rust绑定。
Rustmex让在Rust中编写MEX函数变得更容易。它将Matlab类型及其提供给 mexFunction
的参数转换为更Rust类型,然后可以用来轻松地与其他Rust代码进行接口。
有关安装和文档以及链接示例,请参阅文档。
v0.6 更新说明
Rustmex v0.6 对该包进行了重大重构。它已分解为一组包,使得每个包可以单独编译;对于Rustmex本身来说,不再需要功能标志;然而,最简单的安装方法仍然是使用功能标志来选择适当的后端;请参考后端模块的文档以获取说明。然而,Rustmex面向“普通”用户的API应该仍然与之前大致相同;只是内部发生了变化。
使用示例
以下是使用Rustmex的“Hello World”示例
use rustmex::prelude::*;
#[rustmex::entrypoint]
fn hello_world(lhs: Lhs, rhs: Rhs) -> rustmex::Result<()> {
println!("Hello Matlab!");
Ok(())
}
它展示了Rustmex MEX文件的基本部分:一个标记为 entrypoint
的函数,Lhs
和 Rhs
数组,分别是返回值和参数,以及 Result
类型来指示错误条件。更多示例(已测试)可以在Rustmex仓库中的 examples
目录中找到。
许可证
此许可授予您Mozilla公共许可证版本2。您可以在本项目的源代码树根目录中的LICENCE文件中找到许可证。
作者
- Niels ter Meer(维护者)
依赖项
~1.5MB
~30K SLoC