src/direct_product.rs

branch
dev
changeset 189
14193146d8f2
parent 187
76c77e49581a
--- a/src/direct_product.rs	Tue Sep 09 08:24:27 2025 -0500
+++ b/src/direct_product.rs	Fri Nov 28 11:28:01 2025 -0500
@@ -648,7 +648,7 @@
     use super::Pair;
     use pyo3::conversion::FromPyObject;
     use pyo3::types::{PyAny, PyTuple};
-    use pyo3::{Bound, IntoPyObject, PyErr, PyResult, Python};
+    use pyo3::{Borrowed, Bound, IntoPyObject, PyErr, Python};
 
     impl<'py, A, B> IntoPyObject<'py> for Pair<A, B>
     where
@@ -694,13 +694,15 @@
     }
     */
 
-    impl<'py, A, B> FromPyObject<'py> for Pair<A, B>
+    impl<'a, 'py, A, B> FromPyObject<'a, 'py> for Pair<A, B>
     where
-        A: Clone + FromPyObject<'py>,
-        B: Clone + FromPyObject<'py>,
+        A: Clone + FromPyObject<'a, 'py>,
+        B: Clone + FromPyObject<'a, 'py>,
     {
-        fn extract_bound(ob: &Bound<'py, PyAny>) -> PyResult<Self> {
-            FromPyObject::extract_bound(ob).map(|(a, b)| Pair(a, b))
+        type Error = PyErr;
+
+        fn extract(ob: Borrowed<'a, 'py, PyAny>) -> Result<Self, PyErr> {
+            FromPyObject::extract(ob).map(|(a, b)| Pair(a, b))
         }
     }
 }

mercurial