Skip to content

Commit

Permalink
Also accepts Symbols and Classes by calling .to_s on the word supplied
Browse files Browse the repository at this point in the history
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@366 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
  • Loading branch information
dhh committed Jan 10, 2005
1 parent 38e55ba commit d239ac4
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions activesupport/lib/inflector.rb
Expand Up @@ -4,31 +4,31 @@ module Inflector
extend self extend self


def pluralize(word) def pluralize(word)
result = word.dup result = word.to_s.dup
plural_rules.each do |(rule, replacement)| plural_rules.each do |(rule, replacement)|
break if result.gsub!(rule, replacement) break if result.gsub!(rule, replacement)
end end
return result return result
end end


def singularize(word) def singularize(word)
result = word.dup result = word.to_s.dup
singular_rules.each do |(rule, replacement)| singular_rules.each do |(rule, replacement)|
break if result.gsub!(rule, replacement) break if result.gsub!(rule, replacement)
end end
return result return result
end end


def camelize(lower_case_and_underscored_word) def camelize(lower_case_and_underscored_word)
lower_case_and_underscored_word.gsub(/(^|_)(.)/){$2.upcase} lower_case_and_underscored_word.to_s.gsub(/(^|_)(.)/){$2.upcase}
end end


def underscore(camel_cased_word) def underscore(camel_cased_word)
camel_cased_word.gsub(/([A-Z]+)([A-Z])/,'\1_\2').gsub(/([a-z])([A-Z])/,'\1_\2').downcase camel_cased_word.to_s.gsub(/([A-Z]+)([A-Z])/,'\1_\2').gsub(/([a-z])([A-Z])/,'\1_\2').downcase
end end


def demodulize(class_name_in_module) def demodulize(class_name_in_module)
class_name_in_module.gsub(/^.*::/, '') class_name_in_module.to_s.gsub(/^.*::/, '')
end end


def tableize(class_name) def tableize(class_name)
Expand Down

0 comments on commit d239ac4

Please sign in to comment.