@zzzeros0/nbsp 0.1.0 → 0.1.1
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.
- package/README.md +51 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/structure.d.ts +0 -5
- package/dist/structure.d.ts.map +1 -1
- package/dist/structure.js +2 -2
- package/dist/structure.js.map +1 -1
- package/package.json +4 -2
package/README.md
CHANGED
|
@@ -342,3 +342,54 @@ structure({
|
|
|
342
342
|
property2: DataType.INT64LE,
|
|
343
343
|
});
|
|
344
344
|
```
|
|
345
|
+
|
|
346
|
+
### Floating point (FLOAT32) precision
|
|
347
|
+
|
|
348
|
+
NBSP uses IEEE-754 floating point representations for FLOAT32 and FLOAT64, exactly like C, C++, Rust, Java, etc.
|
|
349
|
+
This means that some decimal values cannot be represented exactly in binary.
|
|
350
|
+
|
|
351
|
+
**Why does `0.4` become `0.4000000059604645`?**
|
|
352
|
+
|
|
353
|
+
FLOAT32 is a 32-bit single-precision IEEE-754 float.
|
|
354
|
+
|
|
355
|
+
The decimal number 0.4 cannot be represented exactly using a finite binary fraction, so the closest representable value is stored instead.
|
|
356
|
+
|
|
357
|
+
Example:
|
|
358
|
+
|
|
359
|
+
```ts
|
|
360
|
+
const value = 0.4;
|
|
361
|
+
|
|
362
|
+
instance.floatValue = value;
|
|
363
|
+
console.log(instance.floatValue); // 0.4000000059604645
|
|
364
|
+
```
|
|
365
|
+
|
|
366
|
+
This is not a bug in NBSP.
|
|
367
|
+
It is the actual value stored in memory and this behavior is universal
|
|
368
|
+
|
|
369
|
+
The same thing happens in other languages:
|
|
370
|
+
|
|
371
|
+
```cpp
|
|
372
|
+
float x = 0.4f;
|
|
373
|
+
printf("%.17f\n", x); // 0.4000000059604645
|
|
374
|
+
```
|
|
375
|
+
|
|
376
|
+
NBSP intentionally exposes the real binary value, without rounding or post-processing, to ensure:
|
|
377
|
+
|
|
378
|
+
- Full transparency
|
|
379
|
+
- Bit-exact compatibility with C/C++ structures
|
|
380
|
+
- Deterministic binary payloads
|
|
381
|
+
|
|
382
|
+
If you need to compare floating point values, never use strict equality:
|
|
383
|
+
|
|
384
|
+
a === b // ❌ unsafe for floats
|
|
385
|
+
|
|
386
|
+
Instead, compare with a tolerance:
|
|
387
|
+
|
|
388
|
+
```ts
|
|
389
|
+
Math.abs(a - b) < 1e-6; // ✅ safe
|
|
390
|
+
```
|
|
391
|
+
|
|
392
|
+
Or, when possible:
|
|
393
|
+
|
|
394
|
+
- Use integers (scaled values, fixed-point)
|
|
395
|
+
- Use FLOAT64 if higher precision is required.
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export { toString, toUint8Array } from "./memory.js";
|
|
2
|
-
export { structure } from "./structure.js";
|
|
3
|
-
export { charDataType, DataType } from "./type.js";
|
|
2
|
+
export { structure, type Structure, type StructureConstructor, type StructureFields, type StructureMethods, } from "./structure.js";
|
|
3
|
+
export { charDataType, DataType, type BindedType, type DomainObject, type ArrayDataType, type BigIntDataType, type Type, type NumericArrayDataType, type StructureArrayDataType, type StructureDefinitionDataType, type DataVale, } from "./type.js";
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EACL,SAAS,EACT,KAAK,SAAS,EACd,KAAK,oBAAoB,EACzB,KAAK,eAAe,EACpB,KAAK,gBAAgB,GACtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,YAAY,EACZ,QAAQ,EACR,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,IAAI,EACT,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,KAAK,2BAA2B,EAChC,KAAK,QAAQ,GACd,MAAM,WAAW,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export { toString, toUint8Array } from "./memory.js";
|
|
2
|
-
export { structure } from "./structure.js";
|
|
3
|
-
export { charDataType, DataType } from "./type.js";
|
|
2
|
+
export { structure, } from "./structure.js";
|
|
3
|
+
export { charDataType, DataType, } from "./type.js";
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EACL,SAAS,GAKV,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,YAAY,EACZ,QAAQ,GAUT,MAAM,WAAW,CAAC"}
|
package/dist/structure.d.ts
CHANGED
|
@@ -39,11 +39,6 @@ export interface StructureMethods<T extends DomainObject> {
|
|
|
39
39
|
toJson(): T;
|
|
40
40
|
}
|
|
41
41
|
export type Structure<T extends DomainObject> = T & StructureMethods<T>;
|
|
42
|
-
export declare function alignFields<T extends Record<string, Type>>(data: T, packed?: boolean): {
|
|
43
|
-
fields: StructureFields<T>;
|
|
44
|
-
size: number;
|
|
45
|
-
};
|
|
46
|
-
export declare function defineProxyProperty(target: Record<string, any>, key: string, field: AlignedData, buffer: Buffer, offset?: number): void;
|
|
47
42
|
export declare function structure<T extends DomainObject>(data: StructureDefinitionDataType<T>, opts?: {
|
|
48
43
|
packed?: boolean;
|
|
49
44
|
}): StructureConstructor<T>;
|
package/dist/structure.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"structure.d.ts","sourceRoot":"","sources":["../src/structure.ts"],"names":[],"mappings":"AAEA,OAAO,EAIL,KAAK,WAAW,EAEhB,KAAK,UAAU,EAEf,KAAK,YAAY,EACjB,KAAK,2BAA2B,EAChC,KAAK,IAAI,EACV,MAAM,WAAW,CAAC;AAEnB,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY,IAAI;KAClE,CAAC,IAAI,MAAM,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,GAAG,WAAW;CAChD,CAAC;AACF,MAAM,WAAW,oBAAoB,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY;IACzE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC;;;OAGG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;IACtC,KAAK,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;CACrD;AAED,MAAM,WAAW,gBAAgB,CAAC,CAAC,SAAS,YAAY;IACtD;;;OAGG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B;;;OAGG;IACH,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACpC;;OAEG;IACH,IAAI,IAAI,MAAM,CAAC;IACf;;OAEG;IACH,KAAK,IAAI,IAAI,CAAC;IACd;;OAEG;IACH,MAAM,IAAI,CAAC,CAAC;CACb;AAED,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,YAAY,IAAI,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"structure.d.ts","sourceRoot":"","sources":["../src/structure.ts"],"names":[],"mappings":"AAEA,OAAO,EAIL,KAAK,WAAW,EAEhB,KAAK,UAAU,EAEf,KAAK,YAAY,EACjB,KAAK,2BAA2B,EAChC,KAAK,IAAI,EACV,MAAM,WAAW,CAAC;AAEnB,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY,IAAI;KAClE,CAAC,IAAI,MAAM,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,GAAG,WAAW;CAChD,CAAC;AACF,MAAM,WAAW,oBAAoB,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY;IACzE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC;;;OAGG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;IACtC,KAAK,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;CACrD;AAED,MAAM,WAAW,gBAAgB,CAAC,CAAC,SAAS,YAAY;IACtD;;;OAGG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B;;;OAGG;IACH,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACpC;;OAEG;IACH,IAAI,IAAI,MAAM,CAAC;IACf;;OAEG;IACH,KAAK,IAAI,IAAI,CAAC;IACd;;OAEG;IACH,MAAM,IAAI,CAAC,CAAC;CACb;AAED,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,YAAY,IAAI,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;AA8QxE,wBAAgB,SAAS,CAAC,CAAC,SAAS,YAAY,EAC9C,IAAI,EAAE,2BAA2B,CAAC,CAAC,CAAC,EACpC,IAAI,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAC1B,oBAAoB,CAAC,CAAC,CAAC,CAsEzB"}
|
package/dist/structure.js
CHANGED
|
@@ -4,7 +4,7 @@ import { DataType, isArrayDataType, isStructureDataType, } from "./type.js";
|
|
|
4
4
|
function alignUp(n, align) {
|
|
5
5
|
return (n + align - 1) & ~(align - 1);
|
|
6
6
|
}
|
|
7
|
-
|
|
7
|
+
function alignFields(data, packed = false) {
|
|
8
8
|
const fields = {};
|
|
9
9
|
let offset = 0;
|
|
10
10
|
let maxAlign = 1;
|
|
@@ -28,7 +28,7 @@ export function alignFields(data, packed = false) {
|
|
|
28
28
|
const structSize = packed ? offset : alignUp(offset, maxAlign);
|
|
29
29
|
return { fields: Object.freeze(fields), size: structSize };
|
|
30
30
|
}
|
|
31
|
-
|
|
31
|
+
function defineProxyProperty(target, key, field, buffer, offset = 0) {
|
|
32
32
|
// console.log("Define property", target, key, field);
|
|
33
33
|
const isStructField = isStructureDataType(field.type);
|
|
34
34
|
const isArrayField = isArrayDataType(field.type);
|
package/dist/structure.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"structure.js","sourceRoot":"","sources":["../src/structure.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EACL,QAAQ,EACR,eAAe,EACf,mBAAmB,GAQpB,MAAM,WAAW,CAAC;AA6CnB,SAAS,OAAO,CAAC,CAAS,EAAE,KAAa;IACvC,OAAO,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;AACxC,CAAC;AACD,
|
|
1
|
+
{"version":3,"file":"structure.js","sourceRoot":"","sources":["../src/structure.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zzzeros0/nbsp",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"description": "Zero-copy fixed-size binary structures for NodeJS TypeScript",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -9,7 +9,9 @@
|
|
|
9
9
|
"build": "tsc",
|
|
10
10
|
"prepublishOnly": "npm run build"
|
|
11
11
|
},
|
|
12
|
-
"files": [
|
|
12
|
+
"files": [
|
|
13
|
+
"dist"
|
|
14
|
+
],
|
|
13
15
|
"exports": {
|
|
14
16
|
".": {
|
|
15
17
|
"import": "./dist/index.js",
|