A
Size: a a a
A
KC
A
ND
A
KC
A
ST
(defn- error-phrase?
[^Throwable e, phrase]
(some-> e .getMessage (.contains phrase)))
(cond (error-phrase? e "Phone") :DUPLICATED_PHONE
(error-phrase? e "Email") :DUPLICATED_EMAIL
...)
KC
A
.getMessage одного и того же ексепшена, а используя let именно этого и хотели избежать, судя по всемуST
KR
ST
DL
ST
ST
(defn- error-phrase?
[phrase, ^Throwable e]
(some-> e .getMessage (.contains phrase)))
(condp error-phrase? e
"Phone" :DUPLICATED_PHONE
"Email" :DUPLICATED_EMAIL)
DL
(def errors
{"Phone" :DUPLICATED_PHONE
"Email" :DUPLICATED_EMAIL})
(some (fn [[text error]]
(when (error-phrase? e text)
error))
errors)
ST