Explorar el Código

py3k support __setitem__ and __delitem__ of SmartList.

tags/v0.1
Ben Kurtovic hace 12 años
padre
commit
0487661c99
Se han modificado 1 ficheros con 4 adiciones y 2 borrados
  1. +4
    -2
      mwparserfromhell/smart_list.py

+ 4
- 2
mwparserfromhell/smart_list.py Ver fichero

@@ -48,8 +48,9 @@ class SmartList(list):
item = list(item)
super(SmartList, self).__setitem__(key, item)
diff = len(item) - key.stop + key.start
values = self._children.values if py3k else self._children.itervalues
if diff:
for child, (start, stop, step) in self._children.itervalues():
for child, (start, stop, step) in values():
if start >= key.stop:
self._children[id(child)][1][0] += diff
if stop >= key.stop and stop != maxsize:
@@ -60,7 +61,8 @@ class SmartList(list):
if not isinstance(key, slice):
key = slice(key, key + 1)
diff = key.stop - key.start
for child, (start, stop, step) in self._children.itervalues():
values = self._children.values if py3k else self._children.itervalues
for child, (start, stop, step) in values():
if start > key.start:
self._children[id(child)][1][0] -= diff
if stop >= key.stop:


Cargando…
Cancelar
Guardar