Skip to content

Commit 5f92a0c

Browse files
committed
Stopped passing around doc_attrs and started using an explicit required param
1 parent 61fdcb7 commit 5f92a0c

File tree

1 file changed

+5
-5
lines changed

1 file changed

+5
-5
lines changed

lib/grape/validations.rb

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@ module Validations
88
# All validators must inherit from this class.
99
#
1010
class Validator
11-
def initialize(attrs, options, doc_attrs)
11+
def initialize(attrs, options, required)
1212
@attrs = Array(attrs)
13-
@doc_attrs = doc_attrs
13+
@required = required
1414

1515
if options.is_a?(Hash) && !options.empty?
1616
raise "unknown options: #{options.keys}"
@@ -19,7 +19,7 @@ def initialize(attrs, options, doc_attrs)
1919

2020
def validate!(params)
2121
@attrs.each do |attr_name|
22-
if @doc_attrs[:required] || params.has_key?(attr_name)
22+
if @required || params.has_key?(attr_name)
2323
validate_param!(attr_name, params)
2424
end
2525
end
@@ -40,7 +40,7 @@ def self.convert_to_short_name(klass)
4040
##
4141
# Base class for all validators taking only one param.
4242
class SingleOptionValidator < Validator
43-
def initialize(attrs, options, doc_attrs)
43+
def initialize(attrs, options, required)
4444
@option = options
4545
super
4646
end
@@ -130,7 +130,7 @@ def validates(attrs, validations)
130130
def validate(type, options, attrs, doc_attrs)
131131
validator_class = Validations::validators[type.to_s]
132132
if validator_class
133-
@api.settings[:validations] << validator_class.new(attrs, options, doc_attrs)
133+
@api.settings[:validations] << validator_class.new(attrs, options, doc_attrs[:required])
134134
else
135135
raise "unknown validator: #{type}"
136136
end

0 commit comments

Comments
 (0)