Class: ApipieDSL::Validator::ArrayClassValidator
Instance Attribute Summary
#param_description
Class Method Summary
collapse
Instance Method Summary
collapse
#==, #docs, #expected_type, find, inherited, #inspect, #inspected_fields, #merge_with, #sub_params, #to_s, #valid?
Constructor Details
#initialize(param_description, argument) ⇒ ArrayClassValidator
Returns a new instance of ArrayClassValidator.
257
258
259
260
|
# File 'lib/apipie_dsl/validator.rb', line 257
def initialize(param_description, argument)
super(param_description)
@array = argument
end
|
Class Method Details
.build(param_description, argument, _options, block) ⇒ Object
266
267
268
269
270
|
# File 'lib/apipie_dsl/validator.rb', line 266
def self.build(param_description, argument, _options, block)
return if !argument.is_a?(Array) || argument.first.class != ::Class || block.is_a?(Proc)
new(param_description, argument)
end
|
Instance Method Details
#description ⇒ Object
272
273
274
|
# File 'lib/apipie_dsl/validator.rb', line 272
def description
"Must be one of: #{@array.join(', ')}."
end
|
#validate(value) ⇒ Object
262
263
264
|
# File 'lib/apipie_dsl/validator.rb', line 262
def validate(value)
@array.include?(value.class)
end
|