@gsknnft/bigint-buffer 1.3.2 → 1.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. package/README.md +123 -126
  2. package/build/Release/bigint_buffer.exp +0 -0
  3. package/build/Release/bigint_buffer.iobj +0 -0
  4. package/build/Release/bigint_buffer.ipdb +0 -0
  5. package/build/Release/bigint_buffer.lib +0 -0
  6. package/build/Release/bigint_buffer.node +0 -0
  7. package/build/Release/bigint_buffer.pdb +0 -0
  8. package/build/Release/obj/bigint_buffer/bigint_buffer.node.recipe +11 -0
  9. package/build/Release/obj/bigint_buffer/bigint_buffer.tlog/CL.command.1.tlog +0 -0
  10. package/build/Release/obj/bigint_buffer/bigint_buffer.tlog/CL.read.1.tlog +0 -0
  11. package/build/Release/obj/bigint_buffer/bigint_buffer.tlog/CL.write.1.tlog +0 -0
  12. package/build/Release/obj/bigint_buffer/bigint_buffer.tlog/Cl.items.tlog +2 -0
  13. package/build/Release/obj/bigint_buffer/bigint_buffer.tlog/bigint_buffer.lastbuildstate +2 -0
  14. package/build/Release/obj/bigint_buffer/bigint_buffer.tlog/link.command.1.tlog +0 -0
  15. package/build/Release/obj/bigint_buffer/bigint_buffer.tlog/link.read.1.tlog +0 -0
  16. package/build/Release/obj/bigint_buffer/bigint_buffer.tlog/link.secondary.1.tlog +5 -0
  17. package/build/Release/obj/bigint_buffer/bigint_buffer.tlog/link.write.1.tlog +0 -0
  18. package/build/Release/obj/bigint_buffer/src/bigint-buffer.obj +0 -0
  19. package/build/Release/obj/bigint_buffer/win_delay_load_hook.obj +0 -0
  20. package/build/bigint_buffer.vcxproj +148 -0
  21. package/build/bigint_buffer.vcxproj.filters +67 -0
  22. package/build/binding.sln +19 -0
  23. package/build/config.gypi +522 -0
  24. package/dist/index.cjs +1 -205
  25. package/dist/index.js +347 -202
  26. package/dist/index.umd.js +1 -0
  27. package/dist/tsconfig.tsbuildinfo +1 -0
  28. package/dist/types/bigint-buffer.test.d.ts +1 -0
  29. package/dist/types/conversion/index.d.ts +1 -0
  30. package/dist/types/conversion/src/ts/index.d.ts +168 -0
  31. package/dist/types/conversion/test/bigintToBase64.test.d.ts +1 -0
  32. package/dist/types/conversion/test/bigintToBuf.test.d.ts +1 -0
  33. package/dist/types/conversion/test/bigintToHex.test.d.ts +1 -0
  34. package/dist/types/conversion/test/bigintToText.test.d.ts +1 -0
  35. package/dist/types/conversion/test/bufToBigint.test.d.ts +1 -0
  36. package/dist/types/conversion/test/hexToBigint.test.d.ts +1 -0
  37. package/dist/types/conversion/test/hexToBuf.test.d.ts +1 -0
  38. package/dist/types/conversion/test/parseHex.test.d.ts +1 -0
  39. package/dist/types/conversion/test/setup.test.d.ts +1 -0
  40. package/dist/types/conversion/test/textToBuf.test.d.ts +1 -0
  41. package/dist/types/conversion/vite.config.d.ts +2 -0
  42. package/dist/types/conversion/vitest.config.d.ts +2 -0
  43. package/dist/types/dist/dist/conversion/conversion/index.d.ts +1 -0
  44. package/dist/{index.d.ts → types/dist/dist/index.d.ts} +2 -0
  45. package/dist/types/index.bench.d.ts +1 -0
  46. package/dist/types/index.d.ts +80 -0
  47. package/dist/types/index.spec.d.ts +1 -0
  48. package/package.json +83 -49
  49. package/src/bigint-buffer.test.ts +11 -0
  50. package/src/conversion/.github/workflows/build-and-test.yml +116 -0
  51. package/src/conversion/CODE_OF_CONDUCT.md +134 -0
  52. package/src/conversion/LICENSE +21 -0
  53. package/src/conversion/README.md +48 -0
  54. package/src/conversion/docs/README.md +34 -0
  55. package/src/conversion/docs/functions/base64ToBigint.md +27 -0
  56. package/src/conversion/docs/functions/bigintToBase64.md +43 -0
  57. package/src/conversion/docs/functions/bigintToBuf.md +35 -0
  58. package/src/conversion/docs/functions/bigintToHex.md +43 -0
  59. package/src/conversion/docs/functions/bigintToText.md +31 -0
  60. package/src/conversion/docs/functions/bufToBigint.md +25 -0
  61. package/src/conversion/docs/functions/bufToHex.md +37 -0
  62. package/src/conversion/docs/functions/bufToText.md +27 -0
  63. package/src/conversion/docs/functions/hexToBigint.md +29 -0
  64. package/src/conversion/docs/functions/hexToBuf.md +37 -0
  65. package/src/conversion/docs/functions/parseHex.md +45 -0
  66. package/src/conversion/docs/functions/textToBigint.md +27 -0
  67. package/src/conversion/docs/functions/textToBuf.md +33 -0
  68. package/src/conversion/docs/functions/toBigIntBE.md +27 -0
  69. package/src/conversion/docs/functions/toBigIntLE.md +27 -0
  70. package/src/conversion/docs/functions/toBufferBE.md +33 -0
  71. package/src/conversion/docs/functions/toBufferLE.md +33 -0
  72. package/src/conversion/docs/functions/validateBigIntBuffer.md +15 -0
  73. package/src/conversion/docs/type-aliases/TypedArray.md +11 -0
  74. package/src/conversion/docs/variables/isNative.md +11 -0
  75. package/src/conversion/example.cjs +9 -0
  76. package/src/conversion/example.esm.js +11 -0
  77. package/src/conversion/index.ts +1 -0
  78. package/src/conversion/package.json +163 -0
  79. package/src/conversion/src/docs/index.md +47 -0
  80. package/src/conversion/src/ts/index.ts +514 -0
  81. package/src/conversion/test/bigintToBase64.test.ts +37 -0
  82. package/src/conversion/test/bigintToBuf.test.ts +43 -0
  83. package/src/conversion/test/bigintToHex.test.ts +52 -0
  84. package/src/conversion/test/bigintToText.test.ts +30 -0
  85. package/src/conversion/test/bufToBigint.test.ts +20 -0
  86. package/src/conversion/test/hexToBigint.test.ts +22 -0
  87. package/src/conversion/test/hexToBuf.test.ts +39 -0
  88. package/src/conversion/test/parseHex.test.ts +35 -0
  89. package/src/conversion/test/setup.test.ts +9 -0
  90. package/src/conversion/test/textToBuf.test.ts +26 -0
  91. package/src/conversion/tsconfig.json +57 -0
  92. package/src/conversion/tsconfig.rollup.json +9 -0
  93. package/src/conversion/typedoc.json +5 -0
  94. package/src/conversion/types/bindings.d.t.s +4 -0
  95. package/src/conversion/vite.config.ts +10 -0
  96. package/src/conversion/vitest.config.ts +15 -0
  97. package/src/index.bench.ts +5 -6
  98. package/src/index.spec.ts +232 -358
  99. package/src/index.ts +33 -28
  100. package/.travis.yml +0 -51
  101. package/PR_TEMPLATE.md +0 -53
  102. package/dist/node.js +0 -94
  103. package/karma.conf.js +0 -62
  104. package/rollup.cjs.config.js +0 -8
  105. package/rollup.esm.config.js +0 -15
  106. package/tsconfig.json +0 -20
