module CaseTransform2

Constants

VERSION

Public Class Methods

camel(value) click to toggle source

Transforms values to UpperCamelCase or PascalCase.

@example

"some_key" => "SomeKey",
# File lib/case_transform2.rb, line 13
def camel(value)
  case value
  when Array
    value.map { |item| camel(item) }
  when Hash
    hash_ext.deep_transform_keys!(value) { |key| camel(key) }
  when Symbol
    camel(value.to_s).to_sym
  when String
    camel_cache[value] ||= string_ext.camelize(string_ext.underscore(value))
  else
    value
  end
end
camel_lower(value) click to toggle source

Transforms values to camelCase.

@example

"some_key" => "someKey",
# File lib/case_transform2.rb, line 32
def camel_lower(value)
  case value
  when Array
    value.map { |item| camel_lower(item) }
  when Hash
    hash_ext.deep_transform_keys!(value) { |key| camel_lower(key) }
  when Symbol
    camel_lower(value.to_s).to_sym
  when String
    camel_lower_cache[value] ||= string_ext.camelize(string_ext.underscore(value), :lower)
  else
    value
  end
end
dash(value) click to toggle source

Transforms values to dashed-case.

@example

"some_key" => "some-key",
# File lib/case_transform2.rb, line 51
def dash(value)
  case value
  when Array
    value.map { |item| dash(item) }
  when Hash
    hash_ext.deep_transform_keys!(value) { |key| dash(key) }
  when Symbol
    dash(value.to_s).to_sym
  when String
    dash_cache[value] ||= string_ext.dasherize(string_ext.underscore(value))
  else
    value
  end
end
underscore(value) click to toggle source

Transforms values to underscore_case.

@example

"some-key" => "some_key",
# File lib/case_transform2.rb, line 70
def underscore(value)
  case value
  when Array
    value.map { |item| underscore(item) }
  when Hash
    hash_ext.deep_transform_keys!(value) { |key| underscore(key) }
  when Symbol
    underscore(value.to_s).to_sym
  when String
    underscore_cache[value] ||= string_ext.underscore(value)
  else
    value
  end
end

Private Class Methods

camel_cache() click to toggle source
# File lib/case_transform2.rb, line 95
def camel_cache
  @camel_cache ||= {}
end
camel_lower_cache() click to toggle source
# File lib/case_transform2.rb, line 99
def camel_lower_cache
  @camel_lower_cache ||= {}
end
dash_cache() click to toggle source
# File lib/case_transform2.rb, line 103
def dash_cache
  @dash_cache ||= {}
end
hash_ext() click to toggle source
# File lib/case_transform2.rb, line 91
def hash_ext
  @hash_ext ||= CaseTransform2::HashExt.new
end
string_ext() click to toggle source
# File lib/case_transform2.rb, line 87
def string_ext
  @string_ext ||= CaseTransform2::StringExt.new
end
underscore_cache() click to toggle source
# File lib/case_transform2.rb, line 107
def underscore_cache
  @underscore_cache ||= {}
end