nv-facutil-slct-ta 1.1.5 → 1.1.6

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 (2) hide show
  1. package/index.js +42 -0
  2. package/package.json +1 -1
package/index.js CHANGED
@@ -592,6 +592,45 @@ const fmt_data = (data)=>{
592
592
  }
593
593
  }
594
594
 
595
+ ////
596
+ const NUMLIKE_R_FMP = {
597
+ "i8": (dv, offset, little_endian = true) => dv.getInt8(offset, little_endian),
598
+ "u8": (dv, offset, little_endian = true) => dv.getUint8(offset, little_endian),
599
+ "i16": (dv, offset, little_endian = true) => dv.getInt16(offset, little_endian),
600
+ "u16": (dv, offset, little_endian = true) => dv.getUint16(offset, little_endian),
601
+ "i32": (dv, offset, little_endian = true) => dv.getInt32(offset, little_endian),
602
+ "u32": (dv, offset, little_endian = true) => dv.getUint32(offset, little_endian),
603
+ "i64": (dv, offset, little_endian = true) => dv.getBigInt64(offset, little_endian),
604
+ "u64": (dv, offset, little_endian = true) => dv.getBigUint64(offset, little_endian),
605
+ "f32": (dv, offset, little_endian = true) => dv.getFloat32(offset, little_endian),
606
+ "f64": (dv, offset, little_endian = true) => dv.getFloat64(offset, little_endian),
607
+ };
608
+
609
+ if (globalThis.Float16Array) {
610
+ NUMLIKE_R_FMP.f16 = (dv, offset, little_endian = true) => dv.getFloat16(offset, little_endian);
611
+ }
612
+
613
+ const NUMLIKE_W_FMP = {
614
+ "i8": (dv, offset, v, little_endian = true) => dv.setInt8(offset, v, little_endian),
615
+ "u8": (dv, offset, v, little_endian = true) => dv.setUint8(offset, v, little_endian),
616
+ "i16": (dv, offset, v, little_endian = true) => dv.setInt16(offset, v, little_endian),
617
+ "u16": (dv, offset, v, little_endian = true) => dv.setUint16(offset, v, little_endian),
618
+ "i32": (dv, offset, v, little_endian = true) => dv.setInt32(offset, v, little_endian),
619
+ "u32": (dv, offset, v, little_endian = true) => dv.setUint32(offset, v, little_endian),
620
+ "i64": (dv, offset, v, little_endian = true) => dv.setBigInt64(offset, BigInt(v), little_endian),
621
+ "u64": (dv, offset, v, little_endian = true) => dv.setBigUint64(offset, BigInt(v), little_endian),
622
+ "f32": (dv, offset, v, little_endian = true) => dv.setFloat32(offset, v, little_endian),
623
+ "f64": (dv, offset, v, little_endian = true) => dv.setFloat64(offset, v, little_endian),
624
+ };
625
+
626
+ if (globalThis.Float16Array) {
627
+ NUMLIKE_W_FMP.f16 = (dv, offset, v, little_endian = true) => dv.setFloat16(offset, v, little_endian);
628
+ }
629
+
630
+ ////
631
+
632
+ const read_dv_with_nm = (nm,dv,offset,v,le=true) => NUMLIKE_R_FMP[nm](dv,offset,le);
633
+ const write_dv_with_nm = (nm,dv,offset,v,le=true) => NUMLIKE_W_FMP[nm](dv,offset,v,le);
595
634
 
596
635
  module.exports = {
597
636
  tcate, is_signed_int_cls , is_unsigned_int_cls,
@@ -649,7 +688,10 @@ module.exports = {
649
688
  min_tacls,max_tacls,
650
689
  read_dv_with_cls,
651
690
  write_dv_with_cls,
691
+ read_dv_with_nm,
692
+ write_dv_with_nm,
652
693
  ////
653
694
  fmt_underlying,
654
695
  fmt_data,
696
+ ////
655
697
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nv-facutil-slct-ta",
3
- "version": "1.1.5",
3
+ "version": "1.1.6",
4
4
  "main": "index.js",
5
5
  "scripts": {
6
6
  "test": "echo \"Error: no test specified\" && exit 1"