summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMeikel Brandmeyer <mb@kotka.de>2010-05-27 18:49:42 +0200
committerStuart Halloway <stu@thinkrelevance.com>2010-06-03 21:20:47 -0400
commit7bf68461de66ef2d204487e345b2af18418ea581 (patch)
tree54b0970c21fb78e23a800831bec7cf3122f2e111 /src
parentfb52b69d75868e4ce49d0123bc1ceaae8d6f5fe8 (diff)
Make disj nil-aware
Refers #360 Signed-off-by: Stuart Halloway <stu@thinkrelevance.com>
Diffstat (limited to 'src')
-rw-r--r--src/clj/clojure/core.clj12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/clj/clojure/core.clj b/src/clj/clojure/core.clj
index 2746a610..81c1fcb7 100644
--- a/src/clj/clojure/core.clj
+++ b/src/clj/clojure/core.clj
@@ -1168,12 +1168,14 @@
{:added "1.0"}
([set] set)
([^clojure.lang.IPersistentSet set key]
- (. set (disjoin key)))
+ (when set
+ (. set (disjoin key))))
([set key & ks]
- (let [ret (disj set key)]
- (if ks
- (recur ret (first ks) (next ks))
- ret))))
+ (when set
+ (let [ret (disj set key)]
+ (if ks
+ (recur ret (first ks) (next ks))
+ ret)))))
(defn find
"Returns the map entry for key, or nil if key not present."