module Aws::Json
def dump(value)
def dump(value) @engine.dump(value) end
def engine
-
(Class)
- Returns the default engine.
def engine set_default_engine unless @engine @engine end
def engine=(engine)
-
engine
(Symbol, Class
) --
def engine=(engine) @engine = Class === engine ? engine : load_engine(engine) end
def load(json)
def load(json) @engine.load(json) end
def load_engine(name)
def load_engine(name) require "aws-sdk-core/json/#{name}_engine" const_name = name[0].upcase + name[1..-1] + 'Engine' const_get(const_name) end
def set_default_engine
def set_default_engine [:oj, :json].each do |name| @engine ||= try_load_engine(name) end unless @engine raise 'Unable to find a compatible json library. ' \ 'Ensure that you have installed or added to your Gemfile one of ' \ 'oj or json' end end
def try_load_engine(name)
def try_load_engine(name) load_engine(name) rescue LoadError false end