Skip to content

Commit ef7c26f

Browse files
committed
Fixed CPointer operators
1 parent 04583a6 commit ef7c26f

File tree

1 file changed

+10
-6
lines changed

1 file changed

+10
-6
lines changed

Diff for: src/core/modules/memory/memory_wrap_python.cpp

+10-6
Original file line numberDiff line numberDiff line change
@@ -319,17 +319,21 @@ void export_memtools()
319319

320320
.def(self += int())
321321
.def(self += self)
322+
323+
.def("__add__", &CPointer::operator+<unsigned long>, manage_new_object_policy())
324+
.def("__add__", &CPointer::operator+<CPointer>, manage_new_object_policy())
322325

323-
.def(self + int())
324-
.def(self + self)
325-
.def(int() + self)
326+
.def("__radd__", &CPointer::operator+<unsigned long>, manage_new_object_policy())
327+
.def("__radd__", &CPointer::operator+<CPointer>, manage_new_object_policy())
326328

327329
.def(self -= int())
328330
.def(self -= self)
331+
332+
.def("__sub__", &CPointer::operator-<unsigned long>, manage_new_object_policy())
333+
.def("__sub__", &CPointer::operator-<CPointer>, manage_new_object_policy())
329334

330-
.def(self - int())
331-
.def(self - self)
332-
.def(int() - self)
335+
.def("__rsub__", &CPointer::operator-<unsigned long>, manage_new_object_policy())
336+
.def("__rsub__", &CPointer::operator-<CPointer>, manage_new_object_policy())
333337

334338
// Attributes
335339
.def_readwrite("address",

0 commit comments

Comments
 (0)