Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- (ns poly
- (:use [clojure.contrib.json]
- [clojure.contrib.prxml]))
- (defprotocol PSerializable
- (to-json [i])
- (to-xml [i]))
- (defrecord Person [name age])
- (extend-type Person
- PSerializable
- (to-xml [this] (prxml [:person
- [:name (:name this)]
- [:age (:age this)]]))
- (to-json [this] (println (json-str this))))
- (let [x (Person. "Paulo" 28)]
- (do (to-json x))
- (to-xml x))
Add Comment
Please, Sign In to add comment