class Fern::Parameters::Parameters

Public Class Methods

new(parameters, config) click to toggle source
# File lib/fern/parameters/parameters.rb, line 23
def initialize(parameters, config)
  @parameters = parameters.with_indifferent_access.symbolize_keys
  @config = config.deep_symbolize_keys! unless config.nil?
end

Public Instance Methods

validated() click to toggle source
# File lib/fern/parameters/parameters.rb, line 28
def validated
  validator = Validator.new(@config)
  validator.validate(@parameters)

  if validator.errors.any?
    raise Invalid.new(validator.errors), 'invalid parameters'
  end

  self.class.new(validator.declared, @config)
end