Wed, 03 Sep 2025 12:55:27 -0500
Copiable MatrixViews
| src/instance.rs | file | annotate | diff | comparison | revisions | |
| src/nalgebra_support.rs | file | annotate | diff | comparison | revisions |
--- a/src/instance.rs Wed Sep 03 10:08:28 2025 -0500 +++ b/src/instance.rs Wed Sep 03 12:55:27 2025 -0500 @@ -181,7 +181,7 @@ /// Type for a lightweight intermediate conversion that does not own the original variable. /// Usually this is just a reference, but may also be a lightweight structure that /// contains references; see the implementation for [`crate::direct_product::Pair`]. - type Reference<'b>: Instance<X, Self> + type Reference<'b>: Instance<X, Self> + Copy where X: 'b;
--- a/src/nalgebra_support.rs Wed Sep 03 10:08:28 2025 -0500 +++ b/src/nalgebra_support.rs Wed Sep 03 12:55:27 2025 -0500 @@ -91,7 +91,7 @@ SM: Storage<E, N, M>, N: Dim, M: Dim, - E: Scalar + Zero + One, + E: Scalar + Zero + One + Copy, DefaultAllocator: Allocator<N, M>, ShapeConstraint: StridesOk<E, N, M, SM> + StridesOk<E, N, M>, { @@ -107,7 +107,7 @@ S: Storage<E, M, K>, M: Dim, K: Dim, - E: Scalar + Zero + One, + E: Scalar + Zero + One + Copy, DefaultAllocator: Allocator<M, K>, ShapeConstraint: StridesOk<E, M, K, S> + StridesOk<E, M, K>, { @@ -135,7 +135,7 @@ S2: Storage<E, M, K>, M: Dim, K: Dim, - E: Scalar + Zero + One, + E: Scalar + Zero + One + Copy, DefaultAllocator: Allocator<M, K>, ShapeConstraint: StridesOk<E, M, K, S1> + StridesOk<E, M, K, S2>, { @@ -170,7 +170,7 @@ S2: Storage<E, M, K>, M: Dim, K: Dim, - E: Scalar + Zero + One, + E: Scalar + Zero + One + Copy, DefaultAllocator: Allocator<M, K>, ShapeConstraint: StridesOk<E, M, K, S1> + StridesOk<E, M, K, S2>, { @@ -205,7 +205,7 @@ N: Dim, M: Dim, K: Dim, - E: Scalar + Zero + One + ClosedAddAssign + ClosedMulAssign, + E: Scalar + Zero + One + Copy + ClosedMulAssign + ClosedAddAssign, DefaultAllocator: Allocator<N, K> + Allocator<M, K> + Allocator<N, M> + Allocator<M, N>, ShapeConstraint: StridesOk<E, N, M, SM> + StridesOk<E, M, K, SV> + StridesOk<E, N, K>, { @@ -224,7 +224,7 @@ N: Dim, M: Dim, K: Dim, - E: Scalar + Zero + One + ClosedAddAssign + ClosedMulAssign, + E: Scalar + Zero + One + Copy + ClosedMulAssign + ClosedAddAssign, DefaultAllocator: Allocator<N, K> + Allocator<M, K> + Allocator<N, M> + Allocator<M, N>, ShapeConstraint: StridesOk<E, N, M, SM> + StridesOk<E, M, K, SV> + StridesOk<E, N, K>, { @@ -346,7 +346,7 @@ where SM: StorageMut<E, M> + Clone, M: Dim, - E: Scalar + Zero + One + Float + RealField, + E: Scalar + Zero + One + Copy + Float + RealField, DefaultAllocator: Allocator<M>, ShapeConstraint: StridesOk<E, M, U1, SM>, { @@ -366,7 +366,7 @@ N: Dim, M: Dim, K: Dim, - E: Scalar + Zero + One + SimdComplexField, + E: Scalar + Zero + One + Copy + SimdComplexField, DefaultAllocator: Allocator<N, K> + Allocator<M, K> + Allocator<N, M> + Allocator<M, N>, ShapeConstraint: StridesOk<E, N, M, SM> + StridesOk<E, M, K, SV1>