2024年Clojure调查问卷!中分享您的想法吧:2024 State of Clojure Survey!

欢迎!请查阅关于页面,了解更多有关如何使用本站的信息。

0
core.typed
我相当肯定这个应该可以 passes


(ns moonrise
$  (:require [clojure.core.typed :refer :all]))

(ann-record X [a :- Number])
(defrecord X [a])

(ann x X)
(def x (merge (X. 3) {:z 4}))


但它给出


类型错误 (moonrise:8:8) 多态函数 clojure.core/merge 无法应用于这些参数
多态变量
    k
    v


    nil *
    (clojure.lang.IPersistentMap k v) (clojure.lang.IPersistentMap k v) *
    (Option (clojure.lang.IPersistentMap k v)) *

参数
    moonrise.X (HMap :mandatory {:z (Value 4)} :complete? true)

范围
    nil
    (clojure.lang.IPersistentMap k v)
    (Option (clojure.lang.IPersistentMap k v))

期望类型
    moonrise.X

在: (clojure.core/merge (new moonrise.X 3) (quote {:z 4}))
在: (def x (clojure.core/merge (new moonrise.X 3) (quote {:z 4})))


类型检查器:发现1个错误

1 个回答

0
by
参考资料: https://clojure.atlassian.net/browse/CTYP-72(由 alex+import 报告)
...