2024 年 Clojure 调查! 中分享您的看法。

欢迎!有关如何使用本站的信息,请参阅 关于 页面。

0 投票
core.typed

以下代码(意外地)通过了类型检查。

`
(ns tst
(:require
[clojure.core.typed :refer [Int Kw ann] :as typed]))

(typed/defprotocol [[a :variance :covariant]] P)

               (f [p :- (P a)] :- a))

(typed/ann-record [[a :variance :covariant]] R [_f :- a])
(defrecord R [_f])
P
(f [self] _f)

(ann fr [(R Int) -> Kw])
(defn fr [x] (f x))
`

1 个答案

0 投票
参考: https://clojure.atlassian.net/browse/CTYP-279(由 alex+import 报告)
...