Module: Arcp::Serializer
- Defined in:
- lib/arcp/serializer.rb
Class Method Summary collapse
Class Method Details
.backend ⇒ Object
11 |
# File 'lib/arcp/serializer.rb', line 11 def backend = @backend |
.backend=(name) ⇒ Object
13 14 15 16 17 18 19 20 21 |
# File 'lib/arcp/serializer.rb', line 13 def backend=(name) case name when :stdlib, :oj @backend = name require 'oj' if name == :oj else raise ArgumentError, "unknown serializer backend: #{name.inspect}" end end |
.dump(value) ⇒ Object
23 24 25 26 27 28 29 30 |
# File 'lib/arcp/serializer.rb', line 23 def dump(value) case @backend when :oj Oj.dump(value, mode: :compat) else JSON.generate(value) end end |
.load(bytes) ⇒ Object
32 33 34 35 36 37 38 39 40 41 |
# File 'lib/arcp/serializer.rb', line 32 def load(bytes) return nil if bytes.nil? || bytes.empty? case @backend when :oj Oj.load(bytes, mode: :compat) else JSON.parse(bytes) end end |