class Swalidate::Validator::Parameter

Attributes

param[R]
type[R]
value[R]

Public Class Methods

new(param, value) click to toggle source
# File lib/swalidate/validator/parameter.rb, line 6
def initialize(param, value)
  @param = param
  @value = value
  @type  = Swalidate::Types::Main.new(param, value)
end

Public Instance Methods

errors() click to toggle source
# File lib/swalidate/validator/parameter.rb, line 22
def errors
  if exists?
    type.errors
  else
    required? ? ["'#{param['name']}' can't be blank."] : []
  end
end
exists?() click to toggle source
# File lib/swalidate/validator/parameter.rb, line 38
def exists?
  !!value
end
invalid?() click to toggle source
# File lib/swalidate/validator/parameter.rb, line 30
def invalid?
  !valid?
end
required?() click to toggle source
# File lib/swalidate/validator/parameter.rb, line 34
def required?
  param['required']
end
valid?() click to toggle source
# File lib/swalidate/validator/parameter.rb, line 12
def valid?
  return false if required? && !exists?

  if exists?
    type.valid?
  else
    !required?
  end
end