@@ -1394,27 +1394,34 @@ impl pyo3::PyClass for MyClass {
13941394 type Frozen = pyo3 :: pyclass :: boolean_struct :: False ;
13951395}
13961396
1397- impl <'a , 'py > pyo3 :: impl_ :: extract_argument :: PyFunctionArgument <'a , 'py , false > for & 'a MyClass
1397+ impl <'a , 'holder , ' py > :: pyo3 :: impl_ :: extract_argument :: PyFunctionArgument <'a , 'holder , ' py , false > for & 'holder MyClass
13981398{
1399- type Holder = :: std :: option :: Option <pyo3 :: PyRef <'py , MyClass >>;
1399+ type Holder = :: std :: option :: Option <:: pyo3 :: PyClassGuard <'a , MyClass >>;
1400+
14001401 #[cfg(feature = " experimental-inspect" )]
14011402 const INPUT_TYPE : & 'static str = " MyClass" ;
1402-
1403+
14031404 #[inline]
1404- fn extract (obj : & 'a pyo3 :: Bound <'py , PyAny >, holder : & 'a mut Self :: Holder ) -> pyo3 :: PyResult <Self > {
1405- pyo3 :: impl_ :: extract_argument :: extract_pyclass_ref (obj , holder )
1405+ fn extract (
1406+ obj : & 'a :: pyo3 :: Bound <'py , :: pyo3 :: PyAny >,
1407+ holder : & 'holder mut Self :: Holder ,
1408+ ) -> :: pyo3 :: PyResult <Self > {
1409+ :: pyo3 :: impl_ :: extract_argument :: extract_pyclass_ref (obj , holder )
14061410 }
14071411}
1408-
1409- impl <'a , 'py > pyo3 :: impl_ :: extract_argument :: PyFunctionArgument <'a , 'py , false > for & 'a mut MyClass
1412+ impl <'a , 'holder , 'py > :: pyo3 :: impl_ :: extract_argument :: PyFunctionArgument <'a , 'holder , 'py , false > for & 'holder mut MyClass
14101413{
1411- type Holder = :: std :: option :: Option <pyo3 :: PyRefMut <'py , MyClass >>;
1414+ type Holder = :: std :: option :: Option <:: pyo3 :: PyClassGuardMut <'a , MyClass >>;
1415+
14121416 #[cfg(feature = " experimental-inspect" )]
14131417 const INPUT_TYPE : & 'static str = " MyClass" ;
1414-
1418+
14151419 #[inline]
1416- fn extract (obj : & 'a pyo3 :: Bound <'py , PyAny >, holder : & 'a mut Self :: Holder ) -> pyo3 :: PyResult <Self > {
1417- pyo3 :: impl_ :: extract_argument :: extract_pyclass_ref_mut (obj , holder )
1420+ fn extract (
1421+ obj : & 'a :: pyo3 :: Bound <'py , :: pyo3 :: PyAny >,
1422+ holder : & 'holder mut Self :: Holder ,
1423+ ) -> :: pyo3 :: PyResult <Self > {
1424+ :: pyo3 :: impl_ :: extract_argument :: extract_pyclass_ref_mut (obj , holder )
14181425 }
14191426}
14201427
0 commit comments