Server : nginx/1.20.1 System : Linux ccpf-production-2021 5.4.0-148-generic #165-Ubuntu SMP Tue Apr 18 08:53:12 UTC 2023 x86_64 User : forge ( 1000) PHP Version : 7.4.21 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, Directory : /usr/lib/node_modules/npm/node_modules/flush-write-stream/ |
var stream = require('readable-stream')
var inherits = require('inherits')
var SIGNAL_FLUSH =(Buffer.from && Buffer.from !== Uint8Array.from)
? Buffer.from([0])
: new Buffer([0])
module.exports = WriteStream
function WriteStream (opts, write, flush) {
if (!(this instanceof WriteStream)) return new WriteStream(opts, write, flush)
if (typeof opts === 'function') {
flush = write
write = opts
opts = {}
}
stream.Writable.call(this, opts)
this.destroyed = false
this._worker = write || null
this._flush = flush || null
}
inherits(WriteStream, stream.Writable)
WriteStream.obj = function (opts, worker, flush) {
if (typeof opts === 'function') return WriteStream.obj(null, opts, worker)
if (!opts) opts = {}
opts.objectMode = true
return new WriteStream(opts, worker, flush)
}
WriteStream.prototype._write = function (data, enc, cb) {
if (SIGNAL_FLUSH === data) this._flush(cb)
else this._worker(data, enc, cb)
}
WriteStream.prototype.end = function (data, enc, cb) {
if (!this._flush) return stream.Writable.prototype.end.apply(this, arguments)
if (typeof data === 'function') return this.end(null, null, data)
if (typeof enc === 'function') return this.end(data, null, enc)
if (data) this.write(data)
if (!this._writableState.ending) this.write(SIGNAL_FLUSH)
return stream.Writable.prototype.end.call(this, cb)
}
WriteStream.prototype.destroy = function (err) {
if (this.destroyed) return
this.destroyed = true
if (err) this.emit('error', err)
this.emit('close')
}