所以我有这段代码
(defalias Tag
(U Keyword Integer))
(defalias Entity
(HMap :mandatory {:type Tag} :complete? false))
(defn with-prop [entity :- Entity, prop :- Keyword, value :- Any] :- Entity
(assoc entity prop value))
但是看起来with-prop没有正确输入,因为core.typed说它应该是:
(IPersistentMap Keyword Any)
虽然这在技术上是正确的。我想保留实体类型,因为它保证:type属性在那里。
无论如何我能做到吗?
唯一让我感兴趣的是在那里有:type属性,它实际上不需要是一个HMap,我想它可能是一个IPersistentMap,但我找不到一个有效的添加方式一个强制性的关键。 (github wiki上的示例对我不起作用)
我正在使用版本[org.clojure / core.typed“0.3.26”]
谢谢,
布吉