mirror of https://github.com/python/cpython
Previously, Python code had no easy way to access the contents of a
cell object. Now, a ``cell_contents`` attribute has been added (closes patch #1170323).
This commit is contained in:
parent
237037beb5
commit
abd1ff8f1f
|
@ -12,6 +12,10 @@ What's New in Python 2.5 alpha 1?
|
|||
Core and builtins
|
||||
-----------------
|
||||
|
||||
- Previously, Python code had no easy way to access the contents of a
|
||||
cell object. Now, a ``cell_contents`` attribute has been added
|
||||
(closes patch #1170323).
|
||||
|
||||
- Patch #1123430: Python's small-object allocator now returns an arena to
|
||||
the system ``free()`` when all memory within an arena becomes unused
|
||||
again. Prior to Python 2.5, arenas (256KB chunks of memory) were never
|
||||
|
|
|
@ -86,6 +86,18 @@ cell_clear(PyCellObject *op)
|
|||
return 0;
|
||||
}
|
||||
|
||||
static PyObject *
|
||||
cell_get_contents(PyCellObject *op, void *closure)
|
||||
{
|
||||
Py_XINCREF(op->ob_ref);
|
||||
return op->ob_ref;
|
||||
}
|
||||
|
||||
static PyGetSetDef cell_getsetlist[] = {
|
||||
{"cell_contents", (getter)cell_get_contents, NULL},
|
||||
{NULL} /* sentinel */
|
||||
};
|
||||
|
||||
PyTypeObject PyCell_Type = {
|
||||
PyObject_HEAD_INIT(&PyType_Type)
|
||||
0,
|
||||
|
@ -111,4 +123,11 @@ PyTypeObject PyCell_Type = {
|
|||
0, /* tp_doc */
|
||||
(traverseproc)cell_traverse, /* tp_traverse */
|
||||
(inquiry)cell_clear, /* tp_clear */
|
||||
0, /* tp_richcompare */
|
||||
0, /* tp_weaklistoffset */
|
||||
0, /* tp_iter */
|
||||
0, /* tp_iternext */
|
||||
0, /* tp_methods */
|
||||
0, /* tp_members */
|
||||
cell_getsetlist, /* tp_getset */
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue