aboutsummaryrefslogtreecommitdiffstats
path: root/node_modules/tar/dist/commonjs/large-numbers.js
diff options
context:
space:
mode:
authorpack <pack@packgekko.xyz>2026-08-09 10:54:08 +0000
committerpack <pack@packgekko.xyz>2026-08-09 10:54:08 +0000
commitd3adc16a08d95d6e331de55d7d3bf05a66a874a8 (patch)
treea2dabd199501e67c547c2ce79e1374ca3aa55443 /node_modules/tar/dist/commonjs/large-numbers.js
parent55a4f1fc869e41aca748c63d3018f0448b1606e0 (diff)
downloadcrud-d3adc16a08d95d6e331de55d7d3bf05a66a874a8.tar.gz
stop tracking node_modules/
Diffstat (limited to '')
-rw-r--r--node_modules/tar/dist/commonjs/large-numbers.js99
1 files changed, 0 insertions, 99 deletions
diff --git a/node_modules/tar/dist/commonjs/large-numbers.js b/node_modules/tar/dist/commonjs/large-numbers.js
deleted file mode 100644
index 5b07aa7..0000000
--- a/node_modules/tar/dist/commonjs/large-numbers.js
+++ /dev/null
@@ -1,99 +0,0 @@
-"use strict";
-// Tar can encode large and negative numbers using a leading byte of
-// 0xff for negative, and 0x80 for positive.
-Object.defineProperty(exports, "__esModule", { value: true });
-exports.parse = exports.encode = void 0;
-const encode = (num, buf) => {
- if (!Number.isSafeInteger(num)) {
- // The number is so large that javascript cannot represent it with integer
- // precision.
- throw Error('cannot encode number outside of javascript safe integer range');
- }
- else if (num < 0) {
- encodeNegative(num, buf);
- }
- else {
- encodePositive(num, buf);
- }
- return buf;
-};
-exports.encode = encode;
-const encodePositive = (num, buf) => {
- buf[0] = 0x80;
- for (var i = buf.length; i > 1; i--) {
- buf[i - 1] = num & 0xff;
- num = Math.floor(num / 0x100);
- }
-};
-const encodeNegative = (num, buf) => {
- buf[0] = 0xff;
- var flipped = false;
- num = num * -1;
- for (var i = buf.length; i > 1; i--) {
- var byte = num & 0xff;
- num = Math.floor(num / 0x100);
- if (flipped) {
- buf[i - 1] = onesComp(byte);
- }
- else if (byte === 0) {
- buf[i - 1] = 0;
- }
- else {
- flipped = true;
- buf[i - 1] = twosComp(byte);
- }
- }
-};
-const parse = (buf) => {
- const pre = buf[0];
- const value = pre === 0x80 ? pos(buf.subarray(1, buf.length))
- : pre === 0xff ? twos(buf)
- : null;
- if (value === null) {
- throw Error('invalid base256 encoding');
- }
- if (!Number.isSafeInteger(value)) {
- // The number is so large that javascript cannot represent it with integer
- // precision.
- throw Error('parsed number outside of javascript safe integer range');
- }
- return value;
-};
-exports.parse = parse;
-const twos = (buf) => {
- var len = buf.length;
- var sum = 0;
- var flipped = false;
- for (var i = len - 1; i > -1; i--) {
- var byte = Number(buf[i]);
- var f;
- if (flipped) {
- f = onesComp(byte);
- }
- else if (byte === 0) {
- f = byte;
- }
- else {
- flipped = true;
- f = twosComp(byte);
- }
- if (f !== 0) {
- sum -= f * Math.pow(256, len - i - 1);
- }
- }
- return sum;
-};
-const pos = (buf) => {
- var len = buf.length;
- var sum = 0;
- for (var i = len - 1; i > -1; i--) {
- var byte = Number(buf[i]);
- if (byte !== 0) {
- sum += byte * Math.pow(256, len - i - 1);
- }
- }
- return sum;
-};
-const onesComp = (byte) => (0xff ^ byte) & 0xff;
-const twosComp = (byte) => ((0xff ^ byte) + 1) & 0xff;
-//# sourceMappingURL=large-numbers.js.map \ No newline at end of file