class SmartCore::Validator::Commands::ValidateWith

@api private @since 0.1.0

Attributes

nested_validations[R]

@return [Proc]

@api private @since 0.1.0

validating_klass[R]

@return [Class<SmartCore::Validator>]

@api private @since 0.1.0

Public Class Methods

new(validating_klass, nested_validations) click to toggle source

@param validating_klass [Class<SmartCore::Validator>] @param nested_validations [Proc] @return [void]

@api private @since 0.1.0

# File lib/smart_core/validator/commands/validate_with.rb, line 28
def initialize(validating_klass, nested_validations)
  @validating_klass = validating_klass
  @nested_validations = nested_validations
end

Public Instance Methods

call(validator) click to toggle source

@param validator [SmartCore::Validator] @return [void]

@api private @since 0.1.0

# File lib/smart_core/validator/commands/validate_with.rb, line 38
def call(validator)
  sub_validator = build_sub_validator(validator, validating_klass)

  if sub_validator.valid?
    check_nested_validations(validator, nested_validations)
  else
    validator.__append_errors__(sub_validator.__validation_errors__)
  end
end