class Outback::AttrSetter

Public Class Methods

new(configurable) click to toggle source
# File lib/outback/support/attr_setter.rb, line 4
def initialize(configurable)
  @configurable = configurable
  configurable.class.attributes.each do |name|
    meta_def(name) do |value|
      write_attribute(name, value)
    end
  end
end

Public Instance Methods

method_missing(name, *args, &block) click to toggle source
# File lib/outback/support/attr_setter.rb, line 13
def method_missing(name, *args, &block)
  @configurable.send(name, *args, &block)
end

Private Instance Methods

write_attribute(name, value) click to toggle source
# File lib/outback/support/attr_setter.rb, line 19
def write_attribute(name, value)
  @configurable.instance_variable_set "@#{name}", value
end