mirror of
https://github.com/pocketpy/pocketpy
synced 2025-10-20 11:30:18 +00:00
some fix
This commit is contained in:
parent
5be2745220
commit
79608fb9c9
@ -426,8 +426,8 @@ public:
|
||||
PyObject* bind_property(PyObject*, const char*, NativeFuncC fget, NativeFuncC fset=nullptr);
|
||||
|
||||
template<typename T>
|
||||
PyObject* register_user_class(PyObject* mod, StrName name, Type base=0, bool subclass_enabled=false){
|
||||
PyObject* type = new_type_object(mod, name, base, subclass_enabled);
|
||||
PyObject* register_user_class(PyObject* mod, StrName name, bool subclass_enabled=false){
|
||||
PyObject* type = new_type_object(mod, name, 0, subclass_enabled);
|
||||
mod->attr().set(name, type);
|
||||
_cxx_typeid_map[typeid(T)] = PK_OBJ_GET(Type, type);
|
||||
T::_register(vm, mod, type);
|
||||
|
@ -373,7 +373,7 @@ struct Array2dIter{
|
||||
void add_module_array2d(VM* vm){
|
||||
PyObject* mod = vm->new_module("array2d");
|
||||
|
||||
vm->register_user_class<Array2d>(mod, "array2d", 0, true);
|
||||
vm->register_user_class<Array2d>(mod, "array2d", true);
|
||||
vm->register_user_class<Array2dIter>(mod, "_array2d_iter");
|
||||
|
||||
vm->bind__iter__(vm->_tp_user<Array2d>(), [](VM* vm, PyObject* _0){
|
||||
|
@ -161,8 +161,8 @@ void add_module_c(VM* vm){
|
||||
return vm->None;
|
||||
});
|
||||
|
||||
vm->register_user_class<VoidP>(mod, "void_p", 0, true);
|
||||
vm->register_user_class<C99Struct>(mod, "struct", 0, true);
|
||||
vm->register_user_class<VoidP>(mod, "void_p", true);
|
||||
vm->register_user_class<C99Struct>(mod, "struct", true);
|
||||
|
||||
mod->attr().set("NULL", VAR_T(VoidP, nullptr));
|
||||
|
||||
|
@ -545,7 +545,7 @@ namespace pkpy
|
||||
void add_module_collections(VM *vm)
|
||||
{
|
||||
PyObject *mod = vm->new_module("collections");
|
||||
vm->register_user_class<PyDeque>(mod, "deque", 0, true);
|
||||
vm->register_user_class<PyDeque>(mod, "deque", true);
|
||||
vm->register_user_class<PyDequeIter>(mod, "_deque_iter");
|
||||
CodeObject_ code = vm->compile(kPythonLibs_collections, "collections.py", EXEC_MODE);
|
||||
vm->_exec(code, mod);
|
||||
|
@ -541,10 +541,10 @@ static Vec2 SmoothDamp(Vec2 current, Vec2 target, Vec2& currentVelocity, float s
|
||||
void add_module_linalg(VM* vm){
|
||||
PyObject* linalg = vm->new_module("linalg");
|
||||
|
||||
vm->register_user_class<Vec2>(linalg, "vec2", 0, true);
|
||||
vm->register_user_class<Vec3>(linalg, "vec3", 0, true);
|
||||
vm->register_user_class<Vec4>(linalg, "vec4", 0, true);
|
||||
vm->register_user_class<Mat3x3>(linalg, "mat3x3", 0, true);
|
||||
vm->register_user_class<Vec2>(linalg, "vec2", true);
|
||||
vm->register_user_class<Vec3>(linalg, "vec3", true);
|
||||
vm->register_user_class<Vec4>(linalg, "vec4", true);
|
||||
vm->register_user_class<Mat3x3>(linalg, "mat3x3", true);
|
||||
|
||||
PyObject* float_p = vm->_modules["c"]->attr("float_p");
|
||||
linalg->attr().set("vec2_p", float_p);
|
||||
|
Loading…
x
Reference in New Issue
Block a user