Module: EJSONExt
- Defined in:
- lib/ejson_ext.rb,
lib/ejson_ext/version.rb,
lib/ejson_ext/decoders/node.rb,
lib/ejson_ext/key_val_parser.rb,
lib/ejson_ext/decoders/null_node.rb,
lib/ejson_ext/encoders/time_type.rb,
lib/ejson_ext/decoders/start_node.rb,
lib/ejson_ext/encoders/escape_type.rb,
lib/ejson_ext/encoders/default_type.rb,
lib/ejson_ext/encoders/recursive_type.rb
Defined Under Namespace
Modules: Decoders, Encoders
Classes: KeyValParser
Constant Summary
collapse
- VERSION =
"0.1.0"
Class Method Summary
collapse
Class Method Details
.ejson_hash_from_hash(value) ⇒ Object
25
26
27
|
# File 'lib/ejson_ext.rb', line 25
def self.ejson_hash_from_hash(value)
Hash[value.each.map { |key, val| KeyValParser.new(key, val).parse }]
end
|
.parse(item) ⇒ Object
13
14
15
16
17
18
19
|
# File 'lib/ejson_ext.rb', line 13
def self.parse(item)
if item.is_a?(String)
Decoders::StartNode.new(JSON.parse item).compile
else
fail %(EJSONExt.parse argument should be a string "#{item.class}" given)
end
end
|
.stringify(value) ⇒ Object
21
22
23
|
# File 'lib/ejson_ext.rb', line 21
def self.stringify(value)
ejson_hash_from_hash(value).to_json
end
|