Class: TypedModel::Errors

Inherits:
Object
  • Object
show all
Defined in:
lib/typed_model/errors.rb

Instance Method Summary collapse

Constructor Details

#initializeErrors

Returns a new instance of Errors.



3
4
5
6
7
# File 'lib/typed_model/errors.rb', line 3

def initialize
  @errors = Hash.new do |h, k|
    h[k] = []
  end
end

Instance Method Details

#[](k) ⇒ Object



29
30
31
# File 'lib/typed_model/errors.rb', line 29

def [](k)
  @errors[k]
end

#add(key, msg) ⇒ Object



9
10
11
# File 'lib/typed_model/errors.rb', line 9

def add(key, msg)
  @errors[key] << msg
end

#each_errorObject



19
20
21
22
23
# File 'lib/typed_model/errors.rb', line 19

def each_error
  @errors.each do |(k, msgs)|
    msgs.each { |m| yield(k, m) }
  end
end

#empty?Boolean

Returns:

  • (Boolean)


33
34
35
# File 'lib/typed_model/errors.rb', line 33

def empty?
  @errors.empty?
end

#merge!(errors, prefix) ⇒ Object



13
14
15
16
17
# File 'lib/typed_model/errors.rb', line 13

def merge!(errors, prefix)
  errors.each_error do |k, msg|
    add("#{prefix}/#{k}", msg)
  end
end

#to_hObject



25
26
27
# File 'lib/typed_model/errors.rb', line 25

def to_h
  @errors.to_h
end