Clojure - 如何检查协议中的类型提示是否正确?

时间:2011-02-08 13:18:09

标签: clojure protocols type-hinting

如何检查我的代码中的类型提示是否正确?

似乎即使我输入错误的类型提示它也没有任何警告:

=> (defprotocol Qqq (^Qwerty qqq [this ^String q]))
Qqq
=> (qqq (reify Qqq (qqq [this q] (+ q 5))) 7)
12

1 个答案:

答案 0 :(得分:4)

我记得,现在没有使用类型提示,但可以在将来使用...以下是clojure.org的官方说明引用


字段可以有类型提示,可以是原始的:

  • 请注意,目前非基本类型的类型提示不会用于约束字段类型,也不会用于构造函数arg,但会用于优化其在类方法中的使用
  • 计划字段类型和构造函数arg