[Python-checkins] cpython (merge 3.2 -> default): Issue #15855: added docstrings for memoryview methods and data descriptors

alexander.belopolsky python-checkins at python.org
Mon Sep 3 22:44:10 CEST 2012


http://hg.python.org/cpython/rev/16a69ccff5ce
changeset:   78849:16a69ccff5ce
parent:      78847:5da3b2df38b3
parent:      78848:c49f89261d65
user:        Alexander Belopolsky <alexander.belopolsky at gmail.com>
date:        Mon Sep 03 16:43:55 2012 -0400
summary:
  Issue #15855: added docstrings for memoryview methods and data descriptors (merge 3.2).

files:
  Objects/memoryobject.c |  51 ++++++++++++++++++++++++-----
  1 files changed, 41 insertions(+), 10 deletions(-)


diff --git a/Objects/memoryobject.c b/Objects/memoryobject.c
--- a/Objects/memoryobject.c
+++ b/Objects/memoryobject.c
@@ -2861,27 +2861,58 @@
     return PyBool_FromLong(MV_ANY_CONTIGUOUS(self->flags));
 }
 
+PyDoc_STRVAR(memory_format_doc,
+             "A string containing the format (in struct module style)\n"
+             " for each element in the view.");
+PyDoc_STRVAR(memory_itemsize_doc,
+             "The size in bytes of each element of the memoryview.");
+PyDoc_STRVAR(memory_shape_doc,
+             "A tuple of ndim integers giving the shape of the memory\n"
+             " as an N-dimensional array.");
+PyDoc_STRVAR(memory_strides_doc,
+             "A tuple of ndim integers giving the size in bytes to access\n"
+             " each element for each dimension of the array.");
+PyDoc_STRVAR(memory_suboffsets_doc,
+             "A tuple of integers used internally for PIL-style arrays.");
+PyDoc_STRVAR(memory_readonly_doc,
+             "A bool indicating whether the memory is read only.");
+PyDoc_STRVAR(memory_ndim_doc,
+             "An integer indicating how many dimensions of a multi-dimensional\n"
+             " array the memory represents.");
+
 static PyGetSetDef memory_getsetlist[] = {
     {"obj",             (getter)memory_obj_get,        NULL, NULL},
     {"nbytes",          (getter)memory_nbytes_get,     NULL, NULL},
-    {"readonly",        (getter)memory_readonly_get,   NULL, NULL},
-    {"itemsize",        (getter)memory_itemsize_get,   NULL, NULL},
-    {"format",          (getter)memory_format_get,     NULL, NULL},
-    {"ndim",            (getter)memory_ndim_get,       NULL, NULL},
-    {"shape",           (getter)memory_shape_get,      NULL, NULL},
-    {"strides",         (getter)memory_strides_get,    NULL, NULL},
-    {"suboffsets",      (getter)memory_suboffsets_get, NULL, NULL},
+    {"readonly",        (getter)memory_readonly_get,   NULL, memory_readonly_doc},
+    {"itemsize",        (getter)memory_itemsize_get,   NULL, memory_itemsize_doc},
+    {"format",          (getter)memory_format_get,     NULL, memory_format_doc},
+    {"ndim",            (getter)memory_ndim_get,       NULL, memory_ndim_doc},
+    {"shape",           (getter)memory_shape_get,      NULL, memory_shape_doc},
+    {"strides",         (getter)memory_strides_get,    NULL, memory_strides_doc},
+    {"suboffsets",      (getter)memory_suboffsets_get, NULL, memory_suboffsets_doc},
     {"c_contiguous",    (getter)memory_c_contiguous,   NULL, NULL},
     {"f_contiguous",    (getter)memory_f_contiguous,   NULL, NULL},
     {"contiguous",      (getter)memory_contiguous,     NULL, NULL},
     {NULL, NULL, NULL, NULL},
 };
 
+PyDoc_STRVAR(memory_release_doc,
+"M.release() -> None\n\
+\n\
+Release the underlying buffer exposed by the memoryview object.");
+PyDoc_STRVAR(memory_tobytes_doc,
+"M.tobytes() -> bytes\n\
+\n\
+Return the data in the buffer as a byte string.");
+PyDoc_STRVAR(memory_tolist_doc,
+"M.tolist() -> list\n\
+\n\
+Return the data in the buffer as a list of elements.");
 
 static PyMethodDef memory_methods[] = {
-    {"release",     (PyCFunction)memory_release, METH_NOARGS, NULL},
-    {"tobytes",     (PyCFunction)memory_tobytes, METH_NOARGS, NULL},
-    {"tolist",      (PyCFunction)memory_tolist, METH_NOARGS, NULL},
+    {"release",     (PyCFunction)memory_release, METH_NOARGS, memory_release_doc},
+    {"tobytes",     (PyCFunction)memory_tobytes, METH_NOARGS, memory_tobytes_doc},
+    {"tolist",      (PyCFunction)memory_tolist, METH_NOARGS, memory_tolist_doc},
     {"cast",        (PyCFunction)memory_cast, METH_VARARGS|METH_KEYWORDS, NULL},
     {"__enter__",   memory_enter, METH_NOARGS, NULL},
     {"__exit__",    memory_exit, METH_VARARGS, NULL},

-- 
Repository URL: http://hg.python.org/cpython


More information about the Python-checkins mailing list