Sha256: 8319717e76a768b96b8855eb1e18163258aa6da3b16cc7c99b79ea321bfbf165
Contents?: true
Size: 929 Bytes
Versions: 1
Compression:
Stored size: 929 Bytes
Contents
require 'tap/signals' module Tap module Signals class Help < Signal def call(args) argv = convert_to_array(args, ['sig']) argv.empty? ? list : desc(*argv) end def list signals = obj.class.signals width = signals.keys.collect {|key| key.length }.max lines = [] signals.each_pair do |key, signal| next if key.empty? desc = signal.desc.to_s desc = " # #{desc}" unless desc.empty? lines << " /#{key.ljust(width)}#{desc}" end "signals: (#{obj.class})\n#{lines.join("\n")}" end def desc(sig) clas = obj.signal(sig).class if clas.respond_to?(:desc) desc = clas.desc "#{clas} -- #{desc.to_s}\n#{desc.wrap}" else "#{clas} -- no help available" end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
tap-0.19.0 | lib/tap/signals/help.rb |