class RedisClient::Pipeline

def _coerce!(results)

def _coerce!(results)
  return results unless results
  @blocks&.each_with_index do |block, index|
    if block
      results[index] = block.call(results[index])
    end
  end
  results
end

def _empty?

def _empty?
  @commands.empty?
end

def _timeouts

def _timeouts
  @timeouts
end

def blocking_call(timeout, *command, **kwargs, &block)

def blocking_call(timeout, *command, **kwargs, &block)
  command = @command_builder.generate(command, kwargs)
  @timeouts ||= []
  @timeouts[@commands.size] = timeout
  (@blocks ||= [])[@commands.size] = block if block_given?
  @commands << command
  nil
end

def blocking_call_v(timeout, command, &block)

def blocking_call_v(timeout, command, &block)
  command = @command_builder.generate(command)
  @timeouts ||= []
  @timeouts[@commands.size] = timeout
  (@blocks ||= [])[@commands.size] = block if block_given?
  @commands << command
  nil
end

def initialize(_command_builder)

def initialize(_command_builder)
  super
  @timeouts = nil
end