class Rack::Lint::Wrapper

def call(stream)

#
# ==== Streaming Body
#
def call(stream)
  ## The Streaming Body must respond to +call+.
  raise LintError, "Streaming Body must respond to call" unless @body.respond_to?(:call)
  ## It must only be called once.
  raise LintError, "Response body must only be invoked once (#{@invoked})" unless @invoked.nil?
  ## It must not be called after being closed.
  raise LintError, "Response body is already closed" if @closed
  @invoked = :call
  ## It takes a +stream+ argument.
  ##
  ## The +stream+ argument must implement:
  ## <tt>read, write, <<, flush, close, close_read, close_write, closed?</tt>
  ##
  @body.call(StreamWrapper.new(stream))
end