Module: With
- Defined in:
- lib/ruby-with.rb
Instance Method Summary collapse
Instance Method Details
#with(context, start_set_hash = {}, &block) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/ruby-with.rb', line 5 def with context, start_set_hash={}, &block context.instance_eval do def set(hash) hash.map {|k,v| self.__send__("#{k}=", v) } end def <=(hash) set(hash) end end context.send :set, start_set_hash context.instance_exec(self, &block) class << context remove_method :set if method_defined? :set remove_method :<= if method_defined? :<= end end |