Crate strided_view

Crate strided_view 

Source
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

§Metadata Transformations

These operate only on dims/strides/offset and never access the underlying data:

  • permute: Reorder dimensions
  • transpose_2d, adjoint_2d: 2D matrix transformations
  • conj: Compose conjugation operation
  • broadcast: 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§

StridedError
Errors that can occur during strided array operations.

Traits§

ComposableElementOp
Trait for element operations that support type-level composition.
Compose
Helper trait for composing two ElementOp types.
ElementOp
Trait for element-wise operations applied to strided views.
ElementOpApply
Trait for types that support element operations (conj, transpose, adjoint).

Type Aliases§

Result
Result type for strided array operations.