Sha256: 0869d0e7f9984fbd9988c774766bb7bb34769fc1f03958a9cd6b6ca6a3e1a37c

Contents?: true

Size: 526 Bytes

Versions: 1

Compression:

Stored size: 526 Bytes

Contents

module Config
  module Validation
    class Error < StandardError

      def self.format(v_res)
        flatten_hash(v_res.messages).map do |field, msgs|
          "#{' ' * 2}#{field}: #{msgs.join('; ')}"
        end.join("\n")
      end

      def self.flatten_hash(h, acc={}, pref=[])
        h.inject(acc) do |a, (k, v)|
          if v.is_a?(Hash)
            flatten_hash(v, acc, pref + [k])
          else
            acc[(pref + [k]).join('.')] = v
            acc
          end
        end
      end

    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
config-1.7.2 lib/config/validation/error.rb