Class: Module

Inherits:
Object
  • Object
show all
Defined in:
lib/hilfer/module_extensions.rb

Instance Method Summary collapse

Instance Method Details

#attr_boolean(name, default = true) ⇒ Object

define this for the OptionParse singletons



3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/hilfer/module_extensions.rb', line 3

def attr_boolean( name, default = true )
  # define getter
  define_method( "#{name}?" ) do
    instvar = instance_variable_get( "@#{name}" )
    if instvar.nil?
      instance_variable_set( "@#{name}", default )
      instvar = default
    end
    instvar
  end

  # define setter
  define_method( "#{name}=" ) do |rhs|
    instance_variable_set( "@#{name}", rhs )
  end
end