Clojure で使用したい Java クラスがあります。でも、Clojureマップとして使いたい。そのために必要な手順は何ですか?
コードを見てきましたIPersistentMap
-- Java クラスはそれを実装する必要がありますか? それとも、プロトコルを実装する Clojure コードが必要ですか?
コードをJavaオブジェクトからマップに明示的に変換するために、いくつかのマッピングコードを書くことができることはわかっていますが、そのソリューションは労力/報酬の比率が高くなります。また、同じ状況に何度も遭遇する可能性があります。
具体例: Java で書かれたパーサーがあります。それを使用してテキストを解析し、Clojure マップにあるかのように、解析されたデータ構造の内容にアクセスしたいと思います。
(def parser (new MyParser))
(let [parse-tree (parser ... parse some text ...)]
((parse-tree :items) "itemid"))