lib: remove inherits()
usage
This switches all `util.inherits()` calls to use `Object.setPrototypeOf()` instead. In fact, `util.inherits()` is mainly a small wrapper around exactly this function while adding the `_super` property on the object as well. Refs: #24395 PR-URL: https://github.com/nodejs/node/pull/24755 Refs: https://github.com/nodejs/node/issues/24395 Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
This commit is contained in:
parent
6ccc80c82a
commit
dcc82b37b6
@ -105,8 +105,7 @@ function Agent(options) {
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
util.inherits(Agent, EventEmitter);
|
||||
Object.setPrototypeOf(Agent.prototype, EventEmitter.prototype);
|
||||
|
||||
Agent.defaultMaxSockets = Infinity;
|
||||
|
||||
|
@ -279,9 +279,7 @@ function ClientRequest(input, options, cb) {
|
||||
|
||||
this._deferToConnect(null, null, () => this._flush());
|
||||
}
|
||||
|
||||
util.inherits(ClientRequest, OutgoingMessage);
|
||||
|
||||
Object.setPrototypeOf(ClientRequest.prototype, OutgoingMessage.prototype);
|
||||
|
||||
ClientRequest.prototype._finish = function _finish() {
|
||||
DTRACE_HTTP_CLIENT_REQUEST(this, this.connection);
|
||||
|
@ -21,7 +21,6 @@
|
||||
|
||||
'use strict';
|
||||
|
||||
const util = require('util');
|
||||
const Stream = require('stream');
|
||||
|
||||
function readStart(socket) {
|
||||
@ -72,8 +71,7 @@ function IncomingMessage(socket) {
|
||||
// read by the user, so there's no point continuing to handle it.
|
||||
this._dumped = false;
|
||||
}
|
||||
util.inherits(IncomingMessage, Stream.Readable);
|
||||
|
||||
Object.setPrototypeOf(IncomingMessage.prototype, Stream.Readable.prototype);
|
||||
|
||||
IncomingMessage.prototype.setTimeout = function setTimeout(msecs, callback) {
|
||||
if (callback)
|
||||
|
@ -106,7 +106,7 @@ function OutgoingMessage() {
|
||||
|
||||
this._onPendingData = noopPendingOutput;
|
||||
}
|
||||
util.inherits(OutgoingMessage, Stream);
|
||||
Object.setPrototypeOf(OutgoingMessage.prototype, Stream.prototype);
|
||||
|
||||
|
||||
Object.defineProperty(OutgoingMessage.prototype, '_headers', {
|
||||
|
@ -137,7 +137,7 @@ function ServerResponse(req) {
|
||||
this.shouldKeepAlive = false;
|
||||
}
|
||||
}
|
||||
util.inherits(ServerResponse, OutgoingMessage);
|
||||
Object.setPrototypeOf(ServerResponse.prototype, OutgoingMessage.prototype);
|
||||
|
||||
ServerResponse.prototype._finish = function _finish() {
|
||||
DTRACE_HTTP_SERVER_RESPONSE(this.connection);
|
||||
|
@ -28,11 +28,10 @@
|
||||
|
||||
module.exports = Duplex;
|
||||
|
||||
const util = require('util');
|
||||
const Readable = require('_stream_readable');
|
||||
const Writable = require('_stream_writable');
|
||||
|
||||
util.inherits(Duplex, Readable);
|
||||
Object.setPrototypeOf(Duplex.prototype, Readable.prototype);
|
||||
|
||||
{
|
||||
// Allow the keys array to be GC'ed.
|
||||
|
@ -28,8 +28,7 @@
|
||||
module.exports = PassThrough;
|
||||
|
||||
const Transform = require('_stream_transform');
|
||||
const util = require('util');
|
||||
util.inherits(PassThrough, Transform);
|
||||
Object.setPrototypeOf(PassThrough.prototype, Transform.prototype);
|
||||
|
||||
function PassThrough(options) {
|
||||
if (!(this instanceof PassThrough))
|
||||
|
@ -44,7 +44,7 @@ const { emitExperimentalWarning } = require('internal/util');
|
||||
let StringDecoder;
|
||||
let createReadableStreamAsyncIterator;
|
||||
|
||||
util.inherits(Readable, Stream);
|
||||
Object.setPrototypeOf(Readable.prototype, Stream.prototype);
|
||||
|
||||
const { errorOrDestroy } = destroyImpl;
|
||||
const kProxyEvents = ['error', 'close', 'destroy', 'pause', 'resume'];
|
||||
|
@ -71,8 +71,7 @@ const {
|
||||
ERR_TRANSFORM_WITH_LENGTH_0
|
||||
} = require('internal/errors').codes;
|
||||
const Duplex = require('_stream_duplex');
|
||||
const util = require('util');
|
||||
util.inherits(Transform, Duplex);
|
||||
Object.setPrototypeOf(Transform.prototype, Duplex.prototype);
|
||||
|
||||
|
||||
function afterTransform(er, data) {
|
||||
|
@ -28,7 +28,6 @@
|
||||
module.exports = Writable;
|
||||
Writable.WritableState = WritableState;
|
||||
|
||||
const util = require('util');
|
||||
const internalUtil = require('internal/util');
|
||||
const Stream = require('stream');
|
||||
const { Buffer } = require('buffer');
|
||||
@ -47,7 +46,7 @@ const {
|
||||
|
||||
const { errorOrDestroy } = destroyImpl;
|
||||
|
||||
util.inherits(Writable, Stream);
|
||||
Object.setPrototypeOf(Writable.prototype, Stream.prototype);
|
||||
|
||||
function nop() {}
|
||||
|
||||
|
@ -108,7 +108,7 @@ function Socket(type, listener) {
|
||||
sendBufferSize
|
||||
};
|
||||
}
|
||||
util.inherits(Socket, EventEmitter);
|
||||
Object.setPrototypeOf(Socket.prototype, EventEmitter.prototype);
|
||||
|
||||
|
||||
function createSocket(type, listener) {
|
||||
|
@ -149,7 +149,7 @@ function Agent(options) {
|
||||
list: []
|
||||
};
|
||||
}
|
||||
inherits(Agent, HttpAgent);
|
||||
Object.setPrototypeOf(Agent.prototype, HttpAgent.prototype);
|
||||
Agent.prototype.createConnection = createConnection;
|
||||
|
||||
Agent.prototype.getName = function getName(options) {
|
||||
|
@ -265,7 +265,7 @@ function ChildProcess() {
|
||||
maybeClose(this);
|
||||
};
|
||||
}
|
||||
util.inherits(ChildProcess, EventEmitter);
|
||||
Object.setPrototypeOf(ChildProcess.prototype, EventEmitter.prototype);
|
||||
|
||||
|
||||
function flushStdio(subprocess) {
|
||||
|
@ -1,6 +1,5 @@
|
||||
'use strict';
|
||||
const EventEmitter = require('events');
|
||||
const util = require('util');
|
||||
|
||||
module.exports = Worker;
|
||||
|
||||
@ -30,7 +29,7 @@ function Worker(options) {
|
||||
}
|
||||
}
|
||||
|
||||
util.inherits(Worker, EventEmitter);
|
||||
Object.setPrototypeOf(Worker.prototype, EventEmitter.prototype);
|
||||
|
||||
Worker.prototype.kill = function() {
|
||||
this.destroy.apply(this, arguments);
|
||||
|
@ -32,7 +32,6 @@ const {
|
||||
const assert = require('assert');
|
||||
const LazyTransform = require('internal/streams/lazy_transform');
|
||||
|
||||
const { inherits } = require('util');
|
||||
const { deprecate, normalizeEncoding } = require('internal/util');
|
||||
|
||||
// Lazy loaded for startup performance.
|
||||
@ -124,7 +123,7 @@ function Cipher(cipher, password, options) {
|
||||
createCipher.call(this, cipher, password, options, true);
|
||||
}
|
||||
|
||||
inherits(Cipher, LazyTransform);
|
||||
Object.setPrototypeOf(Cipher.prototype, LazyTransform.prototype);
|
||||
|
||||
Cipher.prototype._transform = function _transform(chunk, encoding, callback) {
|
||||
this.push(this[kHandle].update(chunk, encoding));
|
||||
@ -254,7 +253,7 @@ function addCipherPrototypeFunctions(constructor) {
|
||||
constructor.prototype.setAAD = Cipher.prototype.setAAD;
|
||||
}
|
||||
|
||||
inherits(Cipheriv, LazyTransform);
|
||||
Object.setPrototypeOf(Cipheriv.prototype, LazyTransform.prototype);
|
||||
addCipherPrototypeFunctions(Cipheriv);
|
||||
legacyNativeHandle(Cipheriv);
|
||||
|
||||
@ -265,7 +264,7 @@ function Decipher(cipher, password, options) {
|
||||
createCipher.call(this, cipher, password, options, false);
|
||||
}
|
||||
|
||||
inherits(Decipher, LazyTransform);
|
||||
Object.setPrototypeOf(Decipher.prototype, LazyTransform.prototype);
|
||||
addCipherPrototypeFunctions(Decipher);
|
||||
legacyNativeHandle(Decipher);
|
||||
|
||||
@ -277,7 +276,7 @@ function Decipheriv(cipher, key, iv, options) {
|
||||
createCipherWithIV.call(this, cipher, key, options, false, iv);
|
||||
}
|
||||
|
||||
inherits(Decipheriv, LazyTransform);
|
||||
Object.setPrototypeOf(Decipheriv.prototype, LazyTransform.prototype);
|
||||
addCipherPrototypeFunctions(Decipheriv);
|
||||
legacyNativeHandle(Decipheriv);
|
||||
|
||||
|
@ -21,7 +21,6 @@ const {
|
||||
ERR_INVALID_ARG_TYPE
|
||||
} = require('internal/errors').codes;
|
||||
const { validateString } = require('internal/validators');
|
||||
const { inherits } = require('util');
|
||||
const { normalizeEncoding } = require('internal/util');
|
||||
const { isArrayBufferView } = require('internal/util/types');
|
||||
const LazyTransform = require('internal/streams/lazy_transform');
|
||||
@ -39,7 +38,7 @@ function Hash(algorithm, options) {
|
||||
LazyTransform.call(this, options);
|
||||
}
|
||||
|
||||
inherits(Hash, LazyTransform);
|
||||
Object.setPrototypeOf(Hash.prototype, LazyTransform.prototype);
|
||||
|
||||
Hash.prototype._transform = function _transform(chunk, encoding, callback) {
|
||||
this[kHandle].update(chunk, encoding);
|
||||
@ -100,7 +99,7 @@ function Hmac(hmac, key, options) {
|
||||
LazyTransform.call(this, options);
|
||||
}
|
||||
|
||||
inherits(Hmac, LazyTransform);
|
||||
Object.setPrototypeOf(Hmac.prototype, LazyTransform.prototype);
|
||||
|
||||
Hmac.prototype.update = Hash.prototype.update;
|
||||
|
||||
|
@ -18,7 +18,6 @@ const {
|
||||
validateArrayBufferView,
|
||||
} = require('internal/crypto/util');
|
||||
const { Writable } = require('stream');
|
||||
const { inherits } = require('util');
|
||||
|
||||
function Sign(algorithm, options) {
|
||||
if (!(this instanceof Sign))
|
||||
@ -30,7 +29,7 @@ function Sign(algorithm, options) {
|
||||
Writable.call(this, options);
|
||||
}
|
||||
|
||||
inherits(Sign, Writable);
|
||||
Object.setPrototypeOf(Sign.prototype, Writable.prototype);
|
||||
|
||||
Sign.prototype._write = function _write(chunk, encoding, callback) {
|
||||
this.update(chunk, encoding);
|
||||
@ -101,7 +100,7 @@ function Verify(algorithm, options) {
|
||||
Writable.call(this, options);
|
||||
}
|
||||
|
||||
inherits(Verify, Writable);
|
||||
Object.setPrototypeOf(Verify.prototype, Writable.prototype);
|
||||
|
||||
Verify.prototype._write = Sign.prototype._write;
|
||||
Verify.prototype.update = Sign.prototype.update;
|
||||
|
@ -17,7 +17,6 @@ const {
|
||||
} = require('internal/fs/utils');
|
||||
const { Readable, Writable } = require('stream');
|
||||
const { toPathIfFileURL } = require('internal/url');
|
||||
const util = require('util');
|
||||
|
||||
const kMinPoolSpace = 128;
|
||||
|
||||
@ -119,7 +118,7 @@ function ReadStream(path, options) {
|
||||
}
|
||||
});
|
||||
}
|
||||
util.inherits(ReadStream, Readable);
|
||||
Object.setPrototypeOf(ReadStream.prototype, Readable.prototype);
|
||||
|
||||
ReadStream.prototype.open = function() {
|
||||
fs.open(this.path, this.flags, this.mode, (er, fd) => {
|
||||
@ -273,7 +272,7 @@ function WriteStream(path, options) {
|
||||
if (typeof this.fd !== 'number')
|
||||
this.open();
|
||||
}
|
||||
util.inherits(WriteStream, Writable);
|
||||
Object.setPrototypeOf(WriteStream.prototype, Writable.prototype);
|
||||
|
||||
WriteStream.prototype._final = function(callback) {
|
||||
if (this.autoClose) {
|
||||
|
@ -1,7 +1,6 @@
|
||||
'use strict';
|
||||
|
||||
const { Writable } = require('stream');
|
||||
const { inherits } = require('util');
|
||||
const { closeSync, writeSync } = require('fs');
|
||||
|
||||
function SyncWriteStream(fd, options) {
|
||||
@ -16,7 +15,7 @@ function SyncWriteStream(fd, options) {
|
||||
this.on('end', () => this._destroy());
|
||||
}
|
||||
|
||||
inherits(SyncWriteStream, Writable);
|
||||
Object.setPrototypeOf(SyncWriteStream.prototype, Writable.prototype);
|
||||
|
||||
SyncWriteStream.prototype._write = function(chunk, encoding, cb) {
|
||||
writeSync(this.fd, chunk, 0, chunk.length);
|
||||
|
@ -19,7 +19,6 @@ const {
|
||||
const { toNamespacedPath } = require('path');
|
||||
const { validateUint32 } = require('internal/validators');
|
||||
const { toPathIfFileURL } = require('internal/url');
|
||||
const util = require('util');
|
||||
const assert = require('assert');
|
||||
|
||||
const kOldStatus = Symbol('kOldStatus');
|
||||
@ -36,7 +35,7 @@ function StatWatcher(bigint) {
|
||||
this[kOldStatus] = -1;
|
||||
this[kUseBigint] = bigint;
|
||||
}
|
||||
util.inherits(StatWatcher, EventEmitter);
|
||||
Object.setPrototypeOf(StatWatcher.prototype, EventEmitter.prototype);
|
||||
|
||||
function onchange(newStatus, stats) {
|
||||
const self = this[owner_symbol];
|
||||
@ -132,7 +131,7 @@ function FSWatcher() {
|
||||
}
|
||||
};
|
||||
}
|
||||
util.inherits(FSWatcher, EventEmitter);
|
||||
Object.setPrototypeOf(FSWatcher.prototype, EventEmitter.prototype);
|
||||
|
||||
|
||||
// FIXME(joyeecheung): this method is not documented.
|
||||
|
@ -1,12 +1,11 @@
|
||||
'use strict';
|
||||
|
||||
const EE = require('events');
|
||||
const util = require('util');
|
||||
|
||||
function Stream() {
|
||||
EE.call(this);
|
||||
}
|
||||
util.inherits(Stream, EE);
|
||||
Object.setPrototypeOf(Stream.prototype, EE.prototype);
|
||||
|
||||
Stream.prototype.pipe = function(dest, options) {
|
||||
var source = this;
|
||||
|
@ -1145,7 +1145,7 @@ function Server(options, connectionListener) {
|
||||
this.allowHalfOpen = options.allowHalfOpen || false;
|
||||
this.pauseOnConnect = !!options.pauseOnConnect;
|
||||
}
|
||||
util.inherits(Server, EventEmitter);
|
||||
Object.setPrototypeOf(Server.prototype, EventEmitter.prototype);
|
||||
|
||||
|
||||
function toNumber(x) { return (x = Number(x)) >= 0 ? x : false; }
|
||||
|
@ -33,7 +33,6 @@ const {
|
||||
const { AsyncResource } = require('async_hooks');
|
||||
const L = require('internal/linkedlist');
|
||||
const kInspect = require('internal/util').customInspectSymbol;
|
||||
const { inherits } = require('util');
|
||||
|
||||
const kCallback = Symbol('callback');
|
||||
const kTypes = Symbol('types');
|
||||
@ -208,10 +207,8 @@ class PerformanceNodeTiming {
|
||||
};
|
||||
}
|
||||
}
|
||||
// Use this instead of Extends because we want PerformanceEntry in the
|
||||
// prototype chain but we do not want to use the PerformanceEntry
|
||||
// constructor for this.
|
||||
inherits(PerformanceNodeTiming, PerformanceEntry);
|
||||
Object.setPrototypeOf(
|
||||
PerformanceNodeTiming.prototype, PerformanceEntry.prototype);
|
||||
|
||||
const nodeTiming = new PerformanceNodeTiming();
|
||||
|
||||
|
@ -32,7 +32,7 @@ const {
|
||||
ERR_INVALID_CURSOR_POS,
|
||||
ERR_INVALID_OPT_VALUE
|
||||
} = require('internal/errors').codes;
|
||||
const { debug, inherits } = require('util');
|
||||
const { debug } = require('util');
|
||||
const { emitExperimentalWarning } = require('internal/util');
|
||||
const { Buffer } = require('buffer');
|
||||
const EventEmitter = require('events');
|
||||
@ -245,7 +245,7 @@ function Interface(input, output, completer, terminal) {
|
||||
input.resume();
|
||||
}
|
||||
|
||||
inherits(Interface, EventEmitter);
|
||||
Object.setPrototypeOf(Interface.prototype, EventEmitter.prototype);
|
||||
|
||||
Object.defineProperty(Interface.prototype, 'columns', {
|
||||
configurable: true,
|
||||
|
19
lib/repl.js
19
lib/repl.js
@ -53,7 +53,6 @@ const {
|
||||
} = require('internal/deps/acorn/dist/acorn');
|
||||
const internalUtil = require('internal/util');
|
||||
const util = require('util');
|
||||
const { inherits } = util;
|
||||
const Stream = require('stream');
|
||||
const vm = require('vm');
|
||||
const path = require('path');
|
||||
@ -669,9 +668,9 @@ function REPLServer(prompt,
|
||||
|
||||
// handle multiline history
|
||||
if (self[kBufferedCommandSymbol].length)
|
||||
REPLServer.super_.prototype.multilineHistory.call(self, false);
|
||||
Interface.prototype.multilineHistory.call(self, false);
|
||||
else {
|
||||
REPLServer.super_.prototype.multilineHistory.call(self, true);
|
||||
Interface.prototype.multilineHistory.call(self, true);
|
||||
}
|
||||
|
||||
// Clear buffer if no SyntaxErrors
|
||||
@ -753,7 +752,7 @@ function REPLServer(prompt,
|
||||
|
||||
self.displayPrompt();
|
||||
}
|
||||
inherits(REPLServer, Interface);
|
||||
Object.setPrototypeOf(REPLServer.prototype, Interface.prototype);
|
||||
exports.REPLServer = REPLServer;
|
||||
|
||||
exports.REPL_MODE_SLOPPY = Symbol('repl-sloppy');
|
||||
@ -894,18 +893,18 @@ REPLServer.prototype.displayPrompt = function(preserveCursor) {
|
||||
const len = this.lines.level.length ? this.lines.level.length - 1 : 0;
|
||||
const levelInd = '..'.repeat(len);
|
||||
prompt += levelInd + ' ';
|
||||
REPLServer.super_.prototype.undoHistory.call(this);
|
||||
Interface.prototype.undoHistory.call(this);
|
||||
}
|
||||
|
||||
// Do not overwrite `_initialPrompt` here
|
||||
REPLServer.super_.prototype.setPrompt.call(this, prompt);
|
||||
Interface.prototype.setPrompt.call(this, prompt);
|
||||
this.prompt(preserveCursor);
|
||||
};
|
||||
|
||||
// When invoked as an API method, overwrite _initialPrompt
|
||||
REPLServer.prototype.setPrompt = function setPrompt(prompt) {
|
||||
this._initialPrompt = prompt;
|
||||
REPLServer.super_.prototype.setPrompt.call(this, prompt);
|
||||
Interface.prototype.setPrompt.call(this, prompt);
|
||||
};
|
||||
|
||||
REPLServer.prototype.turnOffEditorMode = util.deprecate(
|
||||
@ -923,7 +922,7 @@ function ArrayStream() {
|
||||
this.emit('data', `${data[n]}\n`);
|
||||
};
|
||||
}
|
||||
util.inherits(ArrayStream, Stream);
|
||||
Object.setPrototypeOf(ArrayStream.prototype, Stream.prototype);
|
||||
ArrayStream.prototype.readable = true;
|
||||
ArrayStream.prototype.writable = true;
|
||||
ArrayStream.prototype.resume = function() {};
|
||||
@ -1396,7 +1395,7 @@ function addStandardGlobals(completionGroups, filter) {
|
||||
|
||||
function _turnOnEditorMode(repl) {
|
||||
repl.editorMode = true;
|
||||
REPLServer.super_.prototype.setPrompt.call(repl, '');
|
||||
Interface.prototype.setPrompt.call(repl, '');
|
||||
}
|
||||
|
||||
function _turnOffEditorMode(repl) {
|
||||
@ -1514,5 +1513,5 @@ function regexpEscape(s) {
|
||||
function Recoverable(err) {
|
||||
this.err = err;
|
||||
}
|
||||
inherits(Recoverable, SyntaxError);
|
||||
Object.setPrototypeOf(Recoverable.prototype, SyntaxError.prototype);
|
||||
exports.Recoverable = Recoverable;
|
||||
|
17
lib/zlib.js
17
lib/zlib.js
@ -31,7 +31,6 @@ const Transform = require('_stream_transform');
|
||||
const {
|
||||
deprecate,
|
||||
_extend,
|
||||
inherits,
|
||||
types: {
|
||||
isAnyArrayBuffer,
|
||||
isArrayBufferView
|
||||
@ -318,7 +317,7 @@ function Zlib(opts, mode) {
|
||||
this._info = opts && opts.info;
|
||||
this.once('end', this.close);
|
||||
}
|
||||
inherits(Zlib, Transform);
|
||||
Object.setPrototypeOf(Zlib.prototype, Transform.prototype);
|
||||
|
||||
Object.defineProperty(Zlib.prototype, '_closed', {
|
||||
configurable: true,
|
||||
@ -648,28 +647,28 @@ function Deflate(opts) {
|
||||
return new Deflate(opts);
|
||||
Zlib.call(this, opts, DEFLATE);
|
||||
}
|
||||
inherits(Deflate, Zlib);
|
||||
Object.setPrototypeOf(Deflate.prototype, Zlib.prototype);
|
||||
|
||||
function Inflate(opts) {
|
||||
if (!(this instanceof Inflate))
|
||||
return new Inflate(opts);
|
||||
Zlib.call(this, opts, INFLATE);
|
||||
}
|
||||
inherits(Inflate, Zlib);
|
||||
Object.setPrototypeOf(Inflate.prototype, Zlib.prototype);
|
||||
|
||||
function Gzip(opts) {
|
||||
if (!(this instanceof Gzip))
|
||||
return new Gzip(opts);
|
||||
Zlib.call(this, opts, GZIP);
|
||||
}
|
||||
inherits(Gzip, Zlib);
|
||||
Object.setPrototypeOf(Gzip.prototype, Zlib.prototype);
|
||||
|
||||
function Gunzip(opts) {
|
||||
if (!(this instanceof Gunzip))
|
||||
return new Gunzip(opts);
|
||||
Zlib.call(this, opts, GUNZIP);
|
||||
}
|
||||
inherits(Gunzip, Zlib);
|
||||
Object.setPrototypeOf(Gunzip.prototype, Zlib.prototype);
|
||||
|
||||
function DeflateRaw(opts) {
|
||||
if (opts && opts.windowBits === 8) opts.windowBits = 9;
|
||||
@ -677,21 +676,21 @@ function DeflateRaw(opts) {
|
||||
return new DeflateRaw(opts);
|
||||
Zlib.call(this, opts, DEFLATERAW);
|
||||
}
|
||||
inherits(DeflateRaw, Zlib);
|
||||
Object.setPrototypeOf(DeflateRaw.prototype, Zlib.prototype);
|
||||
|
||||
function InflateRaw(opts) {
|
||||
if (!(this instanceof InflateRaw))
|
||||
return new InflateRaw(opts);
|
||||
Zlib.call(this, opts, INFLATERAW);
|
||||
}
|
||||
inherits(InflateRaw, Zlib);
|
||||
Object.setPrototypeOf(InflateRaw.prototype, Zlib.prototype);
|
||||
|
||||
function Unzip(opts) {
|
||||
if (!(this instanceof Unzip))
|
||||
return new Unzip(opts);
|
||||
Zlib.call(this, opts, UNZIP);
|
||||
}
|
||||
inherits(Unzip, Zlib);
|
||||
Object.setPrototypeOf(Unzip.prototype, Zlib.prototype);
|
||||
|
||||
function createConvenienceMethod(ctor, sync) {
|
||||
if (sync) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user