Module: JrJackson::Json
- Defined in:
- lib/jrjackson/jrjackson.rb
Constant Summary collapse
- TIME_REGEX =
%r(\A(\d{4}-\d\d-\d\d|(\w{3}\s){2}\d\d)\s\d\d:\d\d:\d\d)
Class Method Summary collapse
- .dump(object, options = {}) ⇒ Object (also: generate)
- .load(json_string, options = nil) ⇒ Object (also: parse)
Class Method Details
.dump(object, options = {}) ⇒ Object Also known as: generate
34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
# File 'lib/jrjackson/jrjackson.rb', line 34 def dump(object, = {}) case object when Hash, Array, String, Java::JavaUtil::Map, Java::JavaUtil::List JrJackson::Raw.generate(object, ) when true, false object.to_s when nil 'null' else if object.respond_to?(:to_json) object.to_json elsif object.respond_to?(:to_s) object.to_s else object end end end |
.load(json_string, options = nil) ⇒ Object Also known as: parse
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/jrjackson/jrjackson.rb', line 16 def load(json_string, = nil) if json_string.is_a?(String) && is_time_string?(json_string) return JrJackson::Raw.parse_raw("\"#{json_string}\"") end if && !.empty? if .size == 1 && !![:raw] return JrJackson::Raw.parse_raw(json_string) end if .size == 1 && !![:symbolize_keys] return JrJackson::Raw.parse_sym(json_string) end JrJackson::Raw.parse(json_string, ) else JrJackson::Raw.parse_str(json_string) end end |