3
私は、次のレコードを定義した場合:Clojureの仕様とレコードコンストラクタ
(defrecord Person [name id])
と、次の
(s/def ::name string?)
(s/def ::id int?)
(s/def ::person (s/keys :req-un [::name ::id]))
私はあなたが適合していない人を作成することができないようにすることができますどのように:: person specに?言い換えれば、以下は例外をスローする必要があります
(->Person "Fred" "3")
私が試した:
(s/fdef ->Person :ret ::person)
が、呼び出し:
(->Person "Fred" "3")
は、例外は発生しません。しかし
:
:clojure.spec/invalid
おかげ