MB
Size: a a a
MB
ST
AI
MB
ST
ST
AI
KR
AI
(defmacro cond-let
([] nil)
([x] (throw (IllegalArgumentException. "cond-let error: last one form")))
([a b & forms] (if (vector? a)
`(let ~a (cond-let ~b ~@forms))
`(if ~a ~b (cond-let ~@forms)))))
AI
(cond-let
[a (:a m)]
(not a) "not a"
; [b (+ 1 a)
; c (* 10 b)]
[b (+ 1 a)]
[c (* 10 b)]
(< c 50) "too small c"
(= c 50) "exact c"
[d (str "a = " a ", b = " b ", c = " c)
e (count d)]
:else {:text d, :length e})
AI
ST
AI
AI
D
ST
(cond-let
[a (:a m)]
(not a) "not a"
; [b (+ 1 a)
; c (* 10 b)]
[b (+ 1 a)]
[c (* 10 b)]
(< c 50) "too small c"
(= c 50) "exact c"
[d (str "a = " a ", b = " b ", c = " c)
e (count d)]
:else {:text d, :length e})
AI
ST
ST