class String

Extend the Ruby String class

Public Instance Methods

camel_case() click to toggle source

Returns the CamelCase version of a word

Example:

"index_controller".camel_case = "IndexController"
# File lib/rapid_runty/util.rb, line 23
def camel_case
  return self if self !~ /_/ && self =~ /[A-Z]+.*/
  split('_').map(&:capitalize).join
end
snake_case() click to toggle source

Returns the snake_case version of a word

Example:

"IndexController".snake_case = "index_controller"
# File lib/rapid_runty/util.rb, line 9
def snake_case
  gsub!(/::/, '/')
  gsub!(/([A-Z]+)([A-Z][a-z])/, '\1_\2')
  gsub!(/([a-z\d])([A-Z])/, '\1_\2')
  tr!('-', '_')
  downcase!
  self
end