class Sqrewdriver::Serdes::JSONSerde
Public Class Methods
new(backend: :json, serialize_options: {}, deserialize_options: {})
click to toggle source
# File lib/sqrewdriver/serdes/json_serde.rb, line 14 def initialize(backend: :json, serialize_options: {}, deserialize_options: {}) @serialize_options = serialize_options @deserialize_options = deserialize_options @backend = lookup_json_backend(backend) end
Public Instance Methods
dump(val)
click to toggle source
# File lib/sqrewdriver/serdes/json_serde.rb, line 20 def dump(val) @backend.dump(val, **@serialize_options) end
load(val)
click to toggle source
# File lib/sqrewdriver/serdes/json_serde.rb, line 24 def load(val) @backend.load(val, **@deserialize_options) end
Private Instance Methods
lookup_json_backend(name)
click to toggle source
# File lib/sqrewdriver/serdes/json_serde.rb, line 30 def lookup_json_backend(name) case name when :json require "json" JSONWrapper.new when :oj require "oj" Oj end end