Sha256: 0845ad61e5584e3e4d135549d4047f9343ec0d61b3d4bf4b40a9aceed4a353aa
Contents?: true
Size: 729 Bytes
Versions: 4
Compression:
Stored size: 729 Bytes
Contents
# frozen_string_literal: true module BingAdsRubySdk module Postprocessors class Snakize def initialize(params) @params = params end def call process(@params) end private # NOTE: there is a potential for high memory usage here as we're using recursive method calling 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 def snakize(string) BingAdsRubySdk::StringUtils.snakize(string) end end end end
Version data entries
4 entries across 4 versions & 1 rubygems