Class: Rison::Dumper

Inherits:
Object
  • Object
show all
Defined in:
lib/rison/dumper.rb

Direct Known Subclasses

Array::Dumper, Object::Dumper

Class Method Summary collapse

Class Method Details

.dump(object) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/rison/dumper.rb', line 4

def dump(object)
  case object
  when TrueClass
    "!t"
  when FalseClass
    "!f"
  when NilClass
    "!n"
  when Numeric
    object.to_s.gsub('+', '')
  when Hash
    "(#{object.map { |k, v| dump(k) + ':' + dump(v) }.join(',')})"
  when ::Array
    "!(#{object.map { |e| dump(e) }.join(',')})"
  else
    escape(object.to_s)
  end
end