Class: Opdotenv::Parsers::JsonParser
- Inherits:
-
Object
- Object
- Opdotenv::Parsers::JsonParser
- Defined in:
- lib/opdotenv/parsers/json_parser.rb
Class Method Summary collapse
Class Method Details
.flatten_to_string_map(obj, prefix = nil, out = {}) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/opdotenv/parsers/json_parser.rb', line 9 def self.flatten_to_string_map(obj, prefix = nil, out = {}) case obj when Hash obj.each do |k, v| key = prefix ? "#{prefix}_#{k}" : k.to_s flatten_to_string_map(v, key, out) end when Array obj.each_with_index do |v, i| key = prefix ? "#{prefix}_#{i}" : i.to_s flatten_to_string_map(v, key, out) end else out[prefix.to_s] = obj.to_s end out end |
.parse(text) ⇒ Object
4 5 6 7 |
# File 'lib/opdotenv/parsers/json_parser.rb', line 4 def self.parse(text) data = JSON.parse(text.to_s) flatten_to_string_map(data) end |