constructor(raw_response) {
        this._raw_response = raw_response;

        // Bind the abort handler as required by uWebsockets.js for each uWS.HttpResponse to allow for async processing
        raw_response.onAborted(() => {
            // If this request has already been completed then this request cannot be aborted again
            if (this.completed) return;
            this.completed = true;

            // Decrement the pending request count
            this.route.app._resolve_pending_request();

            // Stop the body parser from accepting any more data
            this._wrapped_request._body_parser_stop();

            // Ensure we have a writable/emitter instance to emit over
            if (this._writable) {
                // Emit an 'abort' event to signify that the client aborted the request
                this.emit('abort', this._wrapped_request, this);

                // Emit an 'close' event to signify that the client has disconnected
                this.emit('close', this._wrapped_request, this);
            }
        });
    }
Creates a new HyperExpress response instance that wraps a uWS.HttpResponse instance.

@param {import('uWebSockets.js').HttpResponse} raw_response