Module: Legion::JSON

Defined in:
lib/legion/json.rb,
lib/legion/json/helper.rb,
lib/legion/json/parse_error.rb

Defined Under Namespace

Modules: Helper Classes: ParseError

Class Method Summary collapse

Class Method Details

.dump(object = nil, pretty: false, **kwargs) ⇒ Object



24
25
26
27
# File 'lib/legion/json.rb', line 24

def dump(object = nil, pretty: false, **kwargs)
  data = object.nil? ? kwargs : object
  parser.dump(data, pretty: pretty)
end

.fast_generate(object) ⇒ Object



47
48
49
# File 'lib/legion/json.rb', line 47

def fast_generate(object)
  ::JSON.fast_generate(object)
end

.generate(object) ⇒ Object



37
38
39
# File 'lib/legion/json.rb', line 37

def generate(object)
  ::JSON.generate(object)
end

.load(string, symbolize_keys: true) ⇒ Object



17
18
19
20
21
# File 'lib/legion/json.rb', line 17

def load(string, symbolize_keys: true)
  parser.load(string, symbolize_keys: symbolize_keys)
rescue StandardError => e
  raise Legion::JSON::ParseError.build(e, string)
end

.parse(string, symbolize_names: true) ⇒ Object



30
31
32
33
34
# File 'lib/legion/json.rb', line 30

def parse(string, symbolize_names: true)
  ::JSON.parse(string, symbolize_names: symbolize_names)
rescue StandardError => e
  raise Legion::JSON::ParseError.build(e, string)
end

.parserObject



12
13
14
# File 'lib/legion/json.rb', line 12

def parser
  @parser ||= MultiJson
end

.pretty_generate(object) ⇒ Object



42
43
44
# File 'lib/legion/json.rb', line 42

def pretty_generate(object)
  ::JSON.pretty_generate(object)
end