diff options
-rw-r--r-- | src/jvm/clojure/lang/Keyword.java | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/jvm/clojure/lang/Keyword.java b/src/jvm/clojure/lang/Keyword.java index 9b5aea9a..890f14d7 100644 --- a/src/jvm/clojure/lang/Keyword.java +++ b/src/jvm/clojure/lang/Keyword.java @@ -12,10 +12,12 @@ package clojure.lang; +import java.io.ObjectStreamException; +import java.io.Serializable; import java.util.concurrent.ConcurrentHashMap; -public class Keyword implements IFn, Comparable, Named{ +public class Keyword implements IFn, Comparable, Named, Serializable { private static ConcurrentHashMap<Symbol, Keyword> table = new ConcurrentHashMap(); public final Symbol sym; @@ -76,6 +78,10 @@ public String getName(){ return sym.getName(); } +private Object readResolve() throws ObjectStreamException{ + return intern(sym); +} + /** * Indexer implements IFn for attr access * |