Class: String

Inherits:
Object
  • Object
show all
Defined in:
lib/infostrada/core_ext/string.rb

Instance Method Summary collapse

Instance Method Details

#info_camelizeObject

Weird name so inclusion with active support doesn’t break things



14
15
16
17
# File 'lib/infostrada/core_ext/string.rb', line 14

def info_camelize
  result = self.gsub(/(?<=_|^)(\w)/){$1.upcase}
  result.gsub(/(?<=_|^)(\w)/){$1.upcase}.gsub(/(?:_)(\w)/,'\1')
end

#info_snake_caseObject

This is a version of the method stolen from railties and it converts ‘Text-LikeThis’ to ‘text_like_this’.



4
5
6
7
8
9
10
# File 'lib/infostrada/core_ext/string.rb', line 4

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

#info_underscoreObject

Weird name so inclusion with active support doesn’t break things



21
22
23
24
25
26
27
# File 'lib/infostrada/core_ext/string.rb', line 21

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