Sha256: 35f147463dde77fa87e6ba623f97ce27cddf409d808d55c218be83133fed2104

Contents?: true

Size: 445 Bytes

Versions: 11

Compression:

Stored size: 445 Bytes

Contents

module Nori
  module CoreExt
    module String

      # Returns the String in snake_case.
      def snakecase
        str = dup
        str.gsub! /::/, '/'
        str.gsub! /([A-Z]+)([A-Z][a-z])/, '\1_\2'
        str.gsub! /([a-z\d])([A-Z])/, '\1_\2'
        str.tr! ".", "_"
        str.tr! "-", "_"
        str.downcase!
        str
      end unless method_defined?(:snakecase)

    end
  end
end

String.send :include, Nori::CoreExt::String

Version data entries

11 entries across 11 versions & 3 rubygems

Version Path
vagrant-tiktalik-0.0.3 vendor/bundle/ruby/2.0.0/gems/nori-1.1.5/lib/nori/core_ext/string.rb
nori-1.1.5 lib/nori/core_ext/string.rb
nori-1.1.4 lib/nori/core_ext/string.rb
nori-1.0.3 lib/nori/core_ext/string.rb
nori-1.1.3 lib/nori/core_ext/string.rb
nori-1.1.2 lib/nori/core_ext/string.rb
nori-1.1.0 lib/nori/core_ext/string.rb
nori-1.0.2 lib/nori/core_ext/string.rb
search_biomodel-1.0.0 search_biomodel/ruby/1.8/gems/nori-1.0.1/lib/nori/core_ext/string.rb
nori-1.0.1 lib/nori/core_ext/string.rb
nori-1.0.0 lib/nori/core_ext/string.rb