class ApipieDSL::Validator::NestedValidator
Public Class Methods
build(param_description, argument, options, block)
click to toggle source
# File lib/apipie_dsl/validator.rb, line 471 def self.build(param_description, argument, options, block) return if argument != Array || !block.is_a?(Proc) || block.arity.positive? new(param_description, block, options[:param_group]) end
new(param_description, argument, param_group)
click to toggle source
Calls superclass method
ApipieDSL::Validator::BaseValidator::new
# File lib/apipie_dsl/validator.rb, line 465 def initialize(param_description, argument, param_group) super(param_description) @validator = HashValidator.new(param_description, argument, param_group) @type = argument end
Public Instance Methods
description()
click to toggle source
# File lib/apipie_dsl/validator.rb, line 491 def description 'Must be an Array of nested elements' end
expected_type()
click to toggle source
# File lib/apipie_dsl/validator.rb, line 487 def expected_type 'array' end
sub_params()
click to toggle source
# File lib/apipie_dsl/validator.rb, line 495 def sub_params @validator.sub_params end
validate(value)
click to toggle source
# File lib/apipie_dsl/validator.rb, line 477 def validate(value) value ||= [] return false if value.class != Array value.each do |child| return false unless @validator.validate(child) end true end