Module: ProcessShared::OpenWithSelf

Included in:
BinarySemaphore, Mach::Semaphore, Mutex, Posix::Semaphore, Posix::SharedMemory
Defined in:
lib/process_shared/open_with_self.rb

Instance Method Summary collapse

Instance Method Details

#open(*args, &block) ⇒ Object

Like #new but if the optional code block is given, it will be passed the new object as an argument, and the object will automatically be closed (by invoking +close+) when the block terminates. In this instance, value of the block is returned.



7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/process_shared/open_with_self.rb', line 7

def open(*args, &block)
  obj = new(*args)
  if block_given?
    begin
      yield obj
    ensure
      obj.close
    end
  else
    obj
  end
end