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) ⇒ GenericParameter

Returns a new instance of GenericParameter.



76
77
78
79
80
81
# File 'lib/parametron/params_validator.rb', line 76

def initialize(name, default, validator, as)
  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)


83
84
85
86
87
88
89
90
# File 'lib/parametron/params_validator.rb', line 83

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