Module: Tap::Signals

Extended by:
ModuleMethods
Included in:
App, App::Api
Defined in:
lib/tap/signals.rb,
lib/tap/signals/help.rb,
lib/tap/signals/signal.rb,
lib/tap/signals/class_methods.rb,
lib/tap/signals/module_methods.rb

Overview

Signals is a module providing signaling capbilities for objects. Signals are effectively bound to methods with pre-processing that allows inputs from the command line (ie an ARGV) or from interfaces like HTTP that commonly produce a parameters hash.

Defined Under Namespace

Modules: ClassMethods, ModuleMethods Classes: Help, Signal

Instance Method Summary collapse

Methods included from ModuleMethods

included

Instance Method Details

#signal(sig, &block) ⇒ Object



11
12
13
14
15
16
17
18
# File 'lib/tap/signals.rb', line 11

def signal(sig, &block)
  sig = sig.to_s
  unless signal = self.class.signals[sig]
    raise "unknown signal: #{sig} (#{self.class})"
  end
  
  signal.new(self, &block)
end

#signal?(sig) ⇒ Boolean

Returns:

  • (Boolean)


20
21
22
23
# File 'lib/tap/signals.rb', line 20

def signal?(sig)
  sig = sig.to_s
  self.class.signals.has_key?(sig.to_s)
end