diff options
author | Rich Hickey <richhickey@gmail.com> | 2006-08-04 22:31:21 +0000 |
---|---|---|
committer | Rich Hickey <richhickey@gmail.com> | 2006-08-04 22:31:21 +0000 |
commit | b47c234ac5a398894c8f3ce5dc7c06a5e7926e10 (patch) | |
tree | 198470083f9e1088315c8ce917904c9a2cae2ab7 /src | |
parent | 8c2c0ea39e31c05863a5f0d07fb3916a345c3da8 (diff) |
renamed ISequential to IPersistentCollection
Diffstat (limited to 'src')
20 files changed, 22 insertions, 23 deletions
diff --git a/src/cli/runtime/Cons.cs b/src/cli/runtime/Cons.cs index 935f3daa..18c2a656 100644 --- a/src/cli/runtime/Cons.cs +++ b/src/cli/runtime/Cons.cs @@ -15,7 +15,7 @@ using System; namespace clojure.lang
{ -public class Cons : ISeq, ISequential
+public class Cons : ISeq, IPersistentCollection
{ private readonly Object _first; diff --git a/src/cli/runtime/IArray.cs b/src/cli/runtime/IArray.cs index b5bcb4b9..8602b1c0 100644 --- a/src/cli/runtime/IArray.cs +++ b/src/cli/runtime/IArray.cs @@ -13,7 +13,7 @@ using System; namespace clojure.lang
{ -public interface IArray : ISequential {
+public interface IArray : IPersistentCollection {
int length();
Object get(int i);
diff --git a/src/cli/runtime/ISequential.cs b/src/cli/runtime/IPersistentCollection.cs index 35edf9cf..d908b7fb 100644 --- a/src/cli/runtime/ISequential.cs +++ b/src/cli/runtime/IPersistentCollection.cs @@ -13,7 +13,7 @@ using System; namespace clojure.lang
{
- public interface ISequential
+ public interface IPersistentCollection
{
ISeq seq();
diff --git a/src/cli/runtime/IPersistentMap.cs b/src/cli/runtime/IPersistentMap.cs index c3996b81..c91d3aa8 100644 --- a/src/cli/runtime/IPersistentMap.cs +++ b/src/cli/runtime/IPersistentMap.cs @@ -14,7 +14,7 @@ using System.Collections; namespace clojure.lang
{
-public interface IPersistentMap : IEnumerable, ISequential{
+public interface IPersistentMap : IEnumerable, IPersistentCollection{
int count();
diff --git a/src/cli/runtime/PersistentArrayMap.cs b/src/cli/runtime/PersistentArrayMap.cs index aa216b35..15a67d73 100644 --- a/src/cli/runtime/PersistentArrayMap.cs +++ b/src/cli/runtime/PersistentArrayMap.cs @@ -25,7 +25,7 @@ namespace clojure.lang * null keys and values are ok, but you won't be able to distinguish a null value via get - use contains/find
*/
-public class PersistentArrayMap : Obj, IPersistentMap, ISequential {
+public class PersistentArrayMap : Obj, IPersistentMap, IPersistentCollection {
internal readonly Object[] array;
diff --git a/src/cli/runtime/PersistentHashtableMap.cs b/src/cli/runtime/PersistentHashtableMap.cs index 520bb05a..0cf2206d 100644 --- a/src/cli/runtime/PersistentHashtableMap.cs +++ b/src/cli/runtime/PersistentHashtableMap.cs @@ -195,7 +195,7 @@ class Seq : ISeq{ return new Seq(buckets,b,e.rest());
for(b = b+1;b<buckets.length();b++)
{
- ISequential a = (ISequential) buckets.get(b);
+ IPersistentCollection a = (IPersistentCollection) buckets.get(b);
if(a != null && a.seq() != null)
return new Seq(buckets,b,a.seq());
}
diff --git a/src/cli/runtime/PersistentListIdentityMap.cs b/src/cli/runtime/PersistentListIdentityMap.cs index b00fd620..6a84c000 100644 --- a/src/cli/runtime/PersistentListIdentityMap.cs +++ b/src/cli/runtime/PersistentListIdentityMap.cs @@ -31,7 +31,7 @@ namespace clojure.lang * code duplication here is kind of gross, but most efficient
*/
- public class PersistentListIdentityMap : Obj, IPersistentMap, IMapEntry, ISeq, ISequential
+ public class PersistentListIdentityMap : Obj, IPersistentMap, IMapEntry, ISeq, IPersistentCollection
{
static public PersistentListIdentityMap EMPTY = new PersistentListIdentityMap();
diff --git a/src/cli/runtime/PersistentListMap.cs b/src/cli/runtime/PersistentListMap.cs index a2d621a7..8dbdd7ef 100644 --- a/src/cli/runtime/PersistentListMap.cs +++ b/src/cli/runtime/PersistentListMap.cs @@ -27,7 +27,7 @@ namespace clojure.lang *
* null keys and values are ok, but you won't be able to distinguish a null value via get - use contains/find
*/
-public class PersistentListMap : Obj, IPersistentMap, IMapEntry, ISeq, ISequential
+public class PersistentListMap : Obj, IPersistentMap, IMapEntry, ISeq, IPersistentCollection
{
static public PersistentListMap EMPTY = new PersistentListMap();
diff --git a/src/cli/runtime/PersistentTreeMap.cs b/src/cli/runtime/PersistentTreeMap.cs index 79831fe1..768c2724 100644 --- a/src/cli/runtime/PersistentTreeMap.cs +++ b/src/cli/runtime/PersistentTreeMap.cs @@ -25,7 +25,7 @@ namespace clojure.lang * See Okasaki, Kahrs, Larsen et al */ -public class PersistentTreeMap : Obj, IPersistentMap, ISequential{ +public class PersistentTreeMap : Obj, IPersistentMap, IPersistentCollection{ public readonly IComparer comp; public readonly Node tree; diff --git a/src/cli/runtime/RT.cs b/src/cli/runtime/RT.cs index 08009170..23cb34b3 100644 --- a/src/cli/runtime/RT.cs +++ b/src/cli/runtime/RT.cs @@ -68,8 +68,8 @@ public class RT static public ISeq seq(Object coll) {
if(coll == null || coll is ISeq)
return (ISeq) coll;
- else if(coll is ISequential)
- return ((ISequential) coll).seq();
+ else if(coll is IPersistentCollection)
+ return ((IPersistentCollection) coll).seq();
else if(coll is IEnumerable)
return EnumeratorSeq.create(((IEnumerable) coll).GetEnumerator());
else if(coll is Object[])
diff --git a/src/jvm/clojure/lang/Cons.java b/src/jvm/clojure/lang/Cons.java index 66551686..9d2895a1 100644 --- a/src/jvm/clojure/lang/Cons.java +++ b/src/jvm/clojure/lang/Cons.java @@ -12,7 +12,7 @@ package clojure.lang; -public class Cons implements ISeq, ISequential{ +public class Cons implements ISeq, IPersistentCollection { private final Object _first; private final ISeq _rest; diff --git a/src/jvm/clojure/lang/IArray.java b/src/jvm/clojure/lang/IArray.java index f8546c15..62298f94 100644 --- a/src/jvm/clojure/lang/IArray.java +++ b/src/jvm/clojure/lang/IArray.java @@ -10,7 +10,7 @@ package clojure.lang; * You must not remove this notice, or any other, from this software.
*/
-public interface IArray extends ISequential {
+public interface IArray extends IPersistentCollection {
int length();
Object get(int i);
diff --git a/src/jvm/clojure/lang/ISequential.java b/src/jvm/clojure/lang/IPersistentCollection.java index 3cf52e1b..0506ba78 100644 --- a/src/jvm/clojure/lang/ISequential.java +++ b/src/jvm/clojure/lang/IPersistentCollection.java @@ -11,7 +11,7 @@ package clojure.lang; */
-public interface ISequential {
+public interface IPersistentCollection {
ISeq seq() throws Exception;
diff --git a/src/jvm/clojure/lang/IPersistentMap.java b/src/jvm/clojure/lang/IPersistentMap.java index f3e0d45f..a70af0c2 100644 --- a/src/jvm/clojure/lang/IPersistentMap.java +++ b/src/jvm/clojure/lang/IPersistentMap.java @@ -11,7 +11,7 @@ package clojure.lang;
-public interface IPersistentMap extends Iterable, ISequential {
+public interface IPersistentMap extends Iterable, IPersistentCollection {
int count();
diff --git a/src/jvm/clojure/lang/PersistentArrayMap.java b/src/jvm/clojure/lang/PersistentArrayMap.java index c4bae5e7..f04fa5ca 100644 --- a/src/jvm/clojure/lang/PersistentArrayMap.java +++ b/src/jvm/clojure/lang/PersistentArrayMap.java @@ -23,7 +23,7 @@ import java.util.Iterator; * null keys and values are ok, but you won't be able to distinguish a null value via get - use contains/find
*/
-public class PersistentArrayMap extends Obj implements IPersistentMap, ISequential, Cloneable {
+public class PersistentArrayMap extends Obj implements IPersistentMap, IPersistentCollection, Cloneable {
final Object[] array;
static final int HASHTABLE_THRESHOLD = 42;
diff --git a/src/jvm/clojure/lang/PersistentHashtableMap.java b/src/jvm/clojure/lang/PersistentHashtableMap.java index c5e75a32..039d911c 100644 --- a/src/jvm/clojure/lang/PersistentHashtableMap.java +++ b/src/jvm/clojure/lang/PersistentHashtableMap.java @@ -193,7 +193,7 @@ static class Seq implements ISeq{ return new Seq(buckets,b,e.rest());
for(b = b+1;b<buckets.length();b++)
{
- ISequential a = (ISequential) buckets.get(b);
+ IPersistentCollection a = (IPersistentCollection) buckets.get(b);
if(a != null && a.seq() != null)
return new Seq(buckets,b,a.seq());
}
diff --git a/src/jvm/clojure/lang/PersistentListIdentityMap.java b/src/jvm/clojure/lang/PersistentListIdentityMap.java index 0fd86339..efc1f38a 100644 --- a/src/jvm/clojure/lang/PersistentListIdentityMap.java +++ b/src/jvm/clojure/lang/PersistentListIdentityMap.java @@ -28,7 +28,7 @@ import java.util.Iterator; * code duplication here is kind of gross, but most efficient
*/
-public class PersistentListIdentityMap extends Obj implements IPersistentMap, IMapEntry, ISeq, ISequential,Cloneable
+public class PersistentListIdentityMap extends Obj implements IPersistentMap, IMapEntry, ISeq, IPersistentCollection,Cloneable
{
static public PersistentListIdentityMap EMPTY = new PersistentListIdentityMap();
diff --git a/src/jvm/clojure/lang/PersistentListMap.java b/src/jvm/clojure/lang/PersistentListMap.java index f8fe6656..984c7c99 100644 --- a/src/jvm/clojure/lang/PersistentListMap.java +++ b/src/jvm/clojure/lang/PersistentListMap.java @@ -26,7 +26,7 @@ import java.util.Iterator; * * null keys and values are ok, but you won't be able to distinguish a null value via get - use contains/find */ -public class PersistentListMap extends Obj implements IPersistentMap, IMapEntry, ISeq, ISequential, Cloneable +public class PersistentListMap extends Obj implements IPersistentMap, IMapEntry, ISeq, IPersistentCollection, Cloneable { static public PersistentListMap EMPTY = new PersistentListMap(); diff --git a/src/jvm/clojure/lang/PersistentTreeMap.java b/src/jvm/clojure/lang/PersistentTreeMap.java index c83378c6..a18af9e0 100644 --- a/src/jvm/clojure/lang/PersistentTreeMap.java +++ b/src/jvm/clojure/lang/PersistentTreeMap.java @@ -22,7 +22,7 @@ import java.util.*; * See Okasaki, Kahrs, Larsen et al */ -public class PersistentTreeMap extends Obj implements IPersistentMap, ISequential, Cloneable { +public class PersistentTreeMap extends Obj implements IPersistentMap, IPersistentCollection, Cloneable { public final Comparator comp; public final Node tree; diff --git a/src/jvm/clojure/lang/RT.java b/src/jvm/clojure/lang/RT.java index 8411508b..68f81982 100644 --- a/src/jvm/clojure/lang/RT.java +++ b/src/jvm/clojure/lang/RT.java @@ -16,7 +16,6 @@ import java.util.Iterator; import java.io.Reader; import java.io.PushbackReader; import java.io.Writer; -import java.io.IOException; public class RT{ @@ -67,8 +66,8 @@ public class RT{ static public ISeq seq(Object coll) throws Exception { if(coll == null || coll instanceof ISeq) return (ISeq) coll; - else if(coll instanceof ISequential) - return ((ISequential) coll).seq(); + else if(coll instanceof IPersistentCollection) + return ((IPersistentCollection) coll).seq(); else if(coll instanceof Iterable) return IteratorSeq.create(((Iterable) coll).iterator()); else if(coll instanceof Object[]) |