lib/theme_check/string_helpers.rb
# Makes an underscored, lowercase form from the expression in the string.
# Base on ActiveSupport's
#
# Changes '::' to '/' to convert namespaces to paths.
#
#   underscore('ActiveModel')         # => "active_model"
#   underscore('ActiveModel::Errors') # => "active_model/errors"
#
# As a rule of thumb you can think of +underscore+ as the inverse of
# #camelize, though there are cases where that does not hold:
#
#   camelize(underscore('SSLError'))  # => "SslError"
Makes an underscored, lowercase form from the expression in the string.





As a rule of thumb you can think of +underscore+ as the inverse of
camelize, though there are cases where that does not hold.


Makes an underscored lowercase form from the expression in the string . As a rule of thumb you can think of + underscore + as the inverse of camelize though there are cases where that does not hold .
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
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
Makes an underscored, lowercase form from the expression in the string.
Makes an underscored lowercase form from the expression in the string .
camel_cased_word