Class: Module

Inherits:
Object show all
Defined in:
lib/sinatra/core_ext/module.rb

Instance Method Summary collapse

Instance Method Details

#attr_with_default(sym, default) ⇒ Object



2
3
4
5
6
7
8
9
10
# File 'lib/sinatra/core_ext/module.rb', line 2

def attr_with_default(sym, default)
  define_method "#{sym}=" do |obj|
    instance_variable_set("@#{sym}", obj)
  end

  define_method sym do 
    instance_variable_get("@#{sym}") || default
  end
end