Sha256: 35ec108f53d238260bfb2b9937c2aae1a4c01e85c342826648b5644e67e5b25e
Contents?: true
Size: 556 Bytes
Versions: 1
Compression:
Stored size: 556 Bytes
Contents
# frozen_string_literal: true module SimpleValidate class ValidatesExclusionOf < ValidatesBase def initialize(attribute, options) @set = options[:in] @allow_nil = options[:allow_nil] raise ArgumentError unless [Array, Range].include?(@set.class) super(attribute, options[:message] || "breaks exclusion rules", options[:if] || proc { true }) end def valid?(instance) val = instance.send(attribute) return true if val.nil? && @allow_nil == true !@set.to_a.include?(val) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
simple_validate-2.2.2 | lib/simple_validate/validates_exclusion_of.rb |