Mark Dickinson
1321edaa55
Issue #16402 : Merge fix from 3.2
2012-11-04 11:47:05 +00:00
Mark Dickinson
8cd1c7681d
Issue #16402 : In range slicing, fix shadowing of exceptions from __index__ method.
2012-11-04 11:46:17 +00:00
Chris Jerdonek
042fa653ab
Issue #14783 : Merge changes from 3.2.
2012-10-07 14:56:27 -07:00
Chris Jerdonek
83fe2e1c22
Issue #14783 : Improve int() docstring and also str(), range(), and slice().
...
This commit rewrites the docstring for int() to incorporate the documentation
changes made in issue #16036 . It also switches the docstrings for int(),
str(), range(), and slice() to use multi-line signatures.
2012-10-07 14:48:36 -07:00
Antoine Pitrou
b7d033db78
Issue #14829 : Fix bisect and range() indexing with large indices (>= 2 ** 32) under 64-bit Windows.
...
(untested, because of Windows build issues under 3.x)
2012-05-16 14:39:36 +02:00
Antoine Pitrou
a103b96a80
Issue #14829 : Fix bisect and range() indexing with large indices (>= 2 ** 32) under 64-bit Windows.
2012-05-16 14:37:54 +02:00
Antoine Pitrou
a701388de1
Rename _PyIter_GetBuiltin to _PyObject_GetBuiltin, and do not include it in the stable ABI.
2012-04-05 00:04:20 +02:00
Kristján Valur Jónsson
31668b8f7a
Issue #14288 : Serialization support for builtin iterators.
2012-04-03 10:49:41 +00:00
Benjamin Peterson
878ce389a0
add introspection to range objects ( closes #9896 )
...
Patch by Daniel Urban.
2011-11-05 15:17:52 -04:00
Mark Dickinson
36645681c8
Issue #13201 : equality for range objects is now based on equality of the underlying sequences. Thanks Sven Marnach for the patch.
2011-10-23 19:53:01 +01:00
Ezio Melotti
982ef4e0bc
#11845 : Fix typo in rangeobject.c that caused a crash in compute_slice_indices. Patch by Daniel Urban.
2011-04-15 08:15:40 +03:00
Matthias Klose
616667fbe8
rangeobject.c (compute_slice_indices): Make function static.
2011-01-16 20:57:01 +00:00
Benjamin Peterson
547d4859b9
plug reference leak
2011-01-13 04:22:54 +00:00
Nick Coghlan
e993b10041
Issue 10889: Support slicing and indexing of large ranges (no docs changes, since, as far as I know, we never said anywhere that this *didn't* work)
2011-01-12 03:15:52 +00:00
Martin v. Löwis
4d0d471a80
Merge branches/pep-0384.
2010-12-03 20:14:31 +00:00
Nick Coghlan
37ee850b10
Issue 2690: Add support for slicing and negative indices to range objects (includes precalculation and storage of the range length).
...
Refer to the tracker issue for the language moratorium implications of this change
2010-12-03 14:26:13 +00:00
Benjamin Peterson
a1864f3717
pep 7 actually wants the brace on a new line
2010-11-20 23:05:39 +00:00
Benjamin Peterson
155614b104
code style and simplification
2010-11-20 22:44:32 +00:00
Georg Brandl
7e5343b882
Add error handling in range_count.
2010-11-20 22:40:10 +00:00
Benjamin Peterson
0b458d52f9
count() should return integers #10474
2010-11-20 22:35:41 +00:00
Daniel Stutzbach
9f0cbf1c72
Issue #9213 : Add index and count methods to range objects, needed to
...
meet the API of the collections.Sequence ABC.
2010-09-13 21:16:29 +00:00
Antoine Pitrou
f95a1b3c53
Recorded merge of revisions 81029 via svnmerge from
...
svn+ssh://pythondev@svn.python.org/python/trunk
........
r81029 | antoine.pitrou | 2010-05-09 16:46:46 +0200 (dim., 09 mai 2010) | 3 lines
Untabify C files. Will watch buildbots.
........
2010-05-09 15:52:27 +00:00
Benjamin Peterson
36fbb730a7
fix one visible and several possible refleaks in rangeobject.c
...
In some cases, the code was just reordered to allow for less decrefing.
2009-11-16 00:34:25 +00:00
Mark Dickinson
b43dbc26f9
Fix another case of potential signed overflow.
2009-11-15 12:56:08 +00:00
Mark Dickinson
bde0508d75
r76292 commit accidentally committed some extra code; remove it
2009-11-15 10:04:50 +00:00
Mark Dickinson
d550c9a281
Issue #7298 : Fix a variety of problems leading to wrong results with
...
the fast versions of range.__reversed__ and range iteration. Also
fix wrong results and a refleak for PyLong version of range.__reversed__.
Thanks Eric Smith for reviewing, and for suggesting improved tests.
2009-11-15 09:57:26 +00:00
Mark Dickinson
418f81d9b6
Issue #1766304 : The range.__contains__ optimization should only be
...
applied to ints, not to instances of subclasses of int.
2009-09-24 20:04:23 +00:00
Mark Dickinson
3e124ae739
Issue #1766304 : Optimize membership testing for ranges: 'n in range(...)'
...
does an O(1) check, if n is an integer. Non-integers aren't affected.
Thanks Robert Lehmann.
2009-09-22 21:47:24 +00:00
Georg Brandl
c9a5a0e165
#6814 : remove traces of xrange().
2009-09-01 07:34:27 +00:00
Mark Dickinson
732166df68
Fix description of range_length_obj
2009-06-28 22:08:40 +00:00
Benjamin Peterson
12792092a6
this is also no longer true
2009-06-24 22:16:41 +00:00
Benjamin Peterson
a47af9cf18
fix comment
2009-06-24 21:14:38 +00:00
Mark Dickinson
eb36d31bb8
Issue #6334 : Fix buggy internal length calculation in builtin range function
2009-06-24 18:36:46 +00:00
Raymond Hettinger
94f5583777
Fix SystemError and a wasps nest of ref counting issues.
2009-06-12 18:40:16 +00:00
Mark Dickinson
e94c679df0
Issue #1717 : rename tp_compare to tp_reserved. I'll change the
...
type of tp_compare in a separate commit, for ease of reversion
should things go wrong.
2009-02-02 20:36:42 +00:00
Mark Dickinson
211c625829
Issue #1717 , stage 2: remove uses of tp_compare in Modules and most
...
Objects.
2009-02-01 10:28:51 +00:00
Alexandre Vassalotti
7505607ae7
Issue 2582: Fix pickling of range objects.
2008-06-10 04:03:04 +00:00
Benjamin Peterson
df0a5cbb2c
#2689 Fix indentation in Objects/rangeobject.c
2008-04-25 21:15:37 +00:00
Raymond Hettinger
ad3f3321f6
Merge r60673
2008-02-09 04:13:49 +00:00
Martin v. Löwis
8445104d7d
Drop _PyLong_FitsInLong. Fixes #1666 .
2007-12-20 22:57:23 +00:00
Christian Heimes
217cfd1c86
Cleanup: Replaced most PyInt_ aliases with PyLong_ and disabled the aliases in intobject.h
2007-12-02 14:31:20 +00:00
Christian Heimes
a22e8bdfd9
Added all PyTypeObjects to the appropriate header files.
...
Before the patch a lot of internal types weren't available in the header files. The patch exposes the new iterators, views and some other types to all C modules. I've also renamed some of the types and tp_names.
2007-11-29 22:35:39 +00:00
Christian Heimes
f83be4e3f3
Added view and iterator types to collections / _abcoll
...
I've also renamed several of the iterators to keep a consistent naming schema.
2007-11-28 09:44:38 +00:00
Amaury Forgeot d'Arc
b7f17e4bb4
Found another memory leak in longrangeiter. And redo the previous correction
...
without calling PyType_Ready().
Question 1: Should the interpreter register all types with PyType_Ready()?
Many types seem to avoid it.
Question 2: To reproduce the problem, run the following code:
def f():
while True:
for a in iter(range(0,1,10**20)):
pass
f()
And watch the memory used by the process.
How do we test this in a unittest?
2007-11-15 20:52:21 +00:00
Amaury Forgeot d'Arc
a1e9ec4e55
Correct a memory leak: the range() object was not properly freed.
2007-11-15 19:16:08 +00:00
Martin v. Löwis
9f2e346911
Merged revisions 56467-56482 via svnmerge from
...
svn+ssh://pythondev@svn.python.org/python/branches/p3yk
................
r56477 | martin.v.loewis | 2007-07-21 09:04:38 +0200 (Sa, 21 Jul 2007) | 11 lines
Merged revisions 56466-56476 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r56476 | martin.v.loewis | 2007-07-21 08:55:02 +0200 (Sa, 21 Jul 2007) | 4 lines
PEP 3123: Provide forward compatibility with Python 3.0, while keeping
backwards compatibility. Add Py_Refcnt, Py_Type, Py_Size, and
PyVarObject_HEAD_INIT.
........
................
r56478 | martin.v.loewis | 2007-07-21 09:47:23 +0200 (Sa, 21 Jul 2007) | 2 lines
PEP 3123: Use proper C inheritance for PyObject.
................
r56479 | martin.v.loewis | 2007-07-21 10:06:55 +0200 (Sa, 21 Jul 2007) | 3 lines
Add longintrepr.h to Python.h, so that the compiler can
see that PyFalse is really some kind of PyObject*.
................
r56480 | martin.v.loewis | 2007-07-21 10:47:18 +0200 (Sa, 21 Jul 2007) | 2 lines
Qualify SHIFT, MASK, BASE.
................
r56482 | martin.v.loewis | 2007-07-21 19:10:57 +0200 (Sa, 21 Jul 2007) | 2 lines
Correctly refer to _ob_next.
................
2007-07-21 17:22:18 +00:00
Walter Dörwald
4ad94210d1
Rename test_xrange.py to test_range.py and fix the
...
type name in various spots.
2007-05-21 18:01:17 +00:00
Walter Dörwald
03b43d8a77
repr(range(10)) now returns 'range(0, 10)' for clarity.
2007-05-21 10:43:34 +00:00
Walter Dörwald
850e516ebc
Change range_repr() to use %R for the start/stop/step attributes.
2007-05-20 08:19:54 +00:00
Walter Dörwald
1ab8330827
Add functions PyUnicode_Append() and PyUnicode_AppendAndDel() that mirror
...
PyString_Concat() and PyString_ConcatAndDel() (the name PyUnicode_Concat()
was already taken).
Change PyObject_Repr() to always return a unicode object.
Update all repr implementations to return unicode objects.
Add a function PyObject_ReprStr8() that calls PyObject_Repr() and converts
the result to an 8bit string.
Use PyObject_ReprStr8() where using PyObject_Repr() can't be done
straightforward.
2007-05-18 17:15:44 +00:00