src/linops.rs

branch
dev
changeset 171
fa8df5a14486
parent 168
93daa824c04a
child 177
b071a1b484f8
--- a/src/linops.rs	Wed Sep 03 19:55:05 2025 -0500
+++ b/src/linops.rs	Wed Sep 03 20:19:41 2025 -0500
@@ -616,7 +616,7 @@
     type Codomain = Pair<S::Codomain, T::Codomain>;
 
     fn apply<I: Instance<A>>(&self, a: I) -> Self::Codomain {
-        Pair(a.eval_ref_decompose(|r| self.0.apply(r)), self.1.apply(a))
+        Pair(a.eval_ref(|r| self.0.apply(r)), self.1.apply(a))
     }
 }
 
@@ -637,18 +637,18 @@
     Self: Linear<X, Codomain = Pair<A, B>>,
 {
     fn gemv<I: Instance<X>>(&self, y: &mut Pair<A, B>, α: F, x: I, β: F) {
-        x.eval_ref_decompose(|r| self.0.gemv(&mut y.0, α, r, β));
+        x.eval_ref(|r| self.0.gemv(&mut y.0, α, r, β));
         self.1.gemv(&mut y.1, α, x, β);
     }
 
     fn apply_mut<I: Instance<X>>(&self, y: &mut Pair<A, B>, x: I) {
-        x.eval_ref_decompose(|r| self.0.apply_mut(&mut y.0, r));
+        x.eval_ref(|r| self.0.apply_mut(&mut y.0, r));
         self.1.apply_mut(&mut y.1, x);
     }
 
     /// Computes `y += Ax`, where `A` is `Self`
     fn apply_add<I: Instance<X>>(&self, y: &mut Pair<A, B>, x: I) {
-        x.eval_ref_decompose(|r| self.0.apply_add(&mut y.0, r));
+        x.eval_ref(|r| self.0.apply_add(&mut y.0, r));
         self.1.apply_add(&mut y.1, x);
     }
 }

mercurial