.gitignore added
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / safe-buffer / index.js
1 /*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */
2 /* eslint-disable node/no-deprecated-api */
3 var buffer = require('buffer')
4 var Buffer = buffer.Buffer
5
6 // alternative to using Object.keys for old browsers
7 function copyProps (src, dst) {
8   for (var key in src) {
9     dst[key] = src[key]
10   }
11 }
12 if (Buffer.from && Buffer.alloc && Buffer.allocUnsafe && Buffer.allocUnsafeSlow) {
13   module.exports = buffer
14 } else {
15   // Copy properties from require('buffer')
16   copyProps(buffer, exports)
17   exports.Buffer = SafeBuffer
18 }
19
20 function SafeBuffer (arg, encodingOrOffset, length) {
21   return Buffer(arg, encodingOrOffset, length)
22 }
23
24 SafeBuffer.prototype = Object.create(Buffer.prototype)
25
26 // Copy static methods from Buffer
27 copyProps(Buffer, SafeBuffer)
28
29 SafeBuffer.from = function (arg, encodingOrOffset, length) {
30   if (typeof arg === 'number') {
31     throw new TypeError('Argument must not be a number')
32   }
33   return Buffer(arg, encodingOrOffset, length)
34 }
35
36 SafeBuffer.alloc = function (size, fill, encoding) {
37   if (typeof size !== 'number') {
38     throw new TypeError('Argument must be a number')
39   }
40   var buf = Buffer(size)
41   if (fill !== undefined) {
42     if (typeof encoding === 'string') {
43       buf.fill(fill, encoding)
44     } else {
45       buf.fill(fill)
46     }
47   } else {
48     buf.fill(0)
49   }
50   return buf
51 }
52
53 SafeBuffer.allocUnsafe = function (size) {
54   if (typeof size !== 'number') {
55     throw new TypeError('Argument must be a number')
56   }
57   return Buffer(size)
58 }
59
60 SafeBuffer.allocUnsafeSlow = function (size) {
61   if (typeof size !== 'number') {
62     throw new TypeError('Argument must be a number')
63   }
64   return buffer.SlowBuffer(size)
65 }