Module: DslAccessors::ClassMethods

Defined in:
lib/dsl_accessors.rb

Instance Method Summary collapse

Instance Method Details

#attr_accessor(*args) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/dsl_accessors.rb', line 8

def attr_accessor *args
	args.each do |attr|
		class_eval <<-EOS, __FILE__, __LINE__ + 1
			def set_#{attr}(value)
				@#{attr} = value
			end

			def #{attr}=(value)
				set_#{attr}(value)
			end

			def #{attr}(*args)
				if args.empty?
					@#{attr}
				else
					set_#{attr}(*args)
				end
			end
		EOS
	end
end