Module: JSONPrettyGenerate

Defined in:
lib/json_pretty_generate.rb,
lib/json_pretty_generate/version.rb

Constant Summary collapse

VERSION =
'0.1.0'

Class Method Summary collapse

Class Method Details

.call(obj) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/json_pretty_generate.rb', line 8

def self.call(obj)
  return unless [Hash, String].include?(obj.class)

  if obj.is_a? String
    begin
      obj = JSON.parse(obj)
    rescue JSON::ParserError
      return obj
    end
  end

  obj = yield(obj.with_indifferent_access) if block_given?

  JSON.pretty_generate(obj)
end