module HashValidator
Constants
- VERSION
Public Class Methods
append_validator(validator)
click to toggle source
# File lib/hash_validator/validators.rb, line 5 def self.append_validator(validator) unless validator.is_a?(HashValidator::Validator::Base) raise StandardError.new('validators need to inherit from HashValidator::Validator::Base') end if @@validators.detect { |v| v.name == validator.name } raise StandardError.new('validators need to have unique names') end @@validators << validator end
many(validation)
click to toggle source
# File lib/hash_validator.rb, line 10 def self.many(validation) Validations::Many.new(validation) end
multiple(*validations)
click to toggle source
# File lib/hash_validator.rb, line 14 def self.multiple(*validations) Validations::Multiple.new(validations) end
optional(validation)
click to toggle source
# File lib/hash_validator.rb, line 6 def self.optional(validation) Validations::Optional.new(validation) end
validate(*args)
click to toggle source
# File lib/hash_validator.rb, line 2 def self.validate(*args) Base.validate(*args) end
validator_for(rhs)
click to toggle source
# File lib/hash_validator/validators.rb, line 17 def self.validator_for(rhs) @@validators.detect { |v| v.should_validate?(rhs) } || raise(StandardError.new("Could not find valid validator for: #{rhs}")) end