class PoroValidator::Validator::BaseClass
Public Class Methods
new()
click to toggle source
Public - Initializes the base class that creates a default value for the @validations variable with an empty array
@validations - Stores all the validations intended for a Ruby object
(entity)
# File lib/poro_validator/validator/base_class.rb, line 9 def initialize @validations = [] end
Public Instance Methods
<<(validation)
click to toggle source
run_validations(context)
click to toggle source
Public - Calls the internal #run_validations method to perform the validations stored in the @validations instance array against a validator context if the conditions are truthy.
# File lib/poro_validator/validator/base_class.rb, line 16 def run_validations(context) __run_validations__(context) end
validations()
click to toggle source
@return array of hashes of validations and conditions
# File lib/poro_validator/validator/base_class.rb, line 29 def validations @validations end
validators()
click to toggle source
@return array of validators
# File lib/poro_validator/validator/base_class.rb, line 34 def validators @validators end
Private Instance Methods
__run_validations__(context)
click to toggle source
@private
# File lib/poro_validator/validator/base_class.rb, line 41 def __run_validations__(context) validations.each do |validation| validator = validation[:validator] conditions = validation[:conditions] || {} unless conditions.empty? next unless Conditions.matched?(conditions, context) end validator.__validate__(context) end end