blueloveTH 2 лет назад
Родитель
Сommit
bb5978da04
1 измененных файлов с 10 добавлено и 10 удалено
  1. 10 10
      include/pocketpy/bindings.h

+ 10 - 10
include/pocketpy/bindings.h

@@ -77,27 +77,27 @@ void _bind(VM* vm, PyObject* obj, const char* sig, Ret(T::*func)(Params...)){
 #define PY_FIELD(T, NAME, REF, EXPR)       \
         vm->bind_property(type, NAME,               \
             [](VM* vm, ArgsView args){              \
-                T& self = _CAST(T&, args[0]);       \
-                return VAR(self.REF()->EXPR);        \
+                T& self = PK_OBJ_GET(T, args[0]);   \
+                return VAR(self.REF()->EXPR);       \
             },                                      \
             [](VM* vm, ArgsView args){              \
-                T& self = _CAST(T&, args[0]);       \
+                T& self = PK_OBJ_GET(T, args[0]);   \
                 self.REF()->EXPR = CAST(decltype(self.REF()->EXPR), args[1]);     \
                 return vm->None;                                                \
             });
 
 #define PY_READONLY_FIELD(T, NAME, REF, EXPR)          \
-        vm->bind_property(type, NAME,                           \
+        vm->bind_property(type, NAME,                  \
             [](VM* vm, ArgsView args){              \
-                T& self = _CAST(T&, args[0]);       \
-                return VAR(self.REF()->EXPR);        \
+                T& self = PK_OBJ_GET(T, args[0]);   \
+                return VAR(self.REF()->EXPR);       \
             });
 
 #define PY_PROPERTY(T, NAME, REF, FGET, FSET)  \
         vm->bind_property(type, NAME,                   \
             [](VM* vm, ArgsView args){                  \
-                T& self = _CAST(T&, args[0]);           \
-                return VAR(self.REF()->FGET());          \
+                T& self = PK_OBJ_GET(T, args[0]);       \
+                return VAR(self.REF()->FGET());         \
             },                                          \
             [](VM* vm, ArgsView args){                  \
                 T& self = _CAST(T&, args[0]);           \
@@ -109,8 +109,8 @@ void _bind(VM* vm, PyObject* obj, const char* sig, Ret(T::*func)(Params...)){
 #define PY_READONLY_PROPERTY(T, NAME, REF, FGET)  \
         vm->bind_property(type, NAME,                   \
             [](VM* vm, ArgsView args){                  \
-                T& self = _CAST(T&, args[0]);           \
-                return VAR(self.REF()->FGET());          \
+                T& self = PK_OBJ_GET(T, args[0]);       \
+                return VAR(self.REF()->FGET());         \
             });
 
 #define PY_STRUCT_LIKE(wT)   \