ヒカップ データ構造を表すベクター ツリーをトラバースしたい:
[:div {:class "special"} [:btn-grp '("Hello" "Hi")]]
次に、ベクトルのキーワードでディスパッチしたいのですが、キーワードにマルチメソッドが定義されている場合、別のベクトルのセットが返され、元のタグが置き換えられます。
たとえば、上記の構造は次のように変換されます。
[:div {:class "special"} [:div [:button "Hello"] [:button "Hi"]]]
カスタム マルチメソッドは、リスト ("hello" "hi") をパラメーターとして受け取ります。次に、ボタンを含む div を返します。
ベクトルをトラバースし、フォーム内の他のすべてをパラメーターとしてキーワードでディスパッチし、現在のフォームを返されたフォームに置き換える関数を作成するにはどうすればよいですか?