# scalars
### scheam.edn
{
...
:scalars {:StockPrice {:parse :dollar->number
:serialize :number->dollar}
:Long {:parse :long-parse
:serialize :long-serialize}}
...
}
{
...
:objects {
:Token {:desciption "Token"
:fields {:access_token {:type String}
:expires_at {:type :Long}
:refresh_token {:type String}
:token_type {:type String}}}
}
...
}
### schema.clj
(util/attach-scalar-transformers {:dollar->number scalars/dollar->number
:number->dollar scalars/number->dollar
:long-parse scalars/long-parse
:long-serialize scalars/long-serialize})
### scalars.clj
(def long-parse
(fn [v]
(parse-long v)))
(def long-serialize
(fn [v] v))