Module: Familia::Refinements::StylizeWordsMethods

Defined in:
lib/familia/refinements/stylize_words.rb

Overview

Core string transformation methods that can be tested directly

Instance Method Summary collapse

Instance Method Details

#camelizeObject

Convert to camelCase



22
23
24
# File 'lib/familia/refinements/stylize_words.rb', line 22

def camelize
  _ize(:lower)
end

#demodularizeObject

'Models::Participants' -> 'Participants'



10
11
12
# File 'lib/familia/refinements/stylize_words.rb', line 10

def demodularize
  split('::').last
end

#pascalizeObject

Convert to PascalCase



27
28
29
# File 'lib/familia/refinements/stylize_words.rb', line 27

def pascalize
  _ize(:upper)
end

#snake_caseObject

Convert to snake_case from PascalCase/camelCase



15
16
17
18
19
# File 'lib/familia/refinements/stylize_words.rb', line 15

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