module PhcStringFormat::Validations::ClassMethods
class methods
Public Instance Methods
do_validate(that)
click to toggle source
# File lib/phc_string_format/validations.rb, line 28 def do_validate(that) @validators.each { |validator| validator.call(that) } that end
validate(name, **options)
click to toggle source
# File lib/phc_string_format/validations.rb, line 23 def validate(name, **options) @validators ||= [] @validators << ->(object) { raise ArgumentError, options[:message] unless object.send(name) } end
validates(name, **options)
click to toggle source
# File lib/phc_string_format/validations.rb, line 13 def validates(name, **options) @validators ||= [] @validators << lambda { |object| value = object.instance_variable_get(name) return if options[:allow_nil] && !value regex = options.dig(:format, :with) raise ArgumentError, options[:message] unless !regex || value =~ regex } end