2016-11-18 10 views
1

私はClojureアプリケーションでNashornを使用しています。 JavaScriptコードを評価するとき、java.util.Mapインターフェースを実装するScriptObjectMirrorを返します。Javaマップでキーワードを指定

マップキーをclojure.walk/keywordize-keysを使用してキーワード化しようとしていますが、IPersistentMap以外のマップには効果がないようです。それは再帰的に動作しません。しかし

(into {} 
    (for [[k v] eval-result] 
     [(keyword k) v])) 

は、だから私はfollwingコードを試してみました。どのようにJavaマップをキーワード化するかについての任意のアイデア? clojure.walk/keywordize-keysはMapインターフェイスで動作しませんか?

ありがとうございました。

+0

道を私を見つけましたか? –

答えて

0

あなたが任意のサンプルデータを持っていますか

(defn keywordize [object] 
    (if (instance? java.util.Map object) 
     (into {} 
      (for [[k v] object] 
       [(keyword k) (keywordize v)])) 
     object 
) 
) 
関連する問題