module Plumb::Attributes::ClassMethods
def __plumb_define_attribute_writer_method__(name)
def __plumb_define_attribute_writer_method__(name) define_method("#{name}=") do |value| type = self.class._schema.at_key(name) result = type.resolve(value) @attributes[name] = result.value if result.valid? @errors.delete(name) else @errors.merge!(name => result.errors) end result.value end end