annotate Include/rangeobject.h @ 87690:66c1c9f32567 default tip

Add use_weakref option to functools.lru_cache The use_weakref option makes lru_cache create weak references to the function arguments when creating the cache key, which prevents them from staying in the memory forever even after all other references to them are gone. This is a proof of concept for http://bugs.python.org/issue19859
author Radomir Dopieralski <devel@sheep.art.pl>
date Tue, 03 Dec 2013 16:02:48 +0100
parents 86a2679dca46
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1369
89e1e5d9ccbf * compile.[ch]: support for lambda()
Guido van Rossum <guido@python.org>
parents:
diff changeset
1
89e1e5d9ccbf * compile.[ch]: support for lambda()
Guido van Rossum <guido@python.org>
parents:
diff changeset
2 /* Range object interface */
89e1e5d9ccbf * compile.[ch]: support for lambda()
Guido van Rossum <guido@python.org>
parents:
diff changeset
3
18039
91619d7df58b Wrap with extern "C". Fixes bug #428419.
Martin v. Löwis <martin@v.loewis.de>
parents: 14375
diff changeset
4 #ifndef Py_RANGEOBJECT_H
91619d7df58b Wrap with extern "C". Fixes bug #428419.
Martin v. Löwis <martin@v.loewis.de>
parents: 14375
diff changeset
5 #define Py_RANGEOBJECT_H
91619d7df58b Wrap with extern "C". Fixes bug #428419.
Martin v. Löwis <martin@v.loewis.de>
parents: 14375
diff changeset
6 #ifdef __cplusplus
91619d7df58b Wrap with extern "C". Fixes bug #428419.
Martin v. Löwis <martin@v.loewis.de>
parents: 14375
diff changeset
7 extern "C" {
91619d7df58b Wrap with extern "C". Fixes bug #428419.
Martin v. Löwis <martin@v.loewis.de>
parents: 14375
diff changeset
8 #endif
91619d7df58b Wrap with extern "C". Fixes bug #428419.
Martin v. Löwis <martin@v.loewis.de>
parents: 14375
diff changeset
9
1369
89e1e5d9ccbf * compile.[ch]: support for lambda()
Guido van Rossum <guido@python.org>
parents:
diff changeset
10 /*
2146
9afdbf944c2a new names for lots of new functions
Guido van Rossum <guido@python.org>
parents: 2129
diff changeset
11 A range object represents an integer range. This is an immutable object;
1369
89e1e5d9ccbf * compile.[ch]: support for lambda()
Guido van Rossum <guido@python.org>
parents:
diff changeset
12 a range cannot change its value after creation.
89e1e5d9ccbf * compile.[ch]: support for lambda()
Guido van Rossum <guido@python.org>
parents:
diff changeset
13
89e1e5d9ccbf * compile.[ch]: support for lambda()
Guido van Rossum <guido@python.org>
parents:
diff changeset
14 Range objects behave like the corresponding tuple objects except that
89e1e5d9ccbf * compile.[ch]: support for lambda()
Guido van Rossum <guido@python.org>
parents:
diff changeset
15 they are represented by a start, stop, and step datamembers.
89e1e5d9ccbf * compile.[ch]: support for lambda()
Guido van Rossum <guido@python.org>
parents:
diff changeset
16 */
89e1e5d9ccbf * compile.[ch]: support for lambda()
Guido van Rossum <guido@python.org>
parents:
diff changeset
17
24752
c1eb668525e1 Excise DL_EXPORT from Include.
Mark Hammond <mhammond@skippinet.com.au>
parents: 18436
diff changeset
18 PyAPI_DATA(PyTypeObject) PyRange_Type;
44061
0cc552ab76bd Added all PyTypeObjects to the appropriate header files.
Christian Heimes <christian@cheimes.de>
parents: 42334
diff changeset
19 PyAPI_DATA(PyTypeObject) PyRangeIter_Type;
0cc552ab76bd Added all PyTypeObjects to the appropriate header files.
Christian Heimes <christian@cheimes.de>
parents: 42334
diff changeset
20 PyAPI_DATA(PyTypeObject) PyLongRangeIter_Type;
1369
89e1e5d9ccbf * compile.[ch]: support for lambda()
Guido van Rossum <guido@python.org>
parents:
diff changeset
21
44351
86a2679dca46 #1629: Renamed Py_Size, Py_Type and Py_Refcnt to Py_SIZE, Py_TYPE and Py_REFCNT.
Christian Heimes <christian@cheimes.de>
parents: 44061
diff changeset
22 #define PyRange_Check(op) (Py_TYPE(op) == &PyRange_Type)
1369
89e1e5d9ccbf * compile.[ch]: support for lambda()
Guido van Rossum <guido@python.org>
parents:
diff changeset
23
18039
91619d7df58b Wrap with extern "C". Fixes bug #428419.
Martin v. Löwis <martin@v.loewis.de>
parents: 14375
diff changeset
24 #ifdef __cplusplus
91619d7df58b Wrap with extern "C". Fixes bug #428419.
Martin v. Löwis <martin@v.loewis.de>
parents: 14375
diff changeset
25 }
91619d7df58b Wrap with extern "C". Fixes bug #428419.
Martin v. Löwis <martin@v.loewis.de>
parents: 14375
diff changeset
26 #endif
91619d7df58b Wrap with extern "C". Fixes bug #428419.
Martin v. Löwis <martin@v.loewis.de>
parents: 14375
diff changeset
27 #endif /* !Py_RANGEOBJECT_H */