PATH:
usr
/
share
/
doc
/
python-docs-2.7.5
/
html
/
_sources
/
c-api
.. highlightlang:: c .. _abstract-buffer: Old Buffer Protocol =================== This section describes the legacy buffer protocol, which has been introduced in Python 1.6. It is still supported but deprecated in the Python 2.x series. Python 3 introduces a new buffer protocol which fixes weaknesses and shortcomings of the protocol, and has been backported to Python 2.6. See :ref:`bufferobjects` for more information. .. c:function:: int PyObject_AsCharBuffer(PyObject *obj, const char **buffer, Py_ssize_t *buffer_len) Returns a pointer to a read-only memory location usable as character-based input. The *obj* argument must support the single-segment character buffer interface. On success, returns ``0``, sets *buffer* to the memory location and *buffer_len* to the buffer length. Returns ``-1`` and sets a :exc:`TypeError` on error. .. versionadded:: 1.6 .. versionchanged:: 2.5 This function used an :c:type:`int *` type for *buffer_len*. This might require changes in your code for properly supporting 64-bit systems. .. c:function:: int PyObject_AsReadBuffer(PyObject *obj, const void **buffer, Py_ssize_t *buffer_len) Returns a pointer to a read-only memory location containing arbitrary data. The *obj* argument must support the single-segment readable buffer interface. On success, returns ``0``, sets *buffer* to the memory location and *buffer_len* to the buffer length. Returns ``-1`` and sets a :exc:`TypeError` on error. .. versionadded:: 1.6 .. versionchanged:: 2.5 This function used an :c:type:`int *` type for *buffer_len*. This might require changes in your code for properly supporting 64-bit systems. .. c:function:: int PyObject_CheckReadBuffer(PyObject *o) Returns ``1`` if *o* supports the single-segment readable buffer interface. Otherwise returns ``0``. .. versionadded:: 2.2 .. c:function:: int PyObject_AsWriteBuffer(PyObject *obj, void **buffer, Py_ssize_t *buffer_len) Returns a pointer to a writeable memory location. The *obj* argument must support the single-segment, character buffer interface. On success, returns ``0``, sets *buffer* to the memory location and *buffer_len* to the buffer length. Returns ``-1`` and sets a :exc:`TypeError` on error. .. versionadded:: 1.6 .. versionchanged:: 2.5 This function used an :c:type:`int *` type for *buffer_len*. This might require changes in your code for properly supporting 64-bit systems.
[-] string.txt
[edit]
[-] long.txt
[edit]
[-] tuple.txt
[edit]
[-] type.txt
[edit]
[-] utilities.txt
[edit]
[-] module.txt
[edit]
[-] reflection.txt
[edit]
[-] list.txt
[edit]
[-] buffer.txt
[edit]
[-] none.txt
[edit]
[-] datetime.txt
[edit]
[-] gcsupport.txt
[edit]
[-] cobject.txt
[edit]
[-] veryhigh.txt
[edit]
[-] init.txt
[edit]
[+]
..
[-] index.txt
[edit]
[-] refcounting.txt
[edit]
[-] gen.txt
[edit]
[-] dict.txt
[edit]
[-] sequence.txt
[edit]
[-] weakref.txt
[edit]
[-] set.txt
[edit]
[-] int.txt
[edit]
[-] class.txt
[edit]
[-] float.txt
[edit]
[-] objimpl.txt
[edit]
[-] mapping.txt
[edit]
[-] abstract.txt
[edit]
[-] import.txt
[edit]
[-] method.txt
[edit]
[-] complex.txt
[edit]
[-] concrete.txt
[edit]
[-] iter.txt
[edit]
[-] function.txt
[edit]
[-] iterator.txt
[edit]
[-] unicode.txt
[edit]
[-] file.txt
[edit]
[-] conversion.txt
[edit]
[-] memory.txt
[edit]
[-] bool.txt
[edit]
[-] object.txt
[edit]
[-] bytearray.txt
[edit]
[-] marshal.txt
[edit]
[-] slice.txt
[edit]
[-] descriptor.txt
[edit]
[-] arg.txt
[edit]
[-] codec.txt
[edit]
[-] code.txt
[edit]
[-] cell.txt
[edit]
[-] number.txt
[edit]
[-] objbuffer.txt
[edit]
[-] sys.txt
[edit]
[-] typeobj.txt
[edit]
[-] exceptions.txt
[edit]
[-] intro.txt
[edit]
[-] allocation.txt
[edit]
[-] structures.txt
[edit]
[-] capsule.txt
[edit]