diff options
author | Rich Hickey <richhickey@gmail.com> | 2006-06-03 15:02:15 +0000 |
---|---|---|
committer | Rich Hickey <richhickey@gmail.com> | 2006-06-03 15:02:15 +0000 |
commit | be2df160b1e5c916174262bc411dffa081eded99 (patch) | |
tree | 205b58717b3fe69d62ba50bce68da5468929ed0c /src | |
parent | 0f70b780b29908ef7d5088907413f10530e89a2f (diff) |
made RT.Iter support Iterables, removed iter from Cons, made RBTree Iterable
Diffstat (limited to 'src')
-rw-r--r-- | src/org/clojure/runtime/Cons.java | 4 | ||||
-rw-r--r-- | src/org/clojure/runtime/RBTree.java | 2 | ||||
-rw-r--r-- | src/org/clojure/runtime/RT.java | 3 |
3 files changed, 4 insertions, 5 deletions
diff --git a/src/org/clojure/runtime/Cons.java b/src/org/clojure/runtime/Cons.java index a869b322..8cdd3bd9 100644 --- a/src/org/clojure/runtime/Cons.java +++ b/src/org/clojure/runtime/Cons.java @@ -33,8 +33,4 @@ public Iter iterate() return rest; } -public Iter iter() - { - return this; - } } diff --git a/src/org/clojure/runtime/RBTree.java b/src/org/clojure/runtime/RBTree.java index 97313fcb..c43245cc 100644 --- a/src/org/clojure/runtime/RBTree.java +++ b/src/org/clojure/runtime/RBTree.java @@ -22,7 +22,7 @@ import java.util.*; * See Okasaki, Kahrs, Larsen et al */ -public class RBTree{ +public class RBTree implements Iterable{ public final Comparator comp; public final Node tree; diff --git a/src/org/clojure/runtime/RT.java b/src/org/clojure/runtime/RT.java index c10fcbf9..4298a4c9 100644 --- a/src/org/clojure/runtime/RT.java +++ b/src/org/clojure/runtime/RT.java @@ -73,6 +73,9 @@ static public Iter iter(Object coll) return new IteratorIter(i); return null; } + else if(coll instanceof Iterable) + return new IteratorIter(((Iterable) coll).iterator()); + else throw new IllegalArgumentException("Don't know how to create Iter from arg"); } |