module Skein::Support
Public Class Methods
arrayify(value)
click to toggle source
# File lib/skein/support.rb, line 18 def self.arrayify(value) case (value) when nil nil when Array value else [ value ] end end
hash_format(hash, width: nil)
click to toggle source
# File lib/skein/support.rb, line 29 def self.hash_format(hash, width: nil) hash = hash.to_h width ||= hash.keys.map(&:length).sort[-1].to_i + 1 template = "%%-%ds %%s" % [ width ] hash.map do |pair| template % pair end end
hostname()
click to toggle source
process_id()
click to toggle source
# File lib/skein/support.rb, line 14 def self.process_id Process.pid end
process_name()
click to toggle source
# File lib/skein/support.rb, line 10 def self.process_name $0.split(/\s/).first.split('/').last.sub(/\.rb\z/, '') end
symbolize_keys(hash)
click to toggle source
# File lib/skein/support.rb, line 41 def self.symbolize_keys(hash) case (hash) when Hash Hash[ hash.map do |k,v| [ k.to_s.to_sym, case (v) when Hash symbolize_keys(v) when Array v.map { |e| symbolize_keys(e) } else v end ] end ] when Array hash.map do |h| symbolize_keys(h) end else hash end end