Expand description
Device-agnostic strided view types and metadata operations.
This crate is a Rust port of Julia’s StridedViews.jl, providing strided multidimensional array view types with zero-copy metadata transformations.
§Core Types
StridedView/StridedViewMut: Dynamic-rank strided views over existing dataStridedArray: Owned strided multidimensional arrayElementOptrait and implementations (Identity,Conj,Transpose,Adjoint): Type-level element operations applied lazily on access
§Metadata Transformations
These operate only on dims/strides/offset and never access the underlying data:
permute: Reorder dimensionstranspose_2d,adjoint_2d: 2D matrix transformationsconj: Compose conjugation operationbroadcast: Expand size-1 dimensions
Re-exports§
pub use view::col_major_strides;pub use view::row_major_strides;pub use view::StridedArray;pub use view::StridedView;pub use view::StridedViewMut;
Modules§
- auxiliary
- Auxiliary routines ported from StridedViews.jl/src/auxiliary.jl
- view
- Julia-like dynamic-rank strided view types.
Structs§
- Adjoint
- Adjoint operation: f(x) = adjoint(x) = conj(transpose(x)) For scalar numbers, this is conj.
- Conj
- Complex conjugate operation: f(x) = conj(x)
- Identity
- Identity operation: f(x) = x
- Transpose
- Transpose operation: f(x) = transpose(x) For scalar numbers, this is identity. For matrix elements, this would transpose each element.
Enums§
- Strided
Error - Errors that can occur during strided array operations.
Traits§
- Composable
Element Op - Trait for element operations that support type-level composition.
- Compose
- Helper trait for composing two ElementOp types.
- Element
Op - Trait for element-wise operations applied to strided views.
- Element
OpApply - Trait for types that support element operations (conj, transpose, adjoint).
Type Aliases§
- Result
- Result type for strided array operations.