Class: String

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

Instance Method Summary collapse

Instance Method Details

#to_camel_caseObject



11
12
13
14
# File 'lib/mgt/util.rb', line 11

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

#to_constantObject



16
17
18
# File 'lib/mgt/util.rb', line 16

def to_constant
  Object.const_get(self)
end

#to_pluralObject



20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/mgt/util.rb', line 20

def to_plural
  gsub!(/([^aeiouy]|qu)y$/i, '\1ies')
  gsub!(/(ss|z|ch|sh|x)$/i, '\1es')
  gsub!(/(is)$/i, "es")
  gsub!(/(f|fe)$/i, "ves")
  gsub!(/(ex|ix)$/i, "ices")
  gsub!(/(a)$/i, "ae")
  gsub!(/(um|on)$/i, "a")
  gsub!(/(us)$/i, "i")
  gsub!(/(eau)$/i, "eaux")
  gsub!(/([^saeix])$/i, '\1s')
  self
end

#to_snake_caseObject



2
3
4
5
6
7
8
9
# File 'lib/mgt/util.rb', line 2

def to_snake_case
  gsub!("::", "/")
  gsub!(/([A-Z]+)([A-Z][a-z])/, '\1_\2')
  gsub!(/([a-z\d])([A-Z])/, '\1_\2')
  tr!("-", "_")
  downcase!
  self
end