class Rack::Lint::InputWrapper

def rewind(*args)

# if the underlying input stream is not rewindable.
# developers must buffer the input data into some rewindable object
# that is, it may not be a pipe or a socket. Therefore, handler
# stream back to the beginning. It must not raise Errno::ESPIPE:
# * +rewind+ must be called without arguments. It rewinds the input
def rewind(*args)
  raise LintError, "rack.input#rewind called with arguments" unless args.size == 0
  begin
    @input.rewind
    true
  rescue Errno::ESPIPE
    raise LintError, "rack.input#rewind raised Errno::ESPIPE"
  end
end