1. Pypy
  2. Untitled project
  3. pypy

Source

pypy / pypy / objspace / std / listtype.py

Author Commit Message Date Builds
Armin Rigo
Performance improvement.
Branches
set-strategies
Carl Friedrich Bolz
implement a fast path for list.pop() (without arguments)
Branches
list-strategies
Lukas Diekmann
merge default
Branches
list-strategies
Lukas Diekmann
(l.diekmann, cfbolz): store list as unwrapped data
Branches
list-strategies
Amaury Forgeot d'Arc
kill most unwrap_spec in objspace
Amaury Forgeot d'Arc
Set list.__hash__ is now None, instead of a function that raises TypeError. no_hash_descr() is gone! This fixes isinstance([], _abcoll.Hashable)
Branches
fast-forward
Carl Friedrich Bolz
killing spree: remove dictobject.py (useless) and listmultiobject.py (useless and buggy).
Armin Rigo
Details about __index__: * gateways should not clamp by default, but raise OverflowError * make w_exception=None be no longer a default argument, to avoid clamping-by-surprize if we forget it * better hack (maybe) for the bootstrap issue in getitem__Tuple_ANY() * unified the way error messages are built * (unrelated) 'int * unicode' should not use space.mul()
Carl Friedrich Bolz
weekend project: implement multilists similar to multidicts. re-implement rangelist using them and add a string-list implementation that saves the unwrapped strings. Also have a special slice implementation, that makes list slicing a cheap operation as long as the list and the slice are not mutated.
Carl Friedrich Bolz
remove old commented out code
Armin Rigo
Added docstrings to all (non-special) methods of built-in types in the StdObjSpace.
Armin Rigo
Just for fun, or maybe to try to win the largest diff award: refactored the StdObjSpace to no longer store the 'space' attribute on any of the W_XxxObject classes. It was not really used in any essential way any more.
Armin Rigo
Hash support: some Wrappables were missing a hash. The main work in this check-in, though, is about making sure the hash_cache field inserted by the rtyper for instances on which hash() is called, only shows up in selected subclasses of W_Root instead of on W_Root. Classes like W_IntObject and W_TupleObject don't need it. (This is a step towards tagged pointers, which has no chance to work if the W_SmallIntObject class contains more than an 'intval' field.)
Michael Hudson-Doyle
some more explicit imports of gateway
Carl Friedrich Bolz
oops
Carl Friedrich Bolz
replace MultiMethod with StdObjspaceMultiMethod
lac
And these are the files that the getdocstring tool correctly inserted a docstring into
Armin Rigo
* some clean-ups of W_SeqIterObject, trying to minimize the number of fields required on the iterator instances. * more tests. * why did lst.__reversed__() store the iterator on the list object?? Note that space.unwrap() should not be used; instead use space.int_w(), or space.str_w(), etc.
Anders Lehmann
rewrote __reversed__ for list in interpreter level using W_SeqIterObject support for reverse iteration
Armin Rigo
Replace the calls to xyz.__init__() with known calls to XyzClass.__init__(xyz). Avoids annotator surprizes.
Christian Tismer
added name prefixes to the _cache/files as far as possible.
Christian Tismer
translated almost all possible code pieces to interp level. reversed the change to applevelinterp in the source files. applevel is now a function that figures out whether it can translate the code or not. All code snippets have been inspected for translatability and marked with NOT_RPYTHON if necessary. Some can be easily enabled, some are hard (using yield)
holger krekel
merge of the dist-interpapp branch where Samuele Armin and me worked for 9 days (summing up to a hundred commits, as you may have noticed in your inbox). Major results (apart from little stuff here and there) are: - a new app2interp mechanism that is now indepedent from the interp2app implementation - a new way to do "mixed modules" which contain applevel and interplevel definitions. We also ported the builtin and sys module and they now live as packages/directory structures. in pypy/module/sys2/__init__.py and pypy/module/builtin/__i…
Seo Sanghyeon
Be 2.2-compatible again.
Adrien Di Mascio
added key and reverse optional arguments to list.sort() (+tests)
Armin Rigo
Allow arguments to be named in the stdobjspace's type's methods. As a first example, this enables list.sort(cmp=...) .
Adrien Di Mascio
added sorted and reversed builtins (+ tests) also added list.__reversed__ definition / implementation in listtype.py (assuming that, for now, we don't want to have several possible implementation of list.__reversed__) Side Note : reversed() is implemented as a builtin function, not as a type like in Python2.4
Armin Rigo
Moved the branch back into the trunk.
Armin Rigo
Gateway cleanups: trying to remove interpreter-level ** arguments. Now interp2app(f) no longer accepts interp-level functions with **. Instead, the signature of f should either end with a * argument, or with an argument called __args__ (hum). In the latter case, the app-level version of f appears to have a * and a ** argument, and the interp-level version will get all that nicely collected in an pypy.interpreter.argument.Arguments instance. Hum, the goal was to…
Michael Hudson-Doyle
mass unrelativization of imports in the std objspace.
  1. Prev
  2. 1
  3. 2
  4. Next