module SugarPNG::DynAccessor
Public Instance Methods
dyn_accessor(*names)
click to toggle source
# File lib/sugar_png/dyn_accessor.rb, line 3 def dyn_accessor *names names.each do |name| if name.is_a?(Hash) # dynamic accessor with alias(es) name.each do |main, aliases| dyn_accessor main Array(aliases).each do |aliased| class_eval <<-EOF alias :#{aliased} :#{main} alias :#{aliased}= :#{main}= EOF end end else attr_writer name # dynamic getter or setter based on argument given or not class_eval <<-EOF def #{name} arg=nil arg ? @#{name} = arg : @#{name} end EOF end end end