24 lines
669 B
JavaScript
24 lines
669 B
JavaScript
function FilerBuffer (subject, encoding, nonZero) {
|
|
|
|
// Automatically turn ArrayBuffer into Uint8Array so that underlying
|
|
// Buffer code doesn't just throw away and ignore ArrayBuffer data.
|
|
if (subject instanceof ArrayBuffer) {
|
|
subject = new Uint8Array(subject);
|
|
}
|
|
|
|
return new Buffer(subject, encoding, nonZero);
|
|
};
|
|
|
|
// Inherit prototype from Buffer
|
|
FilerBuffer.prototype = Object.create(Buffer.prototype);
|
|
FilerBuffer.prototype.constructor = FilerBuffer;
|
|
|
|
// Also copy static methods onto FilerBuffer ctor
|
|
Object.keys(Buffer).forEach(function (p) {
|
|
if (Buffer.hasOwnProperty(p)) {
|
|
FilerBuffer[p] = Buffer[p];
|
|
}
|
|
});
|
|
|
|
module.exports = FilerBuffer;
|