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

欢迎!请访问关于页面,了解有关如何使用此功能的一些更多信息。

0
core.typed

错误信息为:
bq. 多态方法 'check' 中没有针对分配值 :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))
`

可能与问题(链接: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上也一样

多态方法 'check' 中没有针对分配值 :reify 的方法

0

评论者:donald.ball

这仍然存在于core.typed 0.3.22中,并且在我的库中使用^:no-check使我感到孤独。我像用完了一次性商品一样使用协议,并大量使用reify,因此希望能够不去规避它。

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