thisisnic commented on code in PR #45818:
URL: https://github.com/apache/arrow/pull/45818#discussion_r2063141577


##########
python/pyarrow/scalar.pxi:
##########
@@ -847,6 +882,33 @@ cdef class BinaryScalar(Scalar):
         buffer = self.as_buffer()
         return None if buffer is None else buffer.to_pybytes()
 
+    def __bytes__(self):
+        return (self.as_py())
+
+    def __getbuffer__(self, cp.Py_buffer* buffer, int flags):
+        cdef Buffer buf = self.as_buffer()
+
+        if buf.buffer.get().is_mutable():
+            buffer.readonly = 0
+        else:
+            if flags & cp.PyBUF_WRITABLE:
+                raise BufferError("Writable buffer requested but Arrow "
+                                  "buffer was not mutable")
+            buffer.readonly = 1
+        buffer.buf = <char *>buf.buffer.get().data()
+        buffer.len = buf.size
+        if buffer.buf == NULL:
+            assert buffer.len == 0
+            buffer.buf = cp.PyBytes_AS_STRING(b"")

Review Comment:
   (This is testing for a NULL one so buffer length should be zero and it'll be 
an empty string)



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscr...@arrow.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to