Module: Teth::Configurable

Included in:
Minitest
Defined in:
lib/teth/configurable.rb

Instance Method Summary collapse

Instance Method Details

#option(name, default = nil) ⇒ Object



3
4
5
6
7
8
9
10
11
12
13
# File 'lib/teth/configurable.rb', line 3

def option(name, default=nil)
  singleton_class.send(:define_method, name) do |*args|
    if args.empty?
      v = instance_variable_get("@#{name}")
      return default if v.nil?
      v
    else
      instance_variable_set("@#{name}", args[0])
    end
  end
end