class Grape::Validations::ValuesValidator

Public Class Methods

new(attrs, options, required, scope) click to toggle source
Calls superclass method Grape::Validations::Validator::new
# File lib/grape/validations/values.rb, line 4
def initialize(attrs, options, required, scope)
  @values = options
  @required = required
  super
end

Public Instance Methods

validate_param!(attr_name, params) click to toggle source
# File lib/grape/validations/values.rb, line 10
def validate_param!(attr_name, params)
  if (params[attr_name] || required_for_root_scope?) && !(@values.is_a?(Proc) ? @values.call : @values).include?(params[attr_name])
    raise Grape::Exceptions::Validation, param: @scope.full_name(attr_name), message_key: :values
  end
end

Private Instance Methods

required_for_root_scope?() click to toggle source
# File lib/grape/validations/values.rb, line 18
def required_for_root_scope?
  @required && @scope.root?
end