class Scripting::Options
Public Instance Methods
[](name)
click to toggle source
# File lib/scripting/options.rb, line 6 def [](name) ivar = "@#{name}" value = instance_variable_get(ivar) if value.respond_to? :call instance_eval &value else value end end
[]=(name, value)
click to toggle source
# File lib/scripting/options.rb, line 17 def []=(name, value) ivar = "@#{name}" instance_variable_set(ivar, value) end
describe(&blk;)
click to toggle source
# File lib/scripting/options.rb, line 4 def describe &blk; instance_eval &blk; end
method_missing(name, *args, &blk)
click to toggle source
# File lib/scripting/options.rb, line 22 def method_missing(name, *args, &blk) name = name.to_s # predicate? if name =~/\?$/ return !!self[name.chop] end # assignment= if name =~ /=$/ name.chop! end if block_given? self[name] = blk elsif args.length > 0 self[name] = args.first else self[name] end end