6个版本 (3个重大更新)
0.4.2 | 2023年6月4日 |
---|---|
0.4.1 |
|
0.4.0 | 2022年8月11日 |
0.3.0 | 2022年8月8日 |
0.1.0 | 2022年7月26日 |
#10 in #mex
在 rustmex 中使用
4KB
Rustmex
一个库,提供便捷的Rust绑定到Matlab的MEX C API。
Rustmex使在Rust中编写MEX函数变得更容易。它将Matlab类型和它提供的mexFunction参数转换为更Rusty的类型,然后可以使用这些类型轻松地与其他Rust代码进行接口。
架构
主要库是'rustmex'包。这个包是面向用户的。
这个包不直接链接到Matlab或Octave的API。这是因为它们各自使用不同的符号名称。相反,Rustmex有一组包,这些包都公开了相同的功能的相同符号名称(即rustmex_*
函数),它们主要转发到后端API中的适当函数。
这些不同的后端也以不同的方式表示复杂数组。两个通过分别存储实部和虚部来表示复杂数组;另一个通过交错存储它们。使用上述适配器包所实现的是,如果与另一个后端配对的数值包期望一种表示(因此是一组rustmex_
符号),则编译失败(通过链接失败)。
依赖关系
~1.5MB
~35K SLoC