class BingAdsRubySdk::Postprocessors::Snakize
Public Class Methods
new(params)
click to toggle source
# File lib/bing_ads_ruby_sdk/postprocessors/snakize.rb, line 7 def initialize(params) @params = params end
Public Instance Methods
call()
click to toggle source
# File lib/bing_ads_ruby_sdk/postprocessors/snakize.rb, line 11 def call process(@params) end
Private Instance Methods
process(obj)
click to toggle source
NOTE: there is a potential for high memory usage here as we're using recursive method calling
# File lib/bing_ads_ruby_sdk/postprocessors/snakize.rb, line 18 def process(obj) return obj unless obj.is_a?(Hash) obj.each_with_object({}) do |(k, v), h| case v when Hash then v = process(v) when Array then v = v.map {|elt| process(elt) } end h[snakize(k)] = v end end
snakize(string)
click to toggle source
# File lib/bing_ads_ruby_sdk/postprocessors/snakize.rb, line 30 def snakize(string) BingAdsRubySdk::StringUtils.snakize(string) end