From d2342cb69db3b25e054dc526f5bb3283e9416a30 Mon Sep 17 00:00:00 2001 From: Kodi Arfer Date: Wed, 7 Dec 2016 16:32:37 -0800 Subject: [PATCH] Minor cleanup in sequences.hy --- hy/contrib/sequences.hy | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/hy/contrib/sequences.hy b/hy/contrib/sequences.hy index c2b6bce..f2f4ff3 100644 --- a/hy/contrib/sequences.hy +++ b/hy/contrib/sequences.hy @@ -28,10 +28,11 @@ --getitem-- (fn [self n] "get nth item of sequence" (if (hasattr n "start") - (if n.step - (genexpr (get self x) [x (range n.start n.stop n.step)]) - (genexpr (get self x) [x (range n.start n.stop 1)])) + (genexpr (get self x) [x (range n.start n.stop + (or n.step 1))]) (do (when (neg? n) + ; Call (len) to force the whole + ; sequence to be evaluated. (len self)) (if (<= n (. self high-water)) (get (. self cache) n) @@ -55,10 +56,11 @@ (setv index (inc index))) (except [_ IndexError] (len (. self cache))))) + max-items-in-repr 10 --str-- (fn [self] "string representation of this sequence" - (setv items (list (take 11 self))) - (.format (if (= (len items) 11) + (setv items (list (take (inc self.max-items-in-repr) self))) + (.format (if (> (len items) self.max-items-in-repr) "[{0}, ...]" "[{0}]") (.join ", " (map str items))))