MCPcopy Create free account
hub / github.com/apache/arrow / Init

Method Init

python/pyarrow/src/arrow/python/common.cc:218–229  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

216PyBuffer::PyBuffer() : Buffer(nullptr, 0) {}
217
218Status PyBuffer::Init(PyObject* obj) {
219 if (!PyObject_GetBuffer(obj, &py_buf_, PyBUF_ANY_CONTIGUOUS)) {
220 data_ = reinterpret_cast<const uint8_t*>(py_buf_.buf);
221 ARROW_CHECK_NE(data_, nullptr) << "Null pointer in Py_buffer";
222 size_ = py_buf_.len;
223 capacity_ = py_buf_.len;
224 is_mutable_ = !py_buf_.readonly;
225 return Status::OK();
226 } else {
227 return ConvertPyError(StatusCode::Invalid);
228 }
229}
230
231Result<std::shared_ptr<Buffer>> PyBuffer::FromPyObject(PyObject* obj) {
232 PyBuffer* buf = new PyBuffer();

Callers 1

FromPyObjectMethod · 0.45

Calls 2

ConvertPyErrorFunction · 0.85
OKFunction · 0.50

Tested by

no test coverage detected