@@ -6,7 +6,7 @@ use crate::{
6
6
class:: PyClassImpl ,
7
7
function:: { IntoPyGetterFunc , IntoPySetterFunc , PyGetterFunc , PySetterFunc , PySetterValue } ,
8
8
types:: { Constructor , GetDescriptor , Unconstructible } ,
9
- AsObject , Context , Py , PyObjectRef , PyPayload , PyRef , PyResult , TryFromObject , VirtualMachine ,
9
+ AsObject , Context , Py , PyObject , PyObjectRef , PyPayload , PyResult , VirtualMachine ,
10
10
} ;
11
11
12
12
#[ pyclass( module = false , name = "getset_descriptor" ) ]
@@ -51,9 +51,9 @@ impl GetDescriptor for PyGetSet {
51
51
_cls : Option < PyObjectRef > ,
52
52
vm : & VirtualMachine ,
53
53
) -> PyResult {
54
- let ( zelf, obj) = match Self :: _check ( zelf, obj, vm) {
55
- Ok ( obj) => obj,
56
- Err ( result ) => return result ,
54
+ let ( zelf, obj) = match Self :: _check ( & zelf, obj, vm) {
55
+ Some ( obj) => obj,
56
+ None => return Ok ( zelf ) ,
57
57
} ;
58
58
if let Some ( ref f) = zelf. getter {
59
59
f ( vm, obj)
@@ -100,12 +100,12 @@ impl PyGetSet {
100
100
101
101
#[ pyslot]
102
102
fn descr_set (
103
- zelf : PyObjectRef ,
103
+ zelf : & PyObject ,
104
104
obj : PyObjectRef ,
105
105
value : PySetterValue < PyObjectRef > ,
106
106
vm : & VirtualMachine ,
107
107
) -> PyResult < ( ) > {
108
- let zelf = PyRef :: < Self > :: try_from_object ( vm, zelf ) ?;
108
+ let zelf = zelf . try_to_ref :: < Self > ( vm) ?;
109
109
if let Some ( ref f) = zelf. setter {
110
110
f ( vm, obj, value)
111
111
} else {
@@ -123,11 +123,11 @@ impl PyGetSet {
123
123
value : PyObjectRef ,
124
124
vm : & VirtualMachine ,
125
125
) -> PyResult < ( ) > {
126
- Self :: descr_set ( zelf, obj, PySetterValue :: Assign ( value) , vm)
126
+ Self :: descr_set ( & zelf, obj, PySetterValue :: Assign ( value) , vm)
127
127
}
128
128
#[ pymethod]
129
129
fn __delete__ ( zelf : PyObjectRef , obj : PyObjectRef , vm : & VirtualMachine ) -> PyResult < ( ) > {
130
- Self :: descr_set ( zelf, obj, PySetterValue :: Delete , vm)
130
+ Self :: descr_set ( & zelf, obj, PySetterValue :: Delete , vm)
131
131
}
132
132
133
133
#[ pygetset( magic) ]
0 commit comments