package/README.md CHANGED
@@ -2,15 +2,22 @@
2
2
 
3
3
  [![NPM Version](https://img.shields.io/npm/v/@gsknnft/bigint-buffer.svg?style=flat-square)](https://www.npmjs.com/package/@gsknnft/bigint-buffer)
4
4
  [![Node Version](https://img.shields.io/node/v/@gsknnft/bigint-buffer.svg?style=flat-square)](https://nodejs.org)
5
- [![Maintained Fork](https://img.shields.io/badge/fork-maintained-blue?style=flat-square)](https://github.com/gsknnft/bigintbuffer)
5
+ [![Maintained Fork](https://img.shields.io/badge/fork-maintained-blue?style=flat-square)](https://github.com/gsknnft/bigint-buffer)
6
+ Modern, secure BigInt ↔ Buffer conversion with native bindings, browser fallbacks, and the full `bigint-conversion` API built in.
6
7
 
7
8
  ---
8
9
 
9
10
  ## 🔐 Security Notice: This Module Has Been Reclaimed
11
+ This fork (`@gsknnft/bigint-buffer`) is actively maintained, secure, and recommended for all users. Native now builds clean. All conversion helpers are live and set.
12
+ **removed useless deps - back to ZERO dependancies unless chosen native bindings**
13
+ ---
14
+
15
+ Modern, secure BigInt ↔ Buffer conversion with native bindings, browser fallbacks, and the full `bigint-conversion` API built in.
10
16
 
11
17
  As of October 2025, `bigint-buffer@1.1.5` is **compromised and flagged by multiple audit tools** due to unresolved vulnerabilities in its native bindings and transitive dependencies. No upstream patch has been published.
18
+ As the original `bigint-buffer` package is deprecated. This repo (`@gsknnft/bigint-buffer`) is the official, actively maintained successor. All users should migrate for security, performance, and modern features.
12
19
 
13
- This fork — `@gsknnft/bigint-buffer@1.3.2` — is a **sovereign override**:
20
+ This repo — `@gsknnft/bigint-buffer@1.4.2` — is a **sovereign override**:
14
21
  - ✅ Rebuilt with modern TypeScript and Rollup
15
22
  - ✅ Native bindings patched and rebuilt via `node-gyp`
16
23
  - ✅ Browser fallback formalized via `"browser"` field
@@ -22,187 +29,177 @@ If you're using `bigint-buffer` in a secure or reproducible system, **migrate to
22
29
  ```json
23
30
  "pnpm": {
24
31
  "overrides": {
25
- "bigint-buffer": "@gsknnft/bigint-buffer@1.3.2"
32
+ "bigint-buffer": "@gsknnft/bigint-buffer@1.4.2"
26
33
  }
27
34
  }
28
35
  ```
29
- ## 🔍 Differences from Upstream
30
-
31
- - Rebuilt native bindings with modern Node compatibility
32
- - Scoped under `@gsknnft` for audit clarity
33
- - Uses `cpy-cli` instead of deprecated `cpx`
34
- - Rollup-based bundling for ESM/CJS duality
35
- - Peer dependency alignment and reproducibility guarantees
36
36
 
37
- ---
38
37
 
39
38
  **This fork is maintained by CoreFlame/GSKNNFT as part of the SigilNet ecosystem.**
40
- It is the only currently known secure, reproducible implementation of BigInt ↔ Buffer conversion with native fallback.
41
39
 
42
40
  ---
43
41
 
44
- ### 🚀 Conversion Utilities (Built-In)
45
-
46
- `@gsknnft/bigint-buffer` includes direct conversion tools — no need to install `bigint-conversion` separately.
42
+ ## Why BigInts?
47
43
 
48
- >You no longer need `bigint-conversion` as a separate dependency.
44
+ BigInts are primitive arbitrary precision integers, overcoming the limitations of JS numbers (max 53 bits). They enable safe manipulation of 64, 128, 256+ bit values (e.g., database IDs, hashes) with much better performance than Buffer or BN.js.
49
45
 
50
- #### Importing
46
+ **Performance highlights:**
51
47
 
52
- ```ts
53
- import {
54
- bigintToBuf,
55
- bufToBigint,
56
- bigintToHex,
57
- hexToBigint,
58
- bigintToText,
59
- textToBigint,
60
- bigintToBase64,
61
- base64ToBigint
62
- } from '@gsknnft/bigint-buffer';
63
48
  ```
64
-
65
- #### Examples
66
-
67
- ```ts
68
- const hex = bigintToHex(123456789n); // → "075bcd15"
69
- const buf = bigintToBuf(123456789n); // → <Buffer 07 5b cd 15>
70
- const text = bigintToText(123456789n); // → "123456789"
71
- const base64 = bigintToBase64(123456789n); // → "B1vNFQ=="
49
+ Buffer equality: 12M ops/s
50
+ BigInt equality: 798M ops/s
51
+ BN.js equality: 73M ops/s
52
+ BN.js multiply: 4.7M ops/s
53
+ BigInt multiply: 15M ops/s
72
54
  ```
73
55
 
74
- > All conversions are endian-safe, round-trip validated, and available in both Node and browser environments.
75
-
76
56
  ---
77
57
 
78
- ### 🧠 Why This Matters
58
+ ## Why This Package?
79
59
 
80
- - No audit vulnerabilities
81
- - ✅ Native bindings preserved
82
- - ✅ Conversion logic fused directly into the core
83
- - ✅ Unified types and exports
84
- - ✅ No need for `bigint-conversion` or external wrappers
60
+ It is the only currently known secure, reproducible implementation of BigInt ↔ Buffer conversion with native fallback.
85
61
 
86
- ---
62
+ - Efficient, secure conversion between BigInt and Buffer (native N-API bindings in Node, pure JS fallback in browser)
63
+ - All conversion helpers built-in (no need for `bigint-conversion`)
64
+ - Endian-safe, round-trip validated
65
+ - Unified types and exports
66
+ - No audit vulnerabilities
67
+ - Patched and rebuilt native bindings (Node 18+)
68
+ - First-class ESM/CJS exports plus browser bundle
69
+ - Conversion helpers in-core (no separate `bigint-conversion`)
70
+ - Actively maintained by GSKNNFT/CoreFlame
87
71
 
88
- The original introduced utilities for converting TC39 BigInts to and from buffers. This fork builds on that foundation with modern tooling, patched bindings, and reproducible builds.
72
+ ## 🔍 Differences from Upstream
89
73
 
90
- This utility is necessary because BigInts, as proposed, do not support direct conversion between Buffers (or UInt8Arrays), but rather require conversion from buffers to hexadecimal strings then to BigInts, which is suboptimal. This utility includes N-API bindings, so under node, conversion is performed without generating a hexadecimal string. In the browser, normal string conversion is used.
74
+ - Rebuilt native bindings with modern Node compatibility
75
+ - Scoped under `@gsknnft` for audit clarity
76
+ - Uses `cpy-cli` instead of deprecated `cpx`
77
+ - Rollup-based bundling for ESM/CJS duality
78
+ - Peer dependency alignment and reproducibility guarantees
91
79
 
92
80
  ---
93
81
 
94
- # Why use BigInts?
95
-
96
- BigInts are currently a stage 3 proposal, supported in Node 10 and V8 v6.7. BigInts are primitive arbitrary precision integers, overcoming the limitations of the number type in javascript, which only supports up to 53 bits of precision.
82
+ ## Install
83
+ ```bash
84
+ pnpm add @gsknnft/bigint-buffer
85
+ # or npm/yarn
86
+ ```
97
87
 
98
- In many applications, manipulating 64, 128 or even 256 bit numbers is quite common. For example, database identifiers are often 128 bits, and hashes are often 256 bits (If you're looking for hashing support, try out [bigint-hash](https://github.com/no2chem/bigint-hash)). Before BigInts, manipulating these numbers safely required either allocating a Buffer or UInt8Arrays, which is quite expensive compared to a number, since Buffers are allocated on the heap.
88
+ ---
99
89
 
100
- BigInts solve this problem by introducing a primitive that can hold
101
- arbitrary precision integers, reducing memory pressure and allowing
102
- the runtime to better optimize arithmetic operations. This results in significant performance improvements - 10x-100x for simple equality comparisons (using `===` vs `Buffer.compare()`):
90
+ ## Quick Start
91
+ ```ts
92
+ import {
93
+ toBigIntBE, toBigIntLE, toBufferBE, toBufferLE,
94
+ bigintToBuf, bufToBigint, bigintToHex, hexToBigint,
95
+ bigintToText, textToBigint, bigintToBase64, base64ToBigint
96
+ } from '@gsknnft/bigint-buffer';
103
97
 
104
- ```
105
- Buffer equality comparison: 11916844±4.23% ops/s 83.91±17.293 ns/op (91 runs)
106
- bigint equality comparison: 798024851±0.29% ops/s 1.25±0.017 ns/op (91 runs)
98
+ toBigIntBE(Buffer.from('deadbeef', 'hex')); // 3735928559n
99
+ toBufferLE(0xdeadbeefn, 6); // <Buffer ef be ad de 00 00>
100
+ bigintToHex(123456789n); // "075bcd15"
101
+ textToBigint('Hello'); // 0x48656c6c6f
102
+ bigintToBase64(123456789n); // "B1vNFQ=="
107
103
  ```
108
104
 
109
- Before BigInts, you probably used a library such as the widely used [bn.js](https://www.npmjs.com/package/bn.js).
110
- bn.js fares a little better than a plain Buffer, but is still 5-10x slower than the bigint:
111
- ```
112
- BN equality comparison: 73255774±0.67% ops/s 13.65±0.442 ns/op (89 runs)
113
- ```
105
+ ---
114
106
 
115
- bigints are also much better with arithmetic, here are the results compared to BN for multiplying two
116
- 128-bit integers, yielding a 4x improvement:
117
- ```
118
- BN multiply: 4763236±0.49% ops/s 209.94±5.111 ns/op (93 runs)
119
- bigint multiply: 15268666±0.92% ops/s 65.49±2.938 ns/op (92 runs)
120
- ```
107
+ ### 🚀 Advanced Conversion Utilities (Built-In)
121
108
 
122
- # So what's the problem?
109
+ Need only the conversion helpers?
110
+ ## Usage
123
111
 
124
- BigInts, unfortunately lack an efficient way to be converted back and forth between buffers. When dealing with serialized data or legacy node code, you'll often want to generate a BigInt from a buffer, or convert a BigInt to a Buffer in order to send a BigInt over the wire.
112
+ ### Classic Buffer/BigInt API
125
113
 
126
- Currently, the only method to generate a new BigInt is with the BigInt constructor. Unfortunately, it doesn't support Buffers, though it may in the future:
114
+ ```js
115
+ import { toBigIntLE, toBigIntBE, toBufferLE, toBufferBE } from '@gsknnft/bigint-buffer';
127
116
 
128
- ```
129
- > BigInt(Buffer.from([1]))
130
- SyntaxError: Cannot convert to a BigInt
117
+ const bigInt = toBigIntBE(Buffer.from('deadbeef', 'hex'));
118
+ const buf = toBufferLE(123456789n, 8);
131
119
  ```
132
120
 
133
- Instead, you need to convert the Buffer to a hexadecimal string of the correct format. For example:
121
+ ```ts
122
+ import { conversionUtils } from '@gsknnft/bigint-buffer';
134
123
 
135
- ```
136
- > BigInt(`0x${buf.toString('hex')}`);
137
- 1n
124
+ // TypedArray, ArrayBuffer, hex/text/base64 helpers
125
+ const arrBuf = conversionUtils.bigintToBuf(123456789n, true); // ArrayBuffer
126
+ const hex = conversionUtils.bigintToHex(123456789n, true); // '0x...' format
127
+ const text = conversionUtils.bigintToText(123456789n);
138
128
  ```
139
129
 
140
- These conversions are not only quite expensive, but obviate a lot of the performance gains we get from BigInts. For example, on a large buffer, this conversion can take over 100x the time to do a comparison:
141
- ```
142
- bigint from hex string from buffer (huge): 1230607±1.02% ops/s 812.61±40.013 ns/op (89 runs)
143
- ```
130
+ > All conversions are endian-safe, round-trip validated, and available in both Node and browser environments.
131
+
132
+ ---
133
+
134
+ ### 🧠 Why This Matters
144
135
 
145
- # And... bigint-buffer helps how?
136
+ - No audit vulnerabilities
137
+ - ✅ Native bindings preserved
138
+ - ✅ Conversion logic fused directly into the core
139
+ - ✅ Unified types and exports
140
+ - ✅ No need for `bigint-conversion` or external wrappers
146
141
 
147
- bigint-buffer introduces four functions for conversion between buffers and bigints. A small example follows:
148
- ```typescript
149
- import {toBigIntBE, toBigIntLE, toBufferBE, toBufferLE} from '@gsknnft/bigint-buffer';
150
142
 
151
- // Get a big endian buffer of the given width
152
- toBufferBE(0xdeadbeefn, 8);
153
- // ↪ <Buffer 00 00 00 00 de ad be ef>
143
+ ---
154
144
 
155
- // Get a little endian buffer of the given width
156
- toBufferLE(0xdeadbeefn, 8);
157
- // <Buffer ef be ad de 00 00 00 00>
145
+ ## Runtime: Native vs JS
146
+ - Native binding lives at `build/Release/bigint_buffer.node` and loads automatically.
147
+ - Check the path in use:
148
+ ```ts
149
+ import { isNative } from '@gsknnft/bigint-buffer';
150
+ console.log(isNative); // true when native is loaded
151
+ ```
152
+ - Pure JS fallback stays available for browsers and non-native installs.
158
153
 
159
- // Get a BigInt from a buffer in big endian format
160
- toBigIntBE(Buffer.from('deadbeef', 'hex'));
161
- // ↪ 3735928559n (0xdeadbeefn)
154
+ ---
162
155
 
163
- // Get a BigInt from a buffer in little endian format
164
- toBigIntLE(Buffer.from('deadbeef', 'hex'));
165
- // 4022250974n (0xefbeadd0en)
166
- ```
156
+ ## Docs & Types
157
+ - Core usage: this README
158
+ - Full conversion docs: `src/conversion/docs/` (generated from `bigint-conversion`)
159
+ - API: [gsknnft.github.io/bigint-buffer/](https://gsknnft.github.io/bigint-buffer/)
160
+ - Types: ship in `dist/*.d.ts`
167
161
 
168
- bigint-buffer uses N-API native bindings to perform the conversion efficiently without generating the
169
- immediate hex strings necessary in pure javascript. This results in a significant performance increase,
170
- about 2x for small buffer to bigint conversions, and 8x better than BN:
162
+ ---
171
163
 
172
- ```
173
- BN to buffer (small): 981703±68.30% ops/s 1018.64±3194.648 ns/op (81 runs)
174
- bigint from hex string from buffer (small): 2804915±5.00% ops/s 356.52±85.371 ns/op (88 runs)
175
- LE bigint-buffer ToBigInt (small): 5932704±1.62% ops/s 168.56±12.971 ns/op (87 runs)
176
- ```
164
+ ## Commands
177
165
 
178
- And about 3.3x for bigint to buffer conversions, and 17x better than BN:
179
- ```
180
- BN to buffer (large): 339437±2.85% ops/s 2946.06±385.504 ns/op (81 runs)
181
- BE bigint to hex string to buffer (large): 1714292±1.35% ops/s 583.33±37.995 ns/op (90 runs)
182
- BE bigint-buffer to buffer (large, truncated): 5977218±4.68% ops/s 167.30±37.284 ns/op (87 runs)
166
+ ```bash
167
+ pnpm run build # compile + bundle
168
+ pnpm run test # vitest (node + conversion tests)
169
+ pnpm run coverage # conversion coverage
170
+ pnpm run rebuild:native # rebuild the N-API binding
183
171
  ```
184
172
 
185
- # Typescript Support
173
+ ## Benchmarks
186
174
 
187
- bigint-buffer supplies typescript bindings, but BigInts are still not supported in typescript, though
188
- a pull request has been opened, so support should be coming soon. If you are using typescript,
189
- @calebsander has put up a pull request and the instructions in [this post](https://github.com/Microsoft/TypeScript/issues/15096#issuecomment-419654748).
175
+ Run benchmarks with:
176
+ ```bash
177
+ pnpm run benchmark # performance benchmarks
178
+ ```
190
179
 
191
- # Install
180
+ ---
192
181
 
193
- Add bigint-buffer to your project with:
182
+ ## Modern Testing
194
183
 
195
- > `pnpm add @gsknnft/bigint-buffer`
184
+ Uses [Vitest](https://vitest.dev) for fast, type-safe tests and coverage:
196
185
 
197
- or
186
+ ```bash
187
+ pnpm run test # run all tests
188
+ pnpm run coverage # see coverage report
189
+ ```
198
190
 
199
- > `npm install @gsknnft/bigint-buffer`
191
+ ---
200
192
 
201
- # Documentation
193
+ ## API Surface
194
+ - Native: `toBigIntBE/LE`, `toBufferBE/LE`, `validateBigIntBuffer`, `isNative`
195
+ - Conversion: `bigintToBuf`, `bufToBigint`, `bigintToHex`, `hexToBigint`, `bigintToText`, `textToBigint`, `bigintToBase64`, `base64ToBigint`, `bufToHex`, `hexToBuf`, `textToBuf`, `bufToText`, `parseHex`, `TypedArray`
202
196
 
203
- Basic API documentation can be found [here](https://gsknnft.github.io/bigint-buffer/). Note that v1.0.0 changes
204
- the name of the original functions to meet style guidelines.
197
+ All helpers are endian-safe and validated across Node and browser builds.
205
198
 
206
- # Benchmarks
199
+ ---
207
200
 
208
- Benchmarks can be run by executing `pnpm run benchmark` from the package directory.
201
+ ## Support & Project Status
202
+ - Version: 1.4.2
203
+ - Maintainer: GSKNNFT/CoreFlame
204
+ - Node: ≥18 (native), browser bundle included
205
+ - Issues: https://github.com/gsknnft/bigint-buffer/issues
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -0,0 +1,11 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <Project>
3
+ <ProjectOutputs>
4
+ <ProjectOutput>
5
+ <FullPath>C:\Users\G\Desktop\Builds\bigint-buffer\build\Release\bigint_buffer.node</FullPath>
6
+ </ProjectOutput>
7
+ </ProjectOutputs>
8
+ <ContentFiles />
9
+ <SatelliteDlls />
10
+ <NonRecipeFileRefs />
11
+ </Project>
@@ -0,0 +1,2 @@
1
+ C:\Users\G\Desktop\Builds\bigint-buffer\src\bigint-buffer.c;C:\Users\G\Desktop\Builds\bigint-buffer\build\Release\obj\bigint_buffer\src\bigint-buffer.obj
2
+ C:\Users\G\AppData\Local\node\corepack\v1\pnpm\10.23.0\dist\node_modules\node-gyp\src\win_delay_load_hook.cc;C:\Users\G\Desktop\Builds\bigint-buffer\build\Release\obj\bigint_buffer\win_delay_load_hook.obj
@@ -0,0 +1,2 @@
1
+ PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.44.35207:TargetPlatformVersion=10.0.26100.0:
2
+ Release|x64|C:\Users\G\Desktop\Builds\bigint-buffer\build\|
@@ -0,0 +1,5 @@
1
+ ^C:\USERS\G\DESKTOP\BUILDS\BIGINT-BUFFER\BUILD\RELEASE\OBJ\BIGINT_BUFFER\SRC\BIGINT-BUFFER.OBJ|C:\USERS\G\DESKTOP\BUILDS\BIGINT-BUFFER\BUILD\RELEASE\OBJ\BIGINT_BUFFER\WIN_DELAY_LOAD_HOOK.OBJ
2
+ C:\Users\G\Desktop\Builds\bigint-buffer\build\Release\bigint_buffer.LIB
3
+ C:\Users\G\Desktop\Builds\bigint-buffer\build\Release\bigint_buffer.EXP
4
+ C:\Users\G\Desktop\Builds\bigint-buffer\build\Release\bigint_buffer.IPDB
5
+ C:\Users\G\Desktop\Builds\bigint-buffer\build\Release\bigint_buffer.IOBJ
@@ -0,0 +1,148 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3
+ <ItemGroup Label="ProjectConfigurations">
4
+ <ProjectConfiguration Include="Debug|x64">
5
+ <Configuration>Debug</Configuration>
6
+ <Platform>x64</Platform>
7
+ </ProjectConfiguration>
8
+ <ProjectConfiguration Include="Release|x64">
9
+ <Configuration>Release</Configuration>
10
+ <Platform>x64</Platform>
11
+ </ProjectConfiguration>
12
+ </ItemGroup>
13
+ <PropertyGroup Label="Globals">
14
+ <ProjectGuid>{24113E9C-F3B8-A9AC-DC29-9757A019F33F}</ProjectGuid>
15
+ <Keyword>Win32Proj</Keyword>
16
+ <RootNamespace>bigint_buffer</RootNamespace>
17
+ <IgnoreWarnCompileDuplicatedFilename>true</IgnoreWarnCompileDuplicatedFilename>
18
+ <PreferredToolArchitecture>x64</PreferredToolArchitecture>
19
+ <WindowsTargetPlatformVersion>10.0.26100.0</WindowsTargetPlatformVersion>
20
+ </PropertyGroup>
21
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props"/>
22
+ <PropertyGroup Label="Configuration">
23
+ <ConfigurationType>DynamicLibrary</ConfigurationType>
24
+ </PropertyGroup>
25
+ <PropertyGroup Label="Locals">
26
+ <PlatformToolset>v143</PlatformToolset>
27
+ </PropertyGroup>
28
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props"/>
29
+ <Import Project="$(VCTargetsPath)\BuildCustomizations\masm.props"/>
30
+ <ImportGroup Label="ExtensionSettings"/>
31
+ <ImportGroup Label="PropertySheets">
32
+ <Import Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"/>
33
+ </ImportGroup>
34
+ <PropertyGroup Label="UserMacros"/>
35
+ <PropertyGroup>
36
+ <ExecutablePath>$(ExecutablePath);$(MSBuildProjectDirectory)\..\bin\;$(MSBuildProjectDirectory)\..\bin\</ExecutablePath>
37
+ <IgnoreImportLibrary>true</IgnoreImportLibrary>
38
+ <IntDir>$(Configuration)\obj\$(ProjectName)\</IntDir>
39
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
40
+ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
41
+ <OutDir>$(SolutionDir)$(Configuration)\</OutDir>
42
+ <TargetExt Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.node</TargetExt>
43
+ <TargetExt Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.node</TargetExt>
44
+ <TargetExt Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.node</TargetExt>
45
+ <TargetExt Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.node</TargetExt>
46
+ <TargetName>$(ProjectName)</TargetName>
47
+ <TargetPath>$(OutDir)\$(ProjectName).node</TargetPath>
48
+ </PropertyGroup>
49
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
50
+ <ClCompile>
51
+ <AdditionalIncludeDirectories>C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\include\node;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\src;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\openssl\config;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\openssl\openssl\include;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\uv\include;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\zlib;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\v8\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
52
+ <AdditionalOptions>/Zc:__cplusplus -std:c++20 /Zm2000 %(AdditionalOptions)</AdditionalOptions>
53
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
54
+ <BufferSecurityCheck>true</BufferSecurityCheck>
55
+ <DebugInformationFormat>OldStyle</DebugInformationFormat>
56
+ <DisableSpecificWarnings>4351;4355;4800;4251;4275;4244;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>
57
+ <ExceptionHandling>false</ExceptionHandling>
58
+ <MinimalRebuild>false</MinimalRebuild>
59
+ <MultiProcessorCompilation>true</MultiProcessorCompilation>
60
+ <OmitFramePointers>false</OmitFramePointers>
61
+ <Optimization>Disabled</Optimization>
62
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
63
+ <PreprocessorDefinitions>NODE_GYP_MODULE_NAME=bigint_buffer;USING_UV_SHARED=1;USING_V8_SHARED=1;V8_DEPRECATION_WARNINGS=1;_GLIBCXX_USE_CXX11_ABI=1;_FILE_OFFSET_BITS=64;WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_HAS_EXCEPTIONS=0;NOMINMAX;OPENSSL_NO_PINSHARED;OPENSSL_THREADS;BUILDING_NODE_EXTENSION;HOST_BINARY=&quot;node.exe&quot;;DEBUG;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
64
+ <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
65
+ <StringPooling>true</StringPooling>
66
+ <SuppressStartupBanner>true</SuppressStartupBanner>
67
+ <TreatWarningAsError>false</TreatWarningAsError>
68
+ <WarningLevel>Level3</WarningLevel>
69
+ <WholeProgramOptimization>true</WholeProgramOptimization>
70
+ </ClCompile>
71
+ <Lib>
72
+ <AdditionalOptions>/LTCG:INCREMENTAL %(AdditionalOptions)</AdditionalOptions>
73
+ </Lib>
74
+ <Link>
75
+ <AdditionalDependencies>kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;delayimp.lib;&quot;C:\\Users\\G\\AppData\\Local\\node-gyp\\Cache\\24.10.0\\x64\\node.lib&quot;</AdditionalDependencies>
76
+ <AdditionalOptions>/LTCG:INCREMENTAL /ignore:4199 %(AdditionalOptions)</AdditionalOptions>
77
+ <DelayLoadDLLs>node.exe;%(DelayLoadDLLs)</DelayLoadDLLs>
78
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
79
+ <GenerateDebugInformation>true</GenerateDebugInformation>
80
+ <OptimizeReferences>true</OptimizeReferences>
81
+ <OutputFile>$(OutDir)$(ProjectName).node</OutputFile>
82
+ <SuppressStartupBanner>true</SuppressStartupBanner>
83
+ <TargetExt>.node</TargetExt>
84
+ <TargetMachine>MachineX64</TargetMachine>
85
+ </Link>
86
+ <ResourceCompile>
87
+ <AdditionalIncludeDirectories>C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\include\node;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\src;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\openssl\config;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\openssl\openssl\include;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\uv\include;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\zlib;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\v8\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
88
+ <PreprocessorDefinitions>NODE_GYP_MODULE_NAME=bigint_buffer;USING_UV_SHARED=1;USING_V8_SHARED=1;V8_DEPRECATION_WARNINGS=1;_GLIBCXX_USE_CXX11_ABI=1;_FILE_OFFSET_BITS=64;WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_HAS_EXCEPTIONS=0;NOMINMAX;OPENSSL_NO_PINSHARED;OPENSSL_THREADS;BUILDING_NODE_EXTENSION;HOST_BINARY=&quot;node.exe&quot;;DEBUG;_DEBUG;%(PreprocessorDefinitions);%(PreprocessorDefinitions)</PreprocessorDefinitions>
89
+ </ResourceCompile>
90
+ </ItemDefinitionGroup>
91
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
92
+ <ClCompile>
93
+ <AdditionalIncludeDirectories>C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\include\node;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\src;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\openssl\config;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\openssl\openssl\include;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\uv\include;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\zlib;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\v8\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
94
+ <AdditionalOptions>/Zc:__cplusplus -std:c++20 /Zm2000 %(AdditionalOptions)</AdditionalOptions>
95
+ <BufferSecurityCheck>true</BufferSecurityCheck>
96
+ <DebugInformationFormat>OldStyle</DebugInformationFormat>
97
+ <DisableSpecificWarnings>4351;4355;4800;4251;4275;4244;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>
98
+ <ExceptionHandling>false</ExceptionHandling>
99
+ <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
100
+ <FunctionLevelLinking>true</FunctionLevelLinking>
101
+ <InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>
102
+ <IntrinsicFunctions>true</IntrinsicFunctions>
103
+ <MultiProcessorCompilation>true</MultiProcessorCompilation>
104
+ <OmitFramePointers>true</OmitFramePointers>
105
+ <Optimization>Full</Optimization>
106
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
107
+ <PreprocessorDefinitions>NODE_GYP_MODULE_NAME=bigint_buffer;USING_UV_SHARED=1;USING_V8_SHARED=1;V8_DEPRECATION_WARNINGS=1;_GLIBCXX_USE_CXX11_ABI=1;_FILE_OFFSET_BITS=64;WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_HAS_EXCEPTIONS=0;NOMINMAX;OPENSSL_NO_PINSHARED;OPENSSL_THREADS;BUILDING_NODE_EXTENSION;HOST_BINARY=&quot;node.exe&quot;;%(PreprocessorDefinitions)</PreprocessorDefinitions>
108
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
109
+ <RuntimeTypeInfo>false</RuntimeTypeInfo>
110
+ <StringPooling>true</StringPooling>
111
+ <SuppressStartupBanner>true</SuppressStartupBanner>
112
+ <TreatWarningAsError>false</TreatWarningAsError>
113
+ <WarningLevel>Level3</WarningLevel>
114
+ <WholeProgramOptimization>true</WholeProgramOptimization>
115
+ </ClCompile>
116
+ <Lib>
117
+ <AdditionalOptions>/LTCG:INCREMENTAL %(AdditionalOptions)</AdditionalOptions>
118
+ </Lib>
119
+ <Link>
120
+ <AdditionalDependencies>kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;delayimp.lib;&quot;C:\\Users\\G\\AppData\\Local\\node-gyp\\Cache\\24.10.0\\x64\\node.lib&quot;</AdditionalDependencies>
121
+ <AdditionalOptions>/LTCG:INCREMENTAL /ignore:4199 %(AdditionalOptions)</AdditionalOptions>
122
+ <DelayLoadDLLs>node.exe;%(DelayLoadDLLs)</DelayLoadDLLs>
123
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
124
+ <GenerateDebugInformation>true</GenerateDebugInformation>
125
+ <OptimizeReferences>true</OptimizeReferences>
126
+ <OutputFile>$(OutDir)$(ProjectName).node</OutputFile>
127
+ <SuppressStartupBanner>true</SuppressStartupBanner>
128
+ <TargetExt>.node</TargetExt>
129
+ <TargetMachine>MachineX64</TargetMachine>
130
+ </Link>
131
+ <ResourceCompile>
132
+ <AdditionalIncludeDirectories>C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\include\node;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\src;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\openssl\config;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\openssl\openssl\include;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\uv\include;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\zlib;C:\Users\G\AppData\Local\node-gyp\Cache\24.10.0\deps\v8\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
133
+ <PreprocessorDefinitions>NODE_GYP_MODULE_NAME=bigint_buffer;USING_UV_SHARED=1;USING_V8_SHARED=1;V8_DEPRECATION_WARNINGS=1;_GLIBCXX_USE_CXX11_ABI=1;_FILE_OFFSET_BITS=64;WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_HAS_EXCEPTIONS=0;NOMINMAX;OPENSSL_NO_PINSHARED;OPENSSL_THREADS;BUILDING_NODE_EXTENSION;HOST_BINARY=&quot;node.exe&quot;;%(PreprocessorDefinitions);%(PreprocessorDefinitions)</PreprocessorDefinitions>
134
+ </ResourceCompile>
135
+ </ItemDefinitionGroup>
136
+ <ItemGroup>
137
+ <None Include="..\binding.gyp"/>
138
+ </ItemGroup>
139
+ <ItemGroup>
140
+ <ClCompile Include="..\src\bigint-buffer.c">
141
+ <ObjectFileName>$(IntDir)\src\bigint-buffer.obj</ObjectFileName>
142
+ </ClCompile>
143
+ <ClCompile Include="C:\Users\G\AppData\Local\node\corepack\v1\pnpm\10.23.0\dist\node_modules\node-gyp\src\win_delay_load_hook.cc"/>
144
+ </ItemGroup>
145
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets"/>
146
+ <Import Project="$(VCTargetsPath)\BuildCustomizations\masm.targets"/>
147
+ <ImportGroup Label="ExtensionTargets"/>
148
+ </Project>
@@ -0,0 +1,67 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3
+ <ItemGroup>
4
+ <Filter Include="..">
5
+ <UniqueIdentifier>{739DB09A-CC57-A953-A6CF-F64FA08E4FA7}</UniqueIdentifier>
6
+ </Filter>
7
+ <Filter Include="..\src">
8
+ <UniqueIdentifier>{8CDEE807-BC53-E450-C8B8-4DEBB66742D4}</UniqueIdentifier>
9
+ </Filter>
10
+ <Filter Include="C:">
11
+ <UniqueIdentifier>{7B735499-E5DD-1C2B-6C26-70023832A1CF}</UniqueIdentifier>
12
+ </Filter>
13
+ <Filter Include="C:\Users">
14
+ <UniqueIdentifier>{E9F714C1-DA89-54E2-60CF-39FEB20BF756}</UniqueIdentifier>
15
+ </Filter>
16
+ <Filter Include="C:\Users\G">
17
+ <UniqueIdentifier>{23A9C368-CAF8-ECEE-DD21-DEE90AB396A0}</UniqueIdentifier>
18
+ </Filter>
19
+ <Filter Include="C:\Users\G\AppData">
20
+ <UniqueIdentifier>{F852EB63-437C-846A-220F-8D9ED6DAEC1D}</UniqueIdentifier>
21
+ </Filter>
22
+ <Filter Include="C:\Users\G\AppData\Local">
23
+ <UniqueIdentifier>{AA1ADE49-EB66-4CF9-B60D-A95495F1ED01}</UniqueIdentifier>
24
+ </Filter>
25
+ <Filter Include="C:\Users\G\AppData\Local\node">
26
+ <UniqueIdentifier>{A49AD564-6B22-6A46-08E5-B5A7F4427839}</UniqueIdentifier>
27
+ </Filter>
28
+ <Filter Include="C:\Users\G\AppData\Local\node\corepack">
29
+ <UniqueIdentifier>{7DF01568-B5C7-EAD1-053F-3741272EEB40}</UniqueIdentifier>
30
+ </Filter>
31
+ <Filter Include="C:\Users\G\AppData\Local\node\corepack\v1">
32
+ <UniqueIdentifier>{D97A148A-A0B5-8EE9-0275-BAC39C4FD29A}</UniqueIdentifier>
33
+ </Filter>
34
+ <Filter Include="C:\Users\G\AppData\Local\node\corepack\v1\pnpm">
35
+ <UniqueIdentifier>{1EA99597-72F7-7B8A-65CA-22260344E439}</UniqueIdentifier>
36
+ </Filter>
37
+ <Filter Include="C:\Users\G\AppData\Local\node\corepack\v1\pnpm\10.23.0">
38
+ <UniqueIdentifier>{3ABCBCF9-03F1-E658-E6C5-769ECA8B0FCC}</UniqueIdentifier>
39
+ </Filter>
40
+ <Filter Include="C:\Users\G\AppData\Local\node\corepack\v1\pnpm\10.23.0\dist">
41
+ <UniqueIdentifier>{64E3201F-8721-A2FA-DD0A-6C3AF45797EA}</UniqueIdentifier>
42
+ </Filter>
43
+ <Filter Include="C:\Users\G\AppData\Local\node\corepack\v1\pnpm\10.23.0\dist\node_modules">
44
+ <UniqueIdentifier>{56DF7A98-063D-FB9D-485C-089023B4C16A}</UniqueIdentifier>
45
+ </Filter>
46
+ <Filter Include="C:\Users\G\AppData\Local\node\corepack\v1\pnpm\10.23.0\dist\node_modules\node-gyp">
47
+ <UniqueIdentifier>{77348C0E-2034-7791-74D5-63C077DF5A3B}</UniqueIdentifier>
48
+ </Filter>
49
+ <Filter Include="C:\Users\G\AppData\Local\node\corepack\v1\pnpm\10.23.0\dist\node_modules\node-gyp\src">
50
+ <UniqueIdentifier>{8CDEE807-BC53-E450-C8B8-4DEBB66742D4}</UniqueIdentifier>
51
+ </Filter>
52
+ <Filter Include="..">
53
+ <UniqueIdentifier>{739DB09A-CC57-A953-A6CF-F64FA08E4FA7}</UniqueIdentifier>
54
+ </Filter>
55
+ </ItemGroup>
56
+ <ItemGroup>
57
+ <ClCompile Include="..\src\bigint-buffer.c">
58
+ <Filter>..\src</Filter>
59
+ </ClCompile>
60
+ <ClCompile Include="C:\Users\G\AppData\Local\node\corepack\v1\pnpm\10.23.0\dist\node_modules\node-gyp\src\win_delay_load_hook.cc">
61
+ <Filter>C:\Users\G\AppData\Local\node\corepack\v1\pnpm\10.23.0\dist\node_modules\node-gyp\src</Filter>
62
+ </ClCompile>
63
+ <None Include="..\binding.gyp">
64
+ <Filter>..</Filter>
65
+ </None>
66
+ </ItemGroup>
67
+ </Project>
@@ -0,0 +1,19 @@
1
+ Microsoft Visual Studio Solution File, Format Version 12.00
2
+ # Visual Studio 2015
3
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bigint_buffer", "bigint_buffer.vcxproj", "{24113E9C-F3B8-A9AC-DC29-9757A019F33F}"
4
+ EndProject
5
+ Global
6
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
7
+ Release|x64 = Release|x64
8
+ Debug|x64 = Debug|x64
9
+ EndGlobalSection
10
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
11
+ {24113E9C-F3B8-A9AC-DC29-9757A019F33F}.Release|x64.ActiveCfg = Release|x64
12
+ {24113E9C-F3B8-A9AC-DC29-9757A019F33F}.Release|x64.Build.0 = Release|x64
13
+ {24113E9C-F3B8-A9AC-DC29-9757A019F33F}.Debug|x64.ActiveCfg = Debug|x64
14
+ {24113E9C-F3B8-A9AC-DC29-9757A019F33F}.Debug|x64.Build.0 = Debug|x64
15
+ EndGlobalSection
16
+ GlobalSection(SolutionProperties) = preSolution
17
+ HideSolutionNode = FALSE
18
+ EndGlobalSection
19
+ EndGlobal