14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
# File 'lib/cb/utils/fluid_attributes.rb', line 14
def fluid_attr_accessor(*names)
names.each do |name|
define_method :"#{name}" do |*args|
return instance_variable_get(:"@#{name}") if args.length == 0
if args.length == 1
instance_variable_set(:"@#{name}", args[0])
return self
end
fail ArgumentError.new("Wrong number of arguments (#{args.length} for 1)")
end
define_method :"#{name}=" do |*args|
instance_variable_set(:"@#{name}", args[0]) if args.length == 1
return self
end
end
end
|