# File lib/new_relic/agent/attribute_processing.rb, line 13
      def flatten_and_coerce(object, prefix = nil, result = {}, &blk)
        if object.is_a? Hash
          flatten_and_coerce_hash(object, prefix, result, &blk)
        elsif object.is_a? Array
          flatten_and_coerce_array(object, prefix, result, &blk)
        elsif prefix
          val = Coerce.scalar(object)
          if blk
            blk.call(prefix, val)
          elsif !val.nil?
            result[prefix] = val
          end
        else
          NewRelic::Agent.logger.warn "Unexpected object: #{object.inspect} with nil prefix passed to NewRelic::Agent::AttributeProcessing.flatten_and_coerce"
        end
        result
      end