class ErrorProne::RuleSet

Public Class Methods

available_rules() click to toggle source
# File lib/error_prone.rb, line 168
def self.available_rules
  @available_rules ||= {}
end

Public Instance Methods

add(field, rule_name, options = {}) click to toggle source
# File lib/error_prone.rb, line 180
def add(field, rule_name, options = {})
  raise "rule #{rule_name} is not available" unless available_rules.has_key?(rule_name)
  self.for(field).push(rule: available_rules[rule_name], options: options)
  self
end
all_valid_for?(object) click to toggle source
# File lib/error_prone.rb, line 187
def all_valid_for?(object)
  all? do |field, rules|
    rules.all? do |rule_config|
      rule = rule_config[:rule].new(object, field, rule_config[:options])
      rule.validate!
    end
  end
end
available_rules() click to toggle source
# File lib/error_prone.rb, line 172
def available_rules
  self.class.available_rules
end
for(field) click to toggle source
# File lib/error_prone.rb, line 176
def for(field)
  self[field] ||= []
end