Commit be45dbd3 authored by Andreas Zeidler's avatar Andreas Zeidler

back-port c118896 from 2.13

parent 410714c3
......@@ -134,20 +134,16 @@ class LazyMap(Lazy):
def __init__(self, func, seq, length=None):
self._seq=seq
self._data={}
self._func=func
if length is not None: self._len=length
else: self._len = len(seq)
self._marker = object()
self._data = [self._marker] * self._len
def __getitem__(self,index):
data=self._data
try: s=self._seq
except AttributeError: return data[index]
value = data[index]
if value is self._marker:
value = data[index] = self._func(s[index])
if index in data:
return data[index]
value = data[index] = self._func(self._seq[index])
return value
class LazyFilter(Lazy):
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment