请在2024年Clojure状态调查!中分享您的想法。

欢迎!请参阅关于页面,了解更多有关此功能的信息。

0
core.typed

错误信息是
bq. 在多方法'multi'S检查中没有方法用于调度值::reify
以下是一个失败的测试用例

`
(ns core-typed-bug.core
(:require [clojure.core.typed :refer :all]))

(ann-protocol ITypedTest

          get-data [ITypedTest -> Any])

(defprotocol> ITypedTest
(get-data [this]))

(ann typed-test [String -> ITypedTest])
(defn typed-test [input]
(reify ITypedTest

(get-data [_] input)))

(defn> testfn :- Any
[asdf :- Keyword, in :- ITypedTest]
(get-data in))
`

可能在bug (链接: http://dev.clojure.org/jira/browse/CTYP-132 文本:CTYP-132) 中类似。

分支:https://github.com/clojure/core.typed/pull/28/files

3 答案

0

评论由:jot1109

同样在clojure 1.5.1,core.typed 0.2.65

多方法'multi'S检查中没有方法用于调度值::reify

0

评论由:donald.ball

这仍然存在于core.typed 0.3.22中,并且它介绍了我在一个库中使用的^:no-check的唯一用途。我像用完风格一样使用协议,并且相当依赖于reify,因此很不错地避开它。

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