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