Я создал протокол в Clojure 1.2, который обрабатывает мои собственные классы Java и имеет стандартную обработку для общего java.lang.Object. Код выглядит примерно так:
(extend-protocol PMyProtocol
my.java.ClassName
(protocol-function [c]
"My Java class result")
java.lang.Object
(protocol-function [c]
"Default object result"))
Как мне расширить это, чтобы иметь специальную обработку для стандартных структур данных Clojure (в частности, карт, векторов и последовательностей)?