Class: Parametron::ParamsValidator::GenericParameter

Inherits:
Struct
  • Object
show all
Defined in:
lib/parametron/params_validator.rb

Direct Known Subclasses

OptionalParameter, RequiredParameter

Instance Method Summary collapse

Constructor Details

#initialize(name, default, validator, as, cast) ⇒ GenericParameter

Returns a new instance of GenericParameter.



81
82
83
84
85
86
# File 'lib/parametron/params_validator.rb', line 81

def initialize(name, default, validator, as, cast)
  super
  unless as.nil? || String === as || Symbol === as
    raise ArgumentError.new("Parameter :as should be either String or Symbol!")
  end
end

Instance Method Details

#valid?(value) ⇒ Boolean

Returns:

  • (Boolean)


88
89
90
91
92
93
94
95
# File 'lib/parametron/params_validator.rb', line 88

def valid?(value)
  case self.validator
  when Regexp then value && !!self.validator.match(value.to_s)
  when Proc   then value && !!self.validator.call(value)
  else
    true
  end
end