Module: ASIR::Initialization

Included in:
Channel, Coder, Invoker, ThreadPool, ThreadPool::Work, ThreadPool::Worker, Transport
Defined in:
lib/asir/initialization.rb

Overview

!SLIDE Object Initialization

Support initialization by Hash.

E.g.:

Foo.new(:bar => 1, :baz => 2)

->

obj = Foo.new; obj.bar = 1; obj.baz = 2; obj

Instance Method Summary collapse

Instance Method Details

#initialize(opts = nil) ⇒ Object



13
14
15
16
17
18
19
20
# File 'lib/asir/initialization.rb', line 13

def initialize opts = nil
  opts ||= EMPTY_HASH
  initialize_before_opts if respond_to? :initialize_before_opts
  opts.each do | k, v |
    send(:"#{k}=", v)
  end
  initialize_after_opts if respond_to? :initialize_after_opts
end