diff options
author | Rich Hickey <richhickey@gmail.com> | 2006-08-05 15:18:43 +0000 |
---|---|---|
committer | Rich Hickey <richhickey@gmail.com> | 2006-08-05 15:18:43 +0000 |
commit | db58898d1d44d8025208bb5f0b2c4a493a5cdb43 (patch) | |
tree | cad6d19295174af8a5e43f8f8c9b222232123965 /src/jvm | |
parent | cfbe0fe8a1adaf7b16f37d92545c89230256221d (diff) |
renamed remove, add
Diffstat (limited to 'src/jvm')
-rw-r--r-- | src/jvm/clojure/lang/IArray.java | 2 | ||||
-rw-r--r-- | src/jvm/clojure/lang/IPersistentMap.java | 4 | ||||
-rw-r--r-- | src/jvm/clojure/lang/MapEntry.java | 4 | ||||
-rw-r--r-- | src/jvm/clojure/lang/PersistentArrayMap.java | 6 | ||||
-rw-r--r-- | src/jvm/clojure/lang/PersistentHashtableMap.java | 10 | ||||
-rw-r--r-- | src/jvm/clojure/lang/PersistentListMap.java | 16 | ||||
-rw-r--r-- | src/jvm/clojure/lang/PersistentTreeMap.java | 8 | ||||
-rw-r--r-- | src/jvm/clojure/lang/TObj.java | 2 | ||||
-rw-r--r-- | src/jvm/clojure/lang/Var.java | 2 |
9 files changed, 27 insertions, 27 deletions
diff --git a/src/jvm/clojure/lang/IArray.java b/src/jvm/clojure/lang/IArray.java index b2520a4a..c54b109f 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 IPersistentCollection, Associative {
+public interface IArray extends IPersistentCollection, Associative, Sequential {
int length();
Object nth(int i);
diff --git a/src/jvm/clojure/lang/IPersistentMap.java b/src/jvm/clojure/lang/IPersistentMap.java index 3670817f..0ada98dc 100644 --- a/src/jvm/clojure/lang/IPersistentMap.java +++ b/src/jvm/clojure/lang/IPersistentMap.java @@ -14,7 +14,7 @@ package clojure.lang; public interface IPersistentMap extends Iterable, IPersistentCollection, Associative {
-IPersistentMap add(Object key, Object val) throws Exception;
+IPersistentMap assocEx(Object key, Object val) throws Exception;
-IPersistentMap remove(Object key);
+IPersistentMap without(Object key);
}
diff --git a/src/jvm/clojure/lang/MapEntry.java b/src/jvm/clojure/lang/MapEntry.java index 4a2f1a29..55aaf1df 100644 --- a/src/jvm/clojure/lang/MapEntry.java +++ b/src/jvm/clojure/lang/MapEntry.java @@ -51,13 +51,13 @@ public Object get(Object key) { return RT.equal(_key, key)?_val:null;
}
-public IPersistentMap add(Object key, Object val) throws Exception {
+public IPersistentMap assocEx(Object key, Object val) throws Exception {
if(RT.equal(_key, key))
throw new Exception("Key already present");
return assoc(key, val);
}
-public IPersistentMap remove(Object key) {
+public IPersistentMap without(Object key) {
if(RT.equal(_key, key))
return (IPersistentMap) PersistentArrayMap.EMPTY.withMeta(_meta);
return this;
diff --git a/src/jvm/clojure/lang/PersistentArrayMap.java b/src/jvm/clojure/lang/PersistentArrayMap.java index 1872dfed..8e1afb14 100644 --- a/src/jvm/clojure/lang/PersistentArrayMap.java +++ b/src/jvm/clojure/lang/PersistentArrayMap.java @@ -81,7 +81,7 @@ public IMapEntry find(Object key) { return null;
}
-public IPersistentMap add(Object key, Object val) throws Exception {
+public IPersistentMap assocEx(Object key, Object val) throws Exception {
int i = indexOf(key);
Object[] newArray;
if(i >= 0)
@@ -91,7 +91,7 @@ public IPersistentMap add(Object key, Object val) throws Exception { else //didn't have key, grow
{
if(array.length > HASHTABLE_THRESHOLD)
- return createHT(array).add(key, val);
+ return createHT(array).assocEx(key, val);
newArray = new Object[array.length + 2];
if(array.length > 0)
System.arraycopy(array,0,newArray,2,array.length);
@@ -124,7 +124,7 @@ public IPersistentMap assoc(Object key, Object val) { return create(newArray);
}
-public IPersistentMap remove(Object key) {
+public IPersistentMap without(Object key) {
int i = indexOf(key);
if(i >= 0) //have key, will remove
{
diff --git a/src/jvm/clojure/lang/PersistentHashtableMap.java b/src/jvm/clojure/lang/PersistentHashtableMap.java index 1cebbec0..215f7b81 100644 --- a/src/jvm/clojure/lang/PersistentHashtableMap.java +++ b/src/jvm/clojure/lang/PersistentHashtableMap.java @@ -86,9 +86,9 @@ public IMapEntry find(Object key) { return null;
}
-public IPersistentMap add(Object key, Object val) throws Exception {
+public IPersistentMap assocEx(Object key, Object val) throws Exception {
if(_count > growAtCount)
- return grow().add(key, val);
+ return grow().assocEx(key, val);
int i = bucketFor(key,array);
int incr = 1;
PersistentArray newArray = doAdd(i, key, val, array);
@@ -128,7 +128,7 @@ PersistentArray doAdd(int i,Object key,Object val,PersistentArray array) throws IPersistentMap newEntries;
if (entries != null)
{
- newEntries = entries.add(key, val);
+ newEntries = entries.assocEx(key, val);
}
else
newEntries = createListMap(key, val);
@@ -136,12 +136,12 @@ PersistentArray doAdd(int i,Object key,Object val,PersistentArray array) throws return array.assocN(i, newEntries);
}
-public IPersistentMap remove(Object key) {
+public IPersistentMap without(Object key) {
int i = bucketFor(key,array);
IPersistentMap entries = (IPersistentMap) array.nth(i);
if (entries != null)
{
- IPersistentMap newEntries = entries.remove(key);
+ IPersistentMap newEntries = entries.without(key);
if (newEntries != entries)
return create(_count - 1, array.assocN(i, newEntries));
}
diff --git a/src/jvm/clojure/lang/PersistentListMap.java b/src/jvm/clojure/lang/PersistentListMap.java index c23426fd..86ee24ca 100644 --- a/src/jvm/clojure/lang/PersistentListMap.java +++ b/src/jvm/clojure/lang/PersistentListMap.java @@ -71,7 +71,7 @@ public IMapEntry find(Object key){ return null; } -public IPersistentMap add(Object key, Object val) throws Exception { +public IPersistentMap assocEx(Object key, Object val) throws Exception { return assoc(key, val); } @@ -79,7 +79,7 @@ public PersistentListMap assoc(Object key, Object val) { return new Tail(key, val,_meta); } -public PersistentListMap remove(Object key) { +public PersistentListMap without(Object key) { return this; } @@ -176,7 +176,7 @@ static class Tail extends PersistentListMap { return null; } - public PersistentListMap add(Object key, Object val) throws Exception { + public PersistentListMap assocEx(Object key, Object val) throws Exception { if(equalKey(key,_key)) //replace { throw new Exception("Key already present"); @@ -194,7 +194,7 @@ static class Tail extends PersistentListMap { return new Link(key,val,this,_meta); } - public PersistentListMap remove(Object key) { + public PersistentListMap without(Object key) { if(equalKey(key,_key)) { if(_meta == null) @@ -258,7 +258,7 @@ static class Link extends PersistentListMap { return _rest.find(key); } - public PersistentListMap add(Object key, Object val) throws Exception { + public PersistentListMap assocEx(Object key, Object val) throws Exception { IMapEntry e = find(key); if(e != null) { @@ -273,19 +273,19 @@ static class Link extends PersistentListMap { { if(e.val() == val) return this; - return create(_key,_val,remove(key)); + return create(_key,_val,without(key)); } return new Link(key,val,this,_meta); } - public PersistentListMap remove(Object key) { + public PersistentListMap without(Object key) { if(equalKey(key,_key)) { if(_rest._meta == _meta) return _rest; return (PersistentListMap) _rest.withMeta(_meta); } - PersistentListMap r = _rest.remove(key); + PersistentListMap r = _rest.without(key); if(r == _rest) //not there return this; return create(_key,_val,r); diff --git a/src/jvm/clojure/lang/PersistentTreeMap.java b/src/jvm/clojure/lang/PersistentTreeMap.java index 24ca59fa..311ed7a4 100644 --- a/src/jvm/clojure/lang/PersistentTreeMap.java +++ b/src/jvm/clojure/lang/PersistentTreeMap.java @@ -54,7 +54,7 @@ public boolean contains(Object key){ return find(key) != null; } -public PersistentTreeMap add(Object key, Object val) throws Exception { +public PersistentTreeMap assocEx(Object key, Object val) throws Exception { Box found = new Box(null); Node t = add(tree, key, val, found); if(t == null) //null == already contains key @@ -78,7 +78,7 @@ public PersistentTreeMap assoc(Object key, Object val){ } -public PersistentTreeMap remove(Object key){ +public PersistentTreeMap without(Object key){ Box found = new Box(null); Node t = remove(tree, key, found); if(t == null) @@ -748,7 +748,7 @@ static public void main(String args[]){ Collections.shuffle(Arrays.asList(ints)); //force the ListMap class loading now try { - PersistentListMap.EMPTY.add(1, null).add(2,null).add(3,null); + PersistentListMap.EMPTY.assocEx(1, null).assocEx(2,null).assocEx(3,null); } catch (Exception e) { e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates. @@ -788,7 +788,7 @@ static public void main(String args[]){ for(int i = 0; i < ints.length/2; i++) { Integer anInt = ints[i]; - set = set.remove(anInt); + set = set.without(anInt); } long estimatedTime = System.nanoTime() - startTime; diff --git a/src/jvm/clojure/lang/TObj.java b/src/jvm/clojure/lang/TObj.java index 53050e6b..50c9337e 100644 --- a/src/jvm/clojure/lang/TObj.java +++ b/src/jvm/clojure/lang/TObj.java @@ -41,7 +41,7 @@ public IPersistentMap attrs() throws Exception { public void removeAttr(Object key) throws Exception {
IPersistentMap t = (IPersistentMap) Transaction.get( _attrs);
- t = t.remove(key);
+ t = t.without(key);
Transaction.set(_attrs,t);
}
}
diff --git a/src/jvm/clojure/lang/Var.java b/src/jvm/clojure/lang/Var.java index 627e59f8..55e470e0 100644 --- a/src/jvm/clojure/lang/Var.java +++ b/src/jvm/clojure/lang/Var.java @@ -96,7 +96,7 @@ private void setThreadBinding(Binding b) { { tb = threadBindings.get(); if (b == null) - newtb = tb.remove(thread); + newtb = tb.without(thread); else newtb = tb.assoc(thread, b); } while (!threadBindings.compareAndSet(tb, newtb)); |