Module: AttrStatements::ErrorManager

Defined in:
lib/attr_statements/error_manager.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#errorsObject



23
24
25
# File 'lib/attr_statements/error_manager.rb', line 23

def errors
  @errors ||= ActiveModel::Errors.new(self)
end

Class Method Details

.included(base) ⇒ Object



15
16
17
18
19
20
# File 'lib/attr_statements/error_manager.rb', line 15

def included(base)
  base.class_eval do
    extend ActiveModel::Naming
    extend ActiveModel::Translation
  end
end

Instance Method Details

#valid?Boolean

Returns:

  • (Boolean)


27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/attr_statements/error_manager.rb', line 27

def valid?
  errors.clear

  self.class.attr_statements.each do |statement_key|
    object = self.class.__send__(:get_statement_object, statement_key)
    value  = get_statement_value(statement_key)

    validate(object, value)
  end

  errors.empty?
end