module Paysafe::Refinements::CamelCase

Public Instance Methods

camel_case(string) click to toggle source
# File lib/paysafe/refinements/camel_case.rb, line 30
def camel_case(string)
  @__memoize_camelcase ||= {}
  return @__memoize_camelcase[string] if @__memoize_camelcase[string]
  @__memoize_camelcase[string] = string.gsub(/(?:_+)([a-z])/) { $1.upcase }
  @__memoize_camelcase[string]
end
camel_case_key(key) click to toggle source
# File lib/paysafe/refinements/camel_case.rb, line 19
def camel_case_key(key)
  case key
  when Symbol
    camel_case(key.to_s).to_sym
  when String
    camel_case(key).to_sym
  else
    key
  end
end
to_camel_case(data = self) click to toggle source
# File lib/paysafe/refinements/camel_case.rb, line 6
def to_camel_case(data = self)
  case data
  when Array
    data.map { |value| to_camel_case(value) }
  when Hash
    data.map { |key, value| [camel_case_key(key), to_camel_case(value)] }.to_h
  else
    data
  end
end