Skip to content

Instantly share code, notes, and snippets.

@DylanLacey
Created March 5, 2013 22:25
Show Gist options
  • Save DylanLacey/5094910 to your computer and use it in GitHub Desktop.
Save DylanLacey/5094910 to your computer and use it in GitHub Desktop.
Class Level Methods, how does THAT work?!
tracked_attr_accessor :something
def self.tracked_attr_accessor(*methods)
methods.each do |method|
attr_reader method
self.define_method("#{method}=") do |arg|
if method != arg
updated_fields << method
instance_variable_set("@#{method}", arg)
end
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment