Sha256: 25aebf40ee97de9b80d838b5e37a88d87acaa7e133a3240fdf532e3764bd4de5

Contents?: true

Size: 1.33 KB

Versions: 25

Compression:

Stored size: 1.33 KB

Contents

class Kumogata::Utils
  class << self
    def camelize(str)
      str.to_s.split(/[-_]/).map {|i|
        i[0, 1].upcase + i[1..-1].downcase
      }.join
    end

    def get_user_host
      user = `whoami`.strip rescue ''
      host = `hostname`.strip rescue ''
      user_host = [user, host].select {|i| not i.empty? }.join('-')
      user_host.empty? ? nil : user_host
    end

    def random_param_name(n)
      a_zA_Z0_9 = (('a'..'z').to_a + ('A'..'Z').to_a + ('0'..'9').to_a)
      a_zA_Z0_9.sample(n).join
    end

    def filter_backtrace(backtrace)
      filter_path = ['(eval)']

      if defined?(Gem)
        filter_path.concat(Gem.path)
        filter_path << Gem.bindir
      end

      RbConfig::CONFIG.select {|k, v|
        k.to_s =~ /libdir/
      }.each {|k, v| filter_path << v }

      filter_path = filter_path.map {|i| /\A#{Regexp.escape(i)}/ }

      backtrace.select do |path|
        path = path.split(':', 2).first
        not filter_path.any? {|i| i =~ path }
      end
    end

    def stringify(obj)
      case obj
      when Array
        obj.map {|i| stringify(i) }
      when Hash
        hash = {}
        obj.each {|k, v| hash[stringify(k)] = stringify(v) }
        hash
      else
        obj.to_s
      end
    end
  end # of class methods
end

module Kumogata
  ENCRYPTION_PASSWORD = Kumogata::Utils.random_param_name(16)
end

Version data entries

25 entries across 25 versions & 1 rubygems

Version Path
kumogata-0.5.12 lib/kumogata/utils.rb
kumogata-0.5.11 lib/kumogata/utils.rb
kumogata-0.5.10 lib/kumogata/utils.rb
kumogata-0.5.9 lib/kumogata/utils.rb
kumogata-0.5.8 lib/kumogata/utils.rb
kumogata-0.5.7 lib/kumogata/utils.rb
kumogata-0.5.6 lib/kumogata/utils.rb
kumogata-0.5.5 lib/kumogata/utils.rb
kumogata-0.5.4 lib/kumogata/utils.rb
kumogata-0.5.3 lib/kumogata/utils.rb
kumogata-0.5.2 lib/kumogata/utils.rb
kumogata-0.5.2.beta2 lib/kumogata/utils.rb
kumogata-0.5.2.beta lib/kumogata/utils.rb
kumogata-0.5.1 lib/kumogata/utils.rb
kumogata-0.5.0 lib/kumogata/utils.rb
kumogata-0.4.19 lib/kumogata/utils.rb
kumogata-0.4.18 lib/kumogata/utils.rb
kumogata-0.4.17 lib/kumogata/utils.rb
kumogata-0.4.16 lib/kumogata/utils.rb
kumogata-0.4.15 lib/kumogata/utils.rb