module ActionPush::Util

Public Instance Methods

underscore(camel_cased_word) click to toggle source

@copy apidock.com/rails/ActiveSupport/Inflector/underscore

# File lib/action_push/util.rb, line 8
def underscore(camel_cased_word)
  return camel_cased_word unless /[A-Z-]|::/.match?(camel_cased_word)

  word = camel_cased_word.to_s.gsub('::', '/')
  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