Commit 7709d6b7 by Ivan Smirnov

Add memoryview type

parent 8b5fc8b5
...@@ -570,6 +570,19 @@ public: ...@@ -570,6 +570,19 @@ public:
} }
}; };
class memoryview : public object {
public:
memoryview(const buffer_info& info) : memoryview(&info.as_pybuffer()) { }
memoryview(Py_buffer* view)
: object(PyMemoryView_FromBuffer(view), false) {
if (!m_ptr)
pybind11_fail("Unable to create memoryview from buffer descriptor");
}
PYBIND11_OBJECT_DEFAULT(memoryview, object, PyMemoryView_Check)
};
inline size_t len(handle h) { inline size_t len(handle h) {
ssize_t result = PyObject_Length(h.ptr()); ssize_t result = PyObject_Length(h.ptr());
if (result < 0) if (result < 0)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment