Module: HttpClientGenerator::Inflector

Defined in:
lib/http_client_generator/inflector.rb

Overview

:nodoc:

Class Method Summary collapse

Class Method Details

.camelize_lower(value) ⇒ Object



7
8
9
10
11
# File 'lib/http_client_generator/inflector.rb', line 7

def camelize_lower(value)
  value.to_s.split('_').then do |parts|
    [parts.first, *parts.drop(1).map(&:capitalize)].join
  end
end

.underscore(value) ⇒ Object



13
14
15
16
17
18
19
20
# File 'lib/http_client_generator/inflector.rb', line 13

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