Class: String

Inherits:
Object show all
Defined in:
lib/rapid_runty/util.rb

Overview

Extend the Ruby String class

Instance Method Summary collapse

Instance Method Details

#camel_caseObject

Returns the CamelCase version of a word

Example:

"index_controller".camel_case = "IndexController"


23
24
25
26
# File 'lib/rapid_runty/util.rb', line 23

def camel_case
  return self if self !~ /_/ && self =~ /[A-Z]+.*/
  split('_').map(&:capitalize).join
end

#snake_caseObject

Returns the snake_case version of a word

Example:

"IndexController".snake_case = "index_controller"


9
10
11
12
13
14
15
16
# 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