Class: String

Inherits:
Object
  • Object
show all
Defined in:
lib/ios_analytics_cli/serializers/base.rb

Overview

String extensions - will be moved somewhere else. Somewhere..

Instance Method Summary collapse

Instance Method Details

#camel_caseObject

Converts a string to camelCase.



28
29
30
31
32
33
34
35
# File 'lib/ios_analytics_cli/serializers/base.rb', line 28

def camel_case
  gsub(' ', '_')
    .gsub('-', '_')
    .snake_case
    .split('_')
    .inject([]) { |buffer, e| buffer.push(buffer.empty? ? e : e.capitalize) }
    .join
end

#pascal_caseObject

Converts a string to PascalCase.



38
39
40
41
42
# File 'lib/ios_analytics_cli/serializers/base.rb', line 38

def pascal_case
  val = camel_case
  val[0] = val[0].capitalize
  val
end

#snake_caseObject

Converts a string to snake_case.



19
20
21
22
23
24
25
# File 'lib/ios_analytics_cli/serializers/base.rb', line 19

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