[kupfer] datatools: If a list is passed to SavedIterable, use it directly



commit 721c80a802ad0fc1e67e847269f9c6a50beb9427
Author: Ulrik Sverdrup <ulrik sverdrup gmail com>
Date:   Sun Nov 1 17:49:43 2009 +0100

    datatools: If a list is passed to SavedIterable, use it directly

 kupfer/datatools.py |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)
---
diff --git a/kupfer/datatools.py b/kupfer/datatools.py
index c8940a8..7d70200 100644
--- a/kupfer/datatools.py
+++ b/kupfer/datatools.py
@@ -21,7 +21,14 @@ class SavedIterable (object):
 	>>> import pickle
 	>>> pickle.loads(pickle.dumps(s))
 	[0, 1, 2, 3, 4]
+
+	>>> SavedIterable(range(3))
+	[0, 1, 2]
 	"""
+	def __new__(self, iterable):
+		if isinstance(iterable, list):
+			return iterable
+		return object.__new__(self, iterable)
 	def __init__(self, iterable):
 		self.iterator = iter(iterable)
 		self.data = []



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]