Sha256: 48548b60f2b4790e23b541c90e9f1be7d2b9d0e1522218c6543c442a7a6a028d

Contents?: true

Size: 560 Bytes

Versions: 4

Compression:

Stored size: 560 Bytes

Contents

# frozen_string_literal: true

module SimpleValidate
  class Errors
    attr_reader :messages

    def initialize
      @messages = {}
    end

    def add(attribute, message)
      if @messages.key?(attribute)
        @messages[attribute] << message
      else
        @messages[attribute] = Array(message)
      end
    end

    def on(key)
      @messages.fetch(key)
    end

    def clear!
      @messages = {}
    end

    def empty?
      @messages.empty?
    end

    def full_messages
      @messages.values.flatten.map(&:capitalize)
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
simple_validate-2.2.2 lib/simple_validate/errors.rb
simple_validate-2.1.2 lib/simple_validate/errors.rb
simple_validate-2.0.2 lib/simple_validate/errors.rb
simple_validate-2.0.1 lib/simple_validate/errors.rb