class Toys::Settings::Field
@private
Attributes
container[R]
default[R]
group_class[R]
name[R]
type[R]
Public Class Methods
new(container, name, type_spec, default_or_group_class)
click to toggle source
# File lib/toys/settings.rb, line 580 def initialize(container, name, type_spec, default_or_group_class) @container = container @name = name if type_spec == SETTINGS_TYPE @default = nil @group_class = default_or_group_class @type = type_spec else @group_class = nil if type_spec == DEFAULT_TYPE @default = default_or_group_class @type = Type.for_default_value(@default) else @type = Type.for_type_spec(type_spec) @default = validate(default_or_group_class) end end end
Public Instance Methods
group?()
click to toggle source
# File lib/toys/settings.rb, line 605 def group? !@group_class.nil? end
validate(value)
click to toggle source
# File lib/toys/settings.rb, line 609 def validate(value) validated_value = @type.call(value) if validated_value == ILLEGAL_VALUE raise FieldError.new(value, container, name, @type.description) end validated_value end