From 0f46ffdbbc72f9adfa76093345145f92e782d240 Mon Sep 17 00:00:00 2001 From: Benjamin Peterson Date: Wed, 26 Aug 2009 07:35:45 +0000 Subject: the old buffer object doesn't exist in Python 3 #6659 --- Doc/c-api/buffer.rst | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/Doc/c-api/buffer.rst b/Doc/c-api/buffer.rst index 97adb07..ec44a99 100644 --- a/Doc/c-api/buffer.rst +++ b/Doc/c-api/buffer.rst @@ -10,7 +10,6 @@ Buffer Objects .. index:: - object: buffer single: buffer interface Python objects implemented in C can export a "buffer interface." These @@ -297,14 +296,25 @@ Buffer related functions length. Return 0 on success and -1 (with raising an error) on error. +.. index:: + object: memoryview + + MemoryView objects ================== -A memoryview object is an extended buffer object that could replace the buffer -object (but doesn't have to as that could be kept as a simple 1-d memoryview -object). It, unlike :ctype:`Py_buffer`, is a Python object (exposed as -:class:`memoryview` in :mod:`builtins`), so it can be used with Python code. +A memoryview object exposes the C level buffer interface to Python. + .. cfunction:: PyObject* PyMemoryView_FromObject(PyObject *obj) Return a memoryview object from an object that defines the buffer interface. + + +.. cfunction:: PyObject * PyMemoryView_GetContiguous(PyObject *obj, int buffertype, char order) + + Return a memoryview object to a contiguous chunk of memory (in either + 'C' or 'F'ortran order) from an object that defines the buffer + interface. If memory is contiguous, the memoryview object points to the + original memory. Otherwise copy is made and the memoryview points to a + new bytes object. -- cgit v0.12