class Altair::Field
Attributes
options[RW]
type[RW]
Public Class Methods
new(options)
click to toggle source
# File lib/altair/field.rb, line 9 def initialize(options) @type = options[:type] @options = options end
Public Instance Methods
parse!(value, args = {})
click to toggle source
# File lib/altair/field.rb, line 14 def parse!(value, args = {}) begin resolve_proc(Altair.converter[value.class][type], value) rescue raise ConversionError.new(type, value) end end
validate!(value, args = {})
click to toggle source
# File lib/altair/field.rb, line 22 def validate!(value, args = {}) Altair.validators.each do |name, validator| if options.has_key? name raise ValidationError.new(name, value) unless validator.call(resolve_proc(options[name]), value) end end value end