Каков синтаксис подсказки типа для java.util.Map.Entry, вложенного статического внутреннего класса, в Clojure 1.2?
java.util.Map.Entry
Я пробовал оба ^Map/Entry и ^Map.Entry, и ни один из них не скомпилируется.
^Map/Entry
^Map.Entry
Нашёл!
(ns com.example (:import [java.util Map Map$Entry])) (let [^Map$Entry foo ...])
и для подсказок типа Object[]:
Object[]
(let [^"[Ljava.lang.Object;" foo ...])
Кстати, это какой-то уродливый синтаксис.Есть ли лучший способ?
Внутренние классы обозначаются знаком $, поэтому в этом случае вы можете ссылаться на него из Clojure как Map$Entry.
$
Map$Entry