Advertisement
Guest User

Untitled

a guest
Apr 28th, 2015
226
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.50 KB | None | 0 0
  1. defmodule Extensions.JSON do
  2. alias Postgrex.TypeInfo
  3.  
  4. @behaviour Postgrex.Extension
  5. @json ["json", "jsonb"]
  6.  
  7. def init(_parameters, opts),
  8. do: Keyword.fetch!(opts, :library)
  9.  
  10. def matching(_library),
  11. do: [type: "json", type: "jsonb"]
  12.  
  13. def format(_library),
  14. do: :binary
  15.  
  16. def encode(%TypeInfo{type: type}, map, _state, library) when type in @json,
  17. do: library.encode!(map)
  18.  
  19. def decode(%TypeInfo{type: type}, json, _state, library) when type in @json,
  20. do: library.decode!(json)
  21. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement