4个版本 (2个破坏性更新)
| 0.3.0 | 2021年3月25日 |
|---|---|
| 0.2.0 | 2020年12月20日 |
| 0.1.1 | 2020年10月10日 |
| 0.1.0 | 2020年10月10日 |
#9 in #julia
1.5MB
26K SLoC
将Julia数组借用为ndarray的ArrayView和ArrayViewMut。
此crate定义了一个单一特质NdArray,它提供返回数组数据的不可变或可变视图的方法,并由jlrs中的Array和TypedArray实现。
示例
use jlrs::prelude::*;
use jlrs_ndarray::NdArray;
fn main() {
let mut julia = unsafe { Julia::init(16).unwrap() };
julia.dynamic_frame(|_global, frame| {
let mut data = vec![1usize, 2, 3, 4, 5, 6];
let slice = &mut data.as_mut_slice();
let borrowed = Value::borrow_array(frame, slice, (3, 2))?;
let _array = borrowed.cast::<TypedArray<usize>>()?.array_view(frame)?;
Ok(())
}).unwrap();
}
lib.rs:
将Julia数组借用为ndarray的ArrayView和ArrayViewMut。
此crate定义了一个单一特质NdArray,它提供返回数组数据的不可变或可变视图的方法,并由jlrs中的Array和TypedArray实现。使用TypedArray使用此特质更容易,使用Array时,您可能需要提供类型注解。
依赖关系
~2.6–5MB
~99K SLoC