class Definition::Types::Keys

Attributes

defaults[RW]
ignore_extra_keys[RW]
optional_definitions[RW]
required_definitions[RW]

Public Class Methods

new(name, req: {}, opt: {}, defaults: {}, options: {}) click to toggle source
Calls superclass method Definition::Types::Base::new
# File lib/definition/types/keys.rb, line 63
def initialize(name, req: {}, opt: {}, defaults: {}, options: {})
  super(name)
  self.required_definitions = req
  self.optional_definitions = opt
  self.defaults = defaults
  self.ignore_extra_keys = options.fetch(:ignore_extra_keys, false)
end

Public Instance Methods

conform(value) click to toggle source
# File lib/definition/types/keys.rb, line 71
def conform(value)
  Conformer.new(self, value).conform
end
keys() click to toggle source
# File lib/definition/types/keys.rb, line 75
def keys
  required_definitions.keys + optional_definitions.keys
end