Sha256: 3e79e04abc1338e236473e96965ac4f9a5615261daa761e64a2e77c4312636fa

Contents?: true

Size: 843 Bytes

Versions: 13

Compression:

Stored size: 843 Bytes

Contents

class Cistern::String
  def self.camelize(string)
    string.gsub(/[A-Z]+/) { |w| "_#{w.downcase}" }.gsub(/^_/, '')
  end

  # File activesupport/lib/active_support/inflector/methods.rb, line 90
  def self.underscore(camel_cased_word)
    word = camel_cased_word.to_s.gsub('::', '/')
    # word.gsub!(/(?:([A-Za-z\d])|^)(#{inflections.acronym_regex})(?=\b|[^a-z])/) { "#{$1}#{$1 && '_'}#{$2.downcase}" }
    word.gsub!(/([A-Z\d]+)([A-Z][a-z])/, '\1_\2')
    word.gsub!(/([a-z\d])([A-Z])/, '\1_\2')
    word.tr!('-', '_')
    word.downcase!
    word
  end

  # File activesupport/lib/active_support/inflector/methods.rb, line 168
  def self.demodulize(path)
    path = path.to_s
    if i = path.rindex('::')
      path[(i + 2)..-1]
    else
      path
    end
  end

  # @todo omg so bad
  def self.pluralize(string)
    "#{string}s"
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
cistern-2.8.0 lib/cistern/string.rb
cistern-2.7.2 lib/cistern/string.rb
cistern-2.7.1 lib/cistern/string.rb
cistern-2.7.0 lib/cistern/string.rb
cistern-2.6.0 lib/cistern/string.rb
cistern-2.5.0 lib/cistern/string.rb
cistern-2.4.1 lib/cistern/string.rb
cistern-2.4.0 lib/cistern/string.rb
cistern-2.3.0 lib/cistern/string.rb
cistern-2.2.7 lib/cistern/string.rb
cistern-2.2.6 lib/cistern/string.rb
cistern-2.2.5 lib/cistern/string.rb
cistern-2.2.4 lib/cistern/string.rb