summaryrefslogtreecommitdiff
path: root/src/jvm/clojure
diff options
context:
space:
mode:
authorRich Hickey <richhickey@gmail.com>2007-09-28 20:57:15 +0000
committerRich Hickey <richhickey@gmail.com>2007-09-28 20:57:15 +0000
commit3697b6fdf89bc5502657c5936121e8ce151098c1 (patch)
treeda2dc5877fb92e815b69468158eb71064f1f0a32 /src/jvm/clojure
parentc67602fd05717218ad4b7b18b4e4643396d62d6b (diff)
interim checkin
Diffstat (limited to 'src/jvm/clojure')
-rw-r--r--src/jvm/clojure/lang/APersistentMap.java6
-rw-r--r--src/jvm/clojure/lang/RT.java1
2 files changed, 7 insertions, 0 deletions
diff --git a/src/jvm/clojure/lang/APersistentMap.java b/src/jvm/clojure/lang/APersistentMap.java
index 18481747..eff4e294 100644
--- a/src/jvm/clojure/lang/APersistentMap.java
+++ b/src/jvm/clojure/lang/APersistentMap.java
@@ -23,6 +23,12 @@ protected APersistentMap(){
}
public IPersistentCollection cons(Object o){
+ if(o instanceof IMapEntry)
+ {
+ IMapEntry e = (IMapEntry) o;
+ return assoc(e.key(), e.val());
+ }
+
IPersistentMap ret = this;
for(ISeq es = RT.seq(o); es != null; es = es.rest())
{
diff --git a/src/jvm/clojure/lang/RT.java b/src/jvm/clojure/lang/RT.java
index 844e911d..09776225 100644
--- a/src/jvm/clojure/lang/RT.java
+++ b/src/jvm/clojure/lang/RT.java
@@ -103,6 +103,7 @@ final static Var IMPORTS = Var.intern(Symbol.create("clojure", "*imports*"),
Symbol.create("Iterable"), "java.lang.Iterable",
Symbol.create("Readable"), "java.lang.Readable",
Symbol.create("Runnable"), "java.lang.Runnable",
+ Symbol.create("Exception"), "java.lang.Exception",
Symbol.create("Collection"), "java.util.Collection",
Symbol.create("Comparator"), "java.util.Comparator",
Symbol.create("Enumeration"), "java.util.Enumeration",