node-opcua-variant 2.163.0 → 2.164.0

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/dist/variant.js CHANGED
@@ -85,19 +85,21 @@ class Variant extends node_opcua_factory_1.BaseUAObject {
85
85
  this.dimensions = options2.dimensions || null;
86
86
  if (this.dataType === DataType_enum_1.DataType.ExtensionObject) {
87
87
  if (this.arrayType === VariantArrayType_enum_1.VariantArrayType.Scalar) {
88
- /* istanbul ignore next */
88
+ /* c8 ignore start */
89
89
  if (this.value && !(this.value instanceof node_opcua_factory_1.BaseUAObject)) {
90
90
  throw new Error(`A variant with DataType.ExtensionObject must have a ExtensionObject value.\nMake sure that you specify a valid ExtensionObject to the value options in the Variant Constructor`);
91
91
  }
92
+ /* c8 ignore stop */
92
93
  }
93
94
  else {
94
95
  if (this.value) {
96
+ /* c8 ignore start */
95
97
  for (const e of this.value) {
96
- /* istanbul ignore next */
97
98
  if (e && !(e instanceof node_opcua_factory_1.BaseUAObject)) {
98
99
  throw new Error("A variant with DataType.ExtensionObject must have a ExtensionObject value\nMake sure that you specify a valid ExtensionObject for all element of the value array passed to the Variant Constructor`");
99
100
  }
100
101
  }
102
+ /* c8 ignore stop */
101
103
  }
102
104
  }
103
105
  }
@@ -210,11 +212,39 @@ function encodeVariant(variant, stream) {
210
212
  encodeDimension(variant.dimensions, stream);
211
213
  }
212
214
  }
213
- /***
214
- * @private
215
- *
216
- * istanbul ignore function
217
- */
215
+ /* c8 ignore start */
216
+ function _decodeVariantArrayDebug(stream, decode, tracer, dataType) {
217
+ let cursorBefore = stream.length;
218
+ const length = (0, node_opcua_basic_types_1.decodeUInt32)(stream);
219
+ let i;
220
+ let element;
221
+ tracer.trace("start_array", "Variant", -1, cursorBefore, stream.length);
222
+ if (length === 0xffffffff) {
223
+ // empty array
224
+ tracer.trace("end_array", "Variant", stream.length);
225
+ return;
226
+ }
227
+ const n1 = Math.min(10, length);
228
+ // display a maximum of 10 elements
229
+ for (i = 0; i < n1; i++) {
230
+ tracer.trace("start_element", "", i);
231
+ cursorBefore = stream.length;
232
+ element = decode(stream);
233
+ // arr.push(element);
234
+ tracer.trace("member", "Variant", element, cursorBefore, stream.length, DataType_enum_1.DataType[dataType]);
235
+ tracer.trace("end_element", "", i);
236
+ }
237
+ // keep reading
238
+ if (length >= n1) {
239
+ for (i = n1; i < length; i++) {
240
+ decode(stream);
241
+ }
242
+ tracer.trace("start_element", "", n1);
243
+ tracer.trace("member", "Variant", "...", cursorBefore, stream.length, DataType_enum_1.DataType[dataType]);
244
+ tracer.trace("end_element", "", n1);
245
+ }
246
+ tracer.trace("end_array", "Variant", stream.length);
247
+ }
218
248
  function decodeDebugVariant(self, stream, options) {
219
249
  const tracer = options.tracer;
220
250
  const encodingByte = (0, node_opcua_basic_types_1.decodeUInt8)(stream);
@@ -225,7 +255,7 @@ function decodeDebugVariant(self, stream, options) {
225
255
  tracer.dump("isArray: ", isArray ? "true" : "false");
226
256
  tracer.dump("dimension: ", hasDimension);
227
257
  const decode = (0, node_opcua_factory_1.findBuiltInType)(DataType_enum_1.DataType[self.dataType]).decode;
228
- /* istanbul ignore next */
258
+ /* c8 ignore next */
229
259
  if (!decode) {
230
260
  throw new Error("Variant.decode : cannot find decoder for type " + DataType_enum_1.DataType[self.dataType]);
231
261
  }
@@ -252,6 +282,7 @@ function decodeDebugVariant(self, stream, options) {
252
282
  const verification = calculate_product(self.dimensions);
253
283
  }
254
284
  }
285
+ /* c8 ignore stop */
255
286
  function internalDecodeVariant(self, stream) {
256
287
  const encodingByte = (0, node_opcua_basic_types_1.decodeUInt8)(stream);
257
288
  const isArray = (encodingByte & exports.VARIANT_ARRAY_MASK) === exports.VARIANT_ARRAY_MASK;
@@ -269,10 +300,11 @@ function internalDecodeVariant(self, stream) {
269
300
  if (hasDimension) {
270
301
  self.dimensions = decodeDimension(stream);
271
302
  const verification = calculate_product(self.dimensions);
272
- /* istanbul ignore next */
303
+ /* c8 ignore start */
273
304
  if (verification !== self.value.length) {
274
305
  throw new Error("internalDecodeVariant: BadDecodingError: inconsistent matrix ");
275
306
  }
307
+ /* c8 ignore stop */
276
308
  }
277
309
  }
278
310
  /***
@@ -318,29 +350,32 @@ function constructHook(options) {
318
350
  // dataType could be a string
319
351
  if (typeof options.dataType === "string") {
320
352
  const d = (0, node_opcua_factory_1.findBuiltInType)(options.dataType);
321
- /* istanbul ignore next */
353
+ /* c8 ignore start */
322
354
  if (!d) {
323
355
  throw new Error("Cannot find Built-In data type or any DataType resolving to " + options.dataType);
324
356
  }
357
+ /* c8 ignore stop */
325
358
  options.dataType = DataType_enum_1.DataType[d.name];
326
359
  }
327
360
  // array type could be a string
328
361
  if (typeof options.arrayType === "string") {
329
362
  const at = VariantArrayType_enum_1.VariantArrayType[options.arrayType];
330
- /* istanbul ignore next */
363
+ /* c8 ignore start */
331
364
  if (at === undefined) {
332
365
  throw new Error("ArrayType: invalid " + options.arrayType);
333
366
  }
367
+ /* c8 ignore stop */
334
368
  options.arrayType = at;
335
369
  }
336
370
  if (isArrayTypeUnspecified && Array.isArray(options.value)) {
337
371
  // when using UInt64 ou Int64 arrayType must be specified , as automatic detection cannot be made
338
- /* istanbul ignore next */
372
+ /* c8 ignore start */
339
373
  if (options.dataType === DataType_enum_1.DataType.UInt64 || options.dataType === DataType_enum_1.DataType.Int64) {
340
374
  // we do nothing here ....
341
375
  throw new Error("Variant#constructor : when using UInt64 ou Int64" +
342
376
  " arrayType must be specified , as automatic detection cannot be made");
343
377
  }
378
+ /* c8 ignore stop */
344
379
  else {
345
380
  options.arrayType = VariantArrayType_enum_1.VariantArrayType.Array;
346
381
  isArrayTypeUnspecified = false;
@@ -348,21 +383,19 @@ function constructHook(options) {
348
383
  }
349
384
  if (options.arrayType !== VariantArrayType_enum_1.VariantArrayType.Scalar && !isArrayTypeUnspecified) {
350
385
  (0, node_opcua_assert_1.assert)(options.arrayType === VariantArrayType_enum_1.VariantArrayType.Array || options.arrayType === VariantArrayType_enum_1.VariantArrayType.Matrix);
351
- /* istanbul ignore else */
352
386
  if (options.arrayType === VariantArrayType_enum_1.VariantArrayType.Array) {
353
387
  const value1 = coerceVariantArray(options.dataType, options.value);
354
388
  (0, node_opcua_assert_1.assert)(value1 === null || value1 !== options.value);
355
389
  options.value = value1;
356
390
  }
391
+ /* c8 ignore start */
357
392
  else {
358
393
  (0, node_opcua_assert_1.assert)(options.arrayType === VariantArrayType_enum_1.VariantArrayType.Matrix);
359
394
  options.value = options.value || [];
360
395
  options.value = coerceVariantArray(options.dataType, options.value);
361
- /* istanbul ignore next */
362
396
  if (!options.dimensions) {
363
397
  throw new Error("Matrix Variant : missing dimensions");
364
398
  }
365
- /* istanbul ignore next */
366
399
  if (options.value.length != 0 && options.value.length !== calculate_product(options.dimensions)) {
367
400
  throw new Error("Matrix Variant : invalid value size = options.value.length " +
368
401
  options.value.length +
@@ -372,6 +405,7 @@ function constructHook(options) {
372
405
  JSON.stringify(options.dimensions));
373
406
  }
374
407
  }
408
+ /* c8 ignore stop */
375
409
  }
376
410
  else {
377
411
  (0, node_opcua_assert_1.assert)(options.arrayType === VariantArrayType_enum_1.VariantArrayType.Scalar || options.arrayType === undefined);
@@ -379,7 +413,7 @@ function constructHook(options) {
379
413
  const tmp = options.value;
380
414
  // scalar
381
415
  options.value = coerceVariantType(options.dataType, options.value);
382
- /* istanbul ignore next */
416
+ /* c8 ignore start */
383
417
  if (!isValidVariant(options.arrayType, options.dataType, options.value, null)) {
384
418
  throw new Error("Invalid variant arrayType: " +
385
419
  VariantArrayType_enum_1.VariantArrayType[options.arrayType] +
@@ -391,6 +425,7 @@ function constructHook(options) {
391
425
  typeof options.value +
392
426
  " )");
393
427
  }
428
+ /* c8 ignore stop */
394
429
  }
395
430
  if (options.dimensions) {
396
431
  (0, node_opcua_assert_1.assert)(options.arrayType === VariantArrayType_enum_1.VariantArrayType.Matrix, "dimension can only provided if variant is a matrix");
@@ -398,7 +433,7 @@ function constructHook(options) {
398
433
  return options;
399
434
  }
400
435
  function calculate_product(array) {
401
- /* istanbul ignore next */
436
+ /* c8 ignore next */
402
437
  if (!array || array.length === 0) {
403
438
  return 0;
404
439
  }
@@ -406,42 +441,41 @@ function calculate_product(array) {
406
441
  }
407
442
  function get_encoder(dataType) {
408
443
  const dataTypeAsString = typeof dataType === "string" ? dataType : DataType_enum_1.DataType[dataType];
409
- /* istanbul ignore next */
444
+ /* c8 ignore start */
410
445
  if (!dataTypeAsString) {
411
446
  throw new Error("invalid dataType " + dataType);
412
447
  }
448
+ /* c8 ignore stop */
413
449
  const encode = (0, node_opcua_factory_1.findBuiltInType)(dataTypeAsString).encode;
414
- /* istanbul ignore next */
450
+ /* c8 ignore start */
415
451
  if (!encode) {
416
452
  throw new Error("Cannot find encode function for dataType " + dataTypeAsString);
417
453
  }
454
+ /* c8 ignore stop */
418
455
  return encode;
419
456
  }
420
457
  function get_decoder(dataType) {
421
458
  const dataTypeAsString = DataType_enum_1.DataType[dataType];
422
459
  const decode = (0, node_opcua_factory_1.findBuiltInType)(dataTypeAsString).decode;
423
- /* istanbul ignore next */
460
+ /* c8 ignore start */
424
461
  if (!decode) {
425
462
  throw new Error("Variant.decode : cannot find decoder for type " + dataTypeAsString);
426
463
  }
464
+ /* c8 ignore stop */
427
465
  return decode;
428
466
  }
429
467
  const displayWarning = true;
430
468
  function convertTo(dataType, arrayTypeConstructor, value) {
431
- // istanbul ignore next
469
+ // c8 ignore next
432
470
  if (value === undefined || value === null) {
433
471
  return null;
434
472
  }
435
473
  if (arrayTypeConstructor && value instanceof arrayTypeConstructor) {
436
- const newArray = new value.constructor(value.length); // deep copy
437
- /* istanbul ignore if */
438
- if (newArray instanceof Buffer) {
439
- // required for nodejs 4.x
440
- value.copy(newArray);
441
- }
442
- else {
443
- newArray.set(value);
474
+ if (value instanceof Buffer) {
475
+ return Buffer.from(value); // preserve Buffer prototype
444
476
  }
477
+ const newArray = new arrayTypeConstructor(value.length); // deep copy
478
+ newArray.set(value);
445
479
  return newArray;
446
480
  }
447
481
  const coerceFunc = coerceVariantType.bind(null, dataType);
@@ -450,7 +484,7 @@ function convertTo(dataType, arrayTypeConstructor, value) {
450
484
  for (let i = 0; i < n; i++) {
451
485
  newArr[i] = coerceFunc(value[i]);
452
486
  }
453
- // istanbul ignore next
487
+ // c8 ignore next
454
488
  if (arrayTypeConstructor && displayWarning && n > 10) {
455
489
  warningLog("Warning ! an array containing " + DataType_enum_1.DataType[dataType] + " elements has been provided as a generic array. ");
456
490
  warningLog(" This is inefficient as every array value will " + "have to be coerced and verified against the expected type");
@@ -497,7 +531,7 @@ function encodeVariantArray(dataType, stream, value) {
497
531
  }
498
532
  function decodeTypedArray(arrayTypeConstructor, stream) {
499
533
  const length = (0, node_opcua_basic_types_1.decodeUInt32)(stream);
500
- /* istanbul ignore next */
534
+ /* c8 ignore next */
501
535
  if (length === 0xffffffff) {
502
536
  return null;
503
537
  }
@@ -514,7 +548,7 @@ function decodeTypedArray(arrayTypeConstructor, stream) {
514
548
  }
515
549
  function decodeGeneralArray(dataType, stream) {
516
550
  const length = (0, node_opcua_basic_types_1.decodeUInt32)(stream);
517
- /* istanbul ignore next */
551
+ /* c8 ignore next */
518
552
  if (length === 0xffffffff) {
519
553
  return null;
520
554
  }
@@ -552,38 +586,6 @@ _declareTypeArrayHelper(DataType_enum_1.DataType.Int16, Int16Array);
552
586
  _declareTypeArrayHelper(DataType_enum_1.DataType.Int32, Int32Array);
553
587
  _declareTypeArrayHelper(DataType_enum_1.DataType.UInt16, Uint16Array);
554
588
  _declareTypeArrayHelper(DataType_enum_1.DataType.UInt32, Uint32Array);
555
- function _decodeVariantArrayDebug(stream, decode, tracer, dataType) {
556
- let cursorBefore = stream.length;
557
- const length = (0, node_opcua_basic_types_1.decodeUInt32)(stream);
558
- let i;
559
- let element;
560
- tracer.trace("start_array", "Variant", -1, cursorBefore, stream.length);
561
- if (length === 0xffffffff) {
562
- // empty array
563
- tracer.trace("end_array", "Variant", stream.length);
564
- return;
565
- }
566
- const n1 = Math.min(10, length);
567
- // display a maximum of 10 elements
568
- for (i = 0; i < n1; i++) {
569
- tracer.trace("start_element", "", i);
570
- cursorBefore = stream.length;
571
- element = decode(stream);
572
- // arr.push(element);
573
- tracer.trace("member", "Variant", element, cursorBefore, stream.length, DataType_enum_1.DataType[dataType]);
574
- tracer.trace("end_element", "", i);
575
- }
576
- // keep reading
577
- if (length >= n1) {
578
- for (i = n1; i < length; i++) {
579
- decode(stream);
580
- }
581
- tracer.trace("start_element", "", n1);
582
- tracer.trace("member", "Variant", "...", cursorBefore, stream.length, DataType_enum_1.DataType[dataType]);
583
- tracer.trace("end_element", "", n1);
584
- }
585
- tracer.trace("end_array", "Variant", stream.length);
586
- }
587
589
  function decodeDimension(stream) {
588
590
  return decodeGeneralArray(DataType_enum_1.DataType.UInt32, stream);
589
591
  }
@@ -601,14 +603,15 @@ function coerceVariantType(dataType, value) {
601
603
  if (value === undefined) {
602
604
  value = null;
603
605
  }
606
+ /* c8 ignore start */
604
607
  if (isEnumerationItem(value)) {
605
608
  // OPCUA Specification 1.0.3 5.8.2 encoding rules for various dataType:
606
609
  // [...]Enumeration are always encoded as Int32 on the wire [...]
607
- /* istanbul ignore next */
608
610
  if (dataType !== DataType_enum_1.DataType.Int32 && dataType !== DataType_enum_1.DataType.ExtensionObject) {
609
611
  throw new Error("expecting DataType.Int32 for enumeration values ;" + " got DataType." + dataType.toString() + " instead");
610
612
  }
611
613
  }
614
+ /* c8 ignore stop */
612
615
  switch (dataType) {
613
616
  case DataType_enum_1.DataType.Null:
614
617
  value = null;
@@ -629,10 +632,11 @@ function coerceVariantType(dataType, value) {
629
632
  case DataType_enum_1.DataType.UInt16:
630
633
  (0, node_opcua_assert_1.assert)(value !== undefined);
631
634
  value = parseInt(value, 10);
632
- /* istanbul ignore next */
635
+ /* c8 ignore start */
633
636
  if (!isFinite(value)) {
634
637
  throw new Error("expecting a number " + value);
635
638
  }
639
+ /* c8 ignore stop */
636
640
  break;
637
641
  case DataType_enum_1.DataType.UInt64:
638
642
  value = (0, node_opcua_basic_types_1.coerceUInt64)(value);
@@ -650,10 +654,11 @@ function coerceVariantType(dataType, value) {
650
654
  break;
651
655
  case DataType_enum_1.DataType.ByteString:
652
656
  value = typeof value === "string" ? Buffer.from(value) : value;
653
- // istanbul ignore next
657
+ /* c8 ignore start */
654
658
  if (!(value === null || value instanceof Buffer)) {
655
659
  throw new Error("ByteString should be null or a Buffer");
656
660
  }
661
+ /* c8 ignore stop */
657
662
  (0, node_opcua_assert_1.assert)(value === null || value instanceof Buffer);
658
663
  break;
659
664
  default:
@@ -738,7 +743,7 @@ function isValidArrayVariant(dataType, value) {
738
743
  }
739
744
  return true;
740
745
  }
741
- /*istanbul ignore next*/
746
+ /* c8 ignore start */
742
747
  function isValidMatrixVariant(dataType, value, dimensions) {
743
748
  if (!dimensions) {
744
749
  return false;
@@ -748,6 +753,7 @@ function isValidMatrixVariant(dataType, value, dimensions) {
748
753
  }
749
754
  return true;
750
755
  }
756
+ /* c8 ignore stop */
751
757
  function isValidVariant(arrayType, dataType, value, dimensions) {
752
758
  switch (arrayType) {
753
759
  case VariantArrayType_enum_1.VariantArrayType.Scalar:
@@ -819,7 +825,7 @@ function __check_same_object(o1, o2) {
819
825
  }
820
826
  const keys1 = Object.keys(o1);
821
827
  const keys2 = Object.keys(o2);
822
- // istanbul ignore next
828
+ /* c8 ignore next */
823
829
  if (keys1.length !== keys2.length) {
824
830
  return false;
825
831
  }
@@ -1 +1 @@
1
- {"version":3,"file":"variant.js","sourceRoot":"","sources":["../source/variant.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"variant.js","sourceRoot":"","sources":["../source/variant.ts"],"names":[],"mappings":"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"}
@@ -33,15 +33,18 @@ function verifyRankAndDimensions(options) {
33
33
  if (options.valueRank > 0 && (!options.arrayDimensions || options.arrayDimensions.length === 0)) {
34
34
  options.arrayDimensions = new Array(options.valueRank).fill(0);
35
35
  }
36
- // istanbul ignore next
36
+ // c8 ignore start
37
37
  if (!options.arrayDimensions && options.valueRank > 0) {
38
38
  throw new Error("[CONFORMANCE] arrayDimension must be specified if valueRank >0 " + options.valueRank);
39
39
  }
40
+ // c8 ignore stop
41
+ // c8 ignore start
40
42
  if (options.valueRank > 0 && options.arrayDimensions.length !== options.valueRank) {
41
43
  throw new Error("[CONFORMANCE] when valueRank> 0, arrayDimensions must have valueRank elements, this.valueRank =" +
42
44
  options.valueRank +
43
45
  " whereas arrayDimensions.length =" +
44
46
  options.arrayDimensions.length);
45
47
  }
48
+ // c8 ignore stop
46
49
  }
47
50
  //# sourceMappingURL=verify_rank_and_dimension.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"verify_rank_and_dimension.js","sourceRoot":"","sources":["../source/verify_rank_and_dimension.ts"],"names":[],"mappings":";;;;;AAYA,0DAiCC;AA7CD,0EAAuC;AAEvC;;;;;;;;GAQG;AAEH,SAAgB,uBAAuB,CAAC,OAAkE;IACtG,OAAO,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,IAAI,IAAI,CAAC;IAC1D,IAAA,2BAAM,EAAC,OAAO,CAAC,eAAe,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC;IAEnF,wEAAwE;IACxE,IAAI,OAAO,CAAC,eAAe,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QAC7D,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,eAAe,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,SAAS;IAC5F,IAAA,2BAAM,EAAC,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC;IAE9C,IAAI,OAAO,CAAC,eAAe,IAAI,OAAO,CAAC,SAAS,IAAI,CAAC,EAAE,CAAC;QACpD,IAAI,OAAO,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;QACnF,CAAC;QACD,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IACnC,CAAC;IACD,iDAAiD;IACjD,IAAI,OAAO,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,eAAe,IAAI,OAAO,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;QAC9F,OAAO,CAAC,eAAe,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACnE,CAAC;IACD,uBAAuB;IACvB,IAAI,CAAC,OAAO,CAAC,eAAe,IAAI,OAAO,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;QACpD,MAAM,IAAI,KAAK,CAAC,kEAAkE,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IAC5G,CAAC;IACD,IAAI,OAAO,CAAC,SAAS,GAAG,CAAC,IAAI,OAAO,CAAC,eAAgB,CAAC,MAAM,KAAK,OAAO,CAAC,SAAS,EAAE,CAAC;QACjF,MAAM,IAAI,KAAK,CACX,iGAAiG;YAC7F,OAAO,CAAC,SAAS;YACjB,oCAAoC;YACpC,OAAO,CAAC,eAAgB,CAAC,MAAM,CACtC,CAAC;IACN,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"verify_rank_and_dimension.js","sourceRoot":"","sources":["../source/verify_rank_and_dimension.ts"],"names":[],"mappings":";;;;;AAYA,0DAqCC;AAjDD,0EAAuC;AAEvC;;;;;;;;GAQG;AAEH,SAAgB,uBAAuB,CAAC,OAAkE;IACtG,OAAO,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,IAAI,IAAI,CAAC;IAC1D,IAAA,2BAAM,EAAC,OAAO,CAAC,eAAe,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC;IAEnF,wEAAwE;IACxE,IAAI,OAAO,CAAC,eAAe,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QAC7D,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,eAAe,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,SAAS;IAC5F,IAAA,2BAAM,EAAC,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC;IAE9C,IAAI,OAAO,CAAC,eAAe,IAAI,OAAO,CAAC,SAAS,IAAI,CAAC,EAAE,CAAC;QACpD,IAAI,OAAO,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;QACnF,CAAC;QACD,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IACnC,CAAC;IACD,iDAAiD;IACjD,IAAI,OAAO,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,eAAe,IAAI,OAAO,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;QAC9F,OAAO,CAAC,eAAe,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACnE,CAAC;IACD,kBAAkB;IAClB,IAAI,CAAC,OAAO,CAAC,eAAe,IAAI,OAAO,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;QACpD,MAAM,IAAI,KAAK,CAAC,kEAAkE,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IAC5G,CAAC;IACD,iBAAiB;IAEjB,kBAAkB;IAClB,IAAI,OAAO,CAAC,SAAS,GAAG,CAAC,IAAI,OAAO,CAAC,eAAgB,CAAC,MAAM,KAAK,OAAO,CAAC,SAAS,EAAE,CAAC;QACjF,MAAM,IAAI,KAAK,CACX,iGAAiG;YACjG,OAAO,CAAC,SAAS;YACjB,oCAAoC;YACpC,OAAO,CAAC,eAAgB,CAAC,MAAM,CAClC,CAAC;IACN,CAAC;IACD,iBAAiB;AACrB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "node-opcua-variant",
3
- "version": "2.163.0",
3
+ "version": "2.164.0",
4
4
  "description": "pure nodejs OPCUA SDK - module variant",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -12,26 +12,26 @@
12
12
  "clean": "npx rimraf -g node_modules dist *.tsbuildinfo"
13
13
  },
14
14
  "dependencies": {
15
- "node-opcua-assert": "2.157.0",
16
- "node-opcua-basic-types": "2.162.0",
17
- "node-opcua-binary-stream": "2.162.0",
18
- "node-opcua-data-model": "2.163.0",
19
- "node-opcua-debug": "2.157.0",
20
- "node-opcua-enum": "2.157.0",
21
- "node-opcua-factory": "2.163.0",
22
- "node-opcua-nodeid": "2.157.0",
23
- "node-opcua-utils": "2.157.0"
15
+ "node-opcua-assert": "2.164.0",
16
+ "node-opcua-basic-types": "2.164.0",
17
+ "node-opcua-binary-stream": "2.164.0",
18
+ "node-opcua-data-model": "2.164.0",
19
+ "node-opcua-debug": "2.164.0",
20
+ "node-opcua-enum": "2.164.0",
21
+ "node-opcua-factory": "2.164.0",
22
+ "node-opcua-nodeid": "2.164.0",
23
+ "node-opcua-utils": "2.164.0"
24
24
  },
25
25
  "devDependencies": {
26
- "@types/lodash": "4.17.23",
26
+ "@types/lodash": "4.17.24",
27
27
  "@types/underscore": "1.13.0",
28
28
  "lodash": "4.17.23",
29
- "node-opcua-benchmarker": "2.157.0",
30
- "node-opcua-extension-object": "2.163.0",
31
- "node-opcua-numeric-range": "2.163.0",
32
- "node-opcua-packet-analyzer": "2.163.0",
33
- "node-opcua-status-code": "2.162.0",
34
- "underscore": "^1.13.7"
29
+ "node-opcua-benchmarker": "2.164.0",
30
+ "node-opcua-extension-object": "2.164.0",
31
+ "node-opcua-numeric-range": "2.164.0",
32
+ "node-opcua-packet-analyzer": "2.164.0",
33
+ "node-opcua-status-code": "2.164.0",
34
+ "underscore": "^1.13.8"
35
35
  },
36
36
  "author": "Etienne Rossignon",
37
37
  "license": "MIT",
@@ -48,7 +48,7 @@
48
48
  "internet of things"
49
49
  ],
50
50
  "homepage": "http://node-opcua.github.io/",
51
- "gitHead": "20862daa7ac42893d32d2bcb4dcecc272c320a67",
51
+ "gitHead": "eb76d34b885c7584785d8eff69ada66f95b55c2e",
52
52
  "files": [
53
53
  "dist",
54
54
  "source"
package/source/variant.ts CHANGED
@@ -130,22 +130,24 @@ export class Variant extends BaseUAObject {
130
130
 
131
131
  if (this.dataType === DataType.ExtensionObject) {
132
132
  if (this.arrayType === VariantArrayType.Scalar) {
133
- /* istanbul ignore next */
133
+ /* c8 ignore start */
134
134
  if (this.value && !(this.value instanceof BaseUAObject)) {
135
135
  throw new Error(
136
136
  `A variant with DataType.ExtensionObject must have a ExtensionObject value.\nMake sure that you specify a valid ExtensionObject to the value options in the Variant Constructor`
137
137
  );
138
138
  }
139
+ /* c8 ignore stop */
139
140
  } else {
140
141
  if (this.value) {
142
+ /* c8 ignore start */
141
143
  for (const e of this.value) {
142
- /* istanbul ignore next */
143
144
  if (e && !(e instanceof BaseUAObject)) {
144
145
  throw new Error(
145
146
  "A variant with DataType.ExtensionObject must have a ExtensionObject value\nMake sure that you specify a valid ExtensionObject for all element of the value array passed to the Variant Constructor`"
146
147
  );
147
148
  }
148
149
  }
150
+ /* c8 ignore stop */
149
151
  }
150
152
  }
151
153
  }
@@ -272,11 +274,43 @@ export function encodeVariant(variant: Variant | undefined | null, stream: Outpu
272
274
  }
273
275
  }
274
276
 
275
- /***
276
- * @private
277
- *
278
- * istanbul ignore function
279
- */
277
+ /* c8 ignore start */
278
+ function _decodeVariantArrayDebug(stream: BinaryStream, decode: any, tracer: any, dataType: DataType) {
279
+ let cursorBefore = stream.length;
280
+ const length = decodeUInt32(stream);
281
+
282
+ let i;
283
+ let element;
284
+ tracer.trace("start_array", "Variant", -1, cursorBefore, stream.length);
285
+ if (length === 0xffffffff) {
286
+ // empty array
287
+ tracer.trace("end_array", "Variant", stream.length);
288
+ return;
289
+ }
290
+
291
+ const n1 = Math.min(10, length);
292
+
293
+ // display a maximum of 10 elements
294
+ for (i = 0; i < n1; i++) {
295
+ tracer.trace("start_element", "", i);
296
+ cursorBefore = stream.length;
297
+ element = decode(stream);
298
+ // arr.push(element);
299
+ tracer.trace("member", "Variant", element, cursorBefore, stream.length, DataType[dataType]);
300
+ tracer.trace("end_element", "", i);
301
+ }
302
+ // keep reading
303
+ if (length >= n1) {
304
+ for (i = n1; i < length; i++) {
305
+ decode(stream);
306
+ }
307
+ tracer.trace("start_element", "", n1);
308
+ tracer.trace("member", "Variant", "...", cursorBefore, stream.length, DataType[dataType]);
309
+ tracer.trace("end_element", "", n1);
310
+ }
311
+ tracer.trace("end_array", "Variant", stream.length);
312
+ }
313
+
280
314
  function decodeDebugVariant(self: Variant, stream: BinaryStream, options: DecodeDebugOptions): void {
281
315
  const tracer = options.tracer;
282
316
 
@@ -293,7 +327,7 @@ function decodeDebugVariant(self: Variant, stream: BinaryStream, options: Decode
293
327
 
294
328
  const decode = findBuiltInType(DataType[self.dataType]).decode;
295
329
 
296
- /* istanbul ignore next */
330
+ /* c8 ignore next */
297
331
  if (!decode) {
298
332
  throw new Error("Variant.decode : cannot find decoder for type " + DataType[self.dataType]);
299
333
  }
@@ -322,7 +356,7 @@ function decodeDebugVariant(self: Variant, stream: BinaryStream, options: Decode
322
356
  const verification = calculate_product(self.dimensions);
323
357
  }
324
358
  }
325
-
359
+ /* c8 ignore stop */
326
360
  function internalDecodeVariant(self: Variant, stream: BinaryStream) {
327
361
  const encodingByte = decodeUInt8(stream);
328
362
 
@@ -343,10 +377,11 @@ function internalDecodeVariant(self: Variant, stream: BinaryStream) {
343
377
  if (hasDimension) {
344
378
  self.dimensions = decodeDimension(stream);
345
379
  const verification = calculate_product(self.dimensions);
346
- /* istanbul ignore next */
380
+ /* c8 ignore start */
347
381
  if (verification !== self.value.length) {
348
382
  throw new Error("internalDecodeVariant: BadDecodingError: inconsistent matrix ");
349
383
  }
384
+ /* c8 ignore stop */
350
385
  }
351
386
  }
352
387
 
@@ -395,34 +430,38 @@ function constructHook(options: VariantOptions | Variant): VariantOptions2 {
395
430
  // dataType could be a string
396
431
  if (typeof options.dataType === "string") {
397
432
  const d = findBuiltInType(options.dataType);
398
- /* istanbul ignore next */
433
+ /* c8 ignore start */
399
434
  if (!d) {
400
435
  throw new Error("Cannot find Built-In data type or any DataType resolving to " + options.dataType);
401
436
  }
437
+ /* c8 ignore stop */
402
438
  options.dataType = DataType[d.name as keyof typeof DataType];
403
439
  }
404
440
 
405
441
  // array type could be a string
406
442
  if (typeof options.arrayType === "string") {
407
443
  const at: VariantArrayType | undefined = (VariantArrayType as any)[options.arrayType];
408
- /* istanbul ignore next */
444
+ /* c8 ignore start */
409
445
  if (at === undefined) {
410
446
  throw new Error("ArrayType: invalid " + options.arrayType);
411
447
  }
448
+ /* c8 ignore stop */
412
449
  options.arrayType = at;
413
450
  }
414
451
 
415
452
  if (isArrayTypeUnspecified && Array.isArray(options.value)) {
416
453
  // when using UInt64 ou Int64 arrayType must be specified , as automatic detection cannot be made
417
454
 
418
- /* istanbul ignore next */
455
+ /* c8 ignore start */
419
456
  if (options.dataType === DataType.UInt64 || options.dataType === DataType.Int64) {
420
457
  // we do nothing here ....
421
458
  throw new Error(
422
459
  "Variant#constructor : when using UInt64 ou Int64" +
423
460
  " arrayType must be specified , as automatic detection cannot be made"
424
461
  );
425
- } else {
462
+ }
463
+ /* c8 ignore stop */
464
+ else {
426
465
  options.arrayType = VariantArrayType.Array;
427
466
  isArrayTypeUnspecified = false;
428
467
  }
@@ -430,22 +469,21 @@ function constructHook(options: VariantOptions | Variant): VariantOptions2 {
430
469
 
431
470
  if (options.arrayType !== VariantArrayType.Scalar && !isArrayTypeUnspecified) {
432
471
  assert(options.arrayType === VariantArrayType.Array || options.arrayType === VariantArrayType.Matrix);
433
- /* istanbul ignore else */
434
472
  if (options.arrayType === VariantArrayType.Array) {
435
473
  const value1 = coerceVariantArray(options.dataType, options.value);
436
474
  assert(value1 === null || value1 !== options.value);
437
475
  options.value = value1;
438
- } else {
476
+ }
477
+ /* c8 ignore start */
478
+ else {
439
479
  assert(options.arrayType === VariantArrayType.Matrix);
440
480
  options.value = options.value || [];
441
481
 
442
482
  options.value = coerceVariantArray(options.dataType, options.value);
443
483
 
444
- /* istanbul ignore next */
445
484
  if (!options.dimensions) {
446
485
  throw new Error("Matrix Variant : missing dimensions");
447
486
  }
448
- /* istanbul ignore next */
449
487
  if (options.value.length != 0 && options.value.length !== calculate_product(options.dimensions)) {
450
488
  throw new Error(
451
489
  "Matrix Variant : invalid value size = options.value.length " +
@@ -457,6 +495,7 @@ function constructHook(options: VariantOptions | Variant): VariantOptions2 {
457
495
  );
458
496
  }
459
497
  }
498
+ /* c8 ignore stop */
460
499
  } else {
461
500
  assert(options.arrayType === VariantArrayType.Scalar || options.arrayType === undefined);
462
501
  options.arrayType = VariantArrayType.Scalar;
@@ -464,7 +503,7 @@ function constructHook(options: VariantOptions | Variant): VariantOptions2 {
464
503
  // scalar
465
504
  options.value = coerceVariantType(options.dataType, options.value);
466
505
 
467
- /* istanbul ignore next */
506
+ /* c8 ignore start */
468
507
  if (!isValidVariant(options.arrayType, options.dataType, options.value, null)) {
469
508
  throw new Error(
470
509
  "Invalid variant arrayType: " +
@@ -478,6 +517,7 @@ function constructHook(options: VariantOptions | Variant): VariantOptions2 {
478
517
  " )"
479
518
  );
480
519
  }
520
+ /* c8 ignore stop */
481
521
  }
482
522
  if (options.dimensions) {
483
523
  assert(options.arrayType === VariantArrayType.Matrix, "dimension can only provided if variant is a matrix");
@@ -486,7 +526,7 @@ function constructHook(options: VariantOptions | Variant): VariantOptions2 {
486
526
  }
487
527
 
488
528
  function calculate_product(array: number[] | null): number {
489
- /* istanbul ignore next */
529
+ /* c8 ignore next */
490
530
  if (!array || array.length === 0) {
491
531
  return 0;
492
532
  }
@@ -495,25 +535,28 @@ function calculate_product(array: number[] | null): number {
495
535
 
496
536
  function get_encoder(dataType: DataType) {
497
537
  const dataTypeAsString = typeof dataType === "string" ? dataType : DataType[dataType];
498
- /* istanbul ignore next */
538
+ /* c8 ignore start */
499
539
  if (!dataTypeAsString) {
500
540
  throw new Error("invalid dataType " + dataType);
501
541
  }
542
+ /* c8 ignore stop */
502
543
  const encode = findBuiltInType(dataTypeAsString).encode;
503
- /* istanbul ignore next */
544
+ /* c8 ignore start */
504
545
  if (!encode) {
505
546
  throw new Error("Cannot find encode function for dataType " + dataTypeAsString);
506
547
  }
548
+ /* c8 ignore stop */
507
549
  return encode;
508
550
  }
509
551
 
510
552
  function get_decoder(dataType: DataType) {
511
553
  const dataTypeAsString = DataType[dataType];
512
554
  const decode = findBuiltInType(dataTypeAsString).decode;
513
- /* istanbul ignore next */
555
+ /* c8 ignore start */
514
556
  if (!decode) {
515
557
  throw new Error("Variant.decode : cannot find decoder for type " + dataTypeAsString);
516
558
  }
559
+ /* c8 ignore stop */
517
560
  return decode;
518
561
  }
519
562
 
@@ -538,22 +581,17 @@ interface BufferedArrayConstructor {
538
581
  }
539
582
 
540
583
  function convertTo(dataType: DataType, arrayTypeConstructor: BufferedArrayConstructor | null, value: any) {
541
- // istanbul ignore next
584
+ // c8 ignore next
542
585
  if (value === undefined || value === null) {
543
586
  return null;
544
587
  }
545
588
 
546
589
  if (arrayTypeConstructor && value instanceof arrayTypeConstructor) {
547
- const newArray = new value.constructor(value.length); // deep copy
548
-
549
- /* istanbul ignore if */
550
- if (newArray instanceof Buffer) {
551
- // required for nodejs 4.x
552
- value.copy(newArray);
553
- } else {
554
- newArray.set(value);
590
+ if (value instanceof Buffer) {
591
+ return Buffer.from(value); // preserve Buffer prototype
555
592
  }
556
-
593
+ const newArray = new arrayTypeConstructor(value.length); // deep copy
594
+ newArray.set(value);
557
595
  return newArray;
558
596
  }
559
597
  const coerceFunc = coerceVariantType.bind(null, dataType);
@@ -563,7 +601,7 @@ function convertTo(dataType: DataType, arrayTypeConstructor: BufferedArrayConstr
563
601
  for (let i = 0; i < n; i++) {
564
602
  newArr[i] = coerceFunc(value[i]);
565
603
  }
566
- // istanbul ignore next
604
+ // c8 ignore next
567
605
  if (arrayTypeConstructor && displayWarning && n > 10) {
568
606
  warningLog("Warning ! an array containing " + DataType[dataType] + " elements has been provided as a generic array. ");
569
607
  warningLog(
@@ -629,7 +667,7 @@ function encodeVariantArray(dataType: DataType, stream: OutputBinaryStream, valu
629
667
  function decodeTypedArray(arrayTypeConstructor: BufferedArrayConstructor, stream: BinaryStream) {
630
668
  const length = decodeUInt32(stream);
631
669
 
632
- /* istanbul ignore next */
670
+ /* c8 ignore next */
633
671
  if (length === 0xffffffff) {
634
672
  return null;
635
673
  }
@@ -650,7 +688,7 @@ function decodeTypedArray(arrayTypeConstructor: BufferedArrayConstructor, stream
650
688
  function decodeGeneralArray(dataType: DataType, stream: BinaryStream) {
651
689
  const length = decodeUInt32(stream);
652
690
 
653
- /* istanbul ignore next */
691
+ /* c8 ignore next */
654
692
  if (length === 0xffffffff) {
655
693
  return null;
656
694
  }
@@ -692,42 +730,6 @@ _declareTypeArrayHelper(DataType.Int32, Int32Array);
692
730
  _declareTypeArrayHelper(DataType.UInt16, Uint16Array);
693
731
  _declareTypeArrayHelper(DataType.UInt32, Uint32Array);
694
732
 
695
- function _decodeVariantArrayDebug(stream: BinaryStream, decode: any, tracer: any, dataType: DataType) {
696
- let cursorBefore = stream.length;
697
- const length = decodeUInt32(stream);
698
-
699
- let i;
700
- let element;
701
- tracer.trace("start_array", "Variant", -1, cursorBefore, stream.length);
702
- if (length === 0xffffffff) {
703
- // empty array
704
- tracer.trace("end_array", "Variant", stream.length);
705
- return;
706
- }
707
-
708
- const n1 = Math.min(10, length);
709
-
710
- // display a maximum of 10 elements
711
- for (i = 0; i < n1; i++) {
712
- tracer.trace("start_element", "", i);
713
- cursorBefore = stream.length;
714
- element = decode(stream);
715
- // arr.push(element);
716
- tracer.trace("member", "Variant", element, cursorBefore, stream.length, DataType[dataType]);
717
- tracer.trace("end_element", "", i);
718
- }
719
- // keep reading
720
- if (length >= n1) {
721
- for (i = n1; i < length; i++) {
722
- decode(stream);
723
- }
724
- tracer.trace("start_element", "", n1);
725
- tracer.trace("member", "Variant", "...", cursorBefore, stream.length, DataType[dataType]);
726
- tracer.trace("end_element", "", n1);
727
- }
728
- tracer.trace("end_array", "Variant", stream.length);
729
- }
730
-
731
733
  function decodeDimension(stream: BinaryStream) {
732
734
  return decodeGeneralArray(DataType.UInt32, stream);
733
735
  }
@@ -750,17 +752,18 @@ export function coerceVariantType(dataType: DataType, value: undefined | any): a
750
752
  if (value === undefined) {
751
753
  value = null;
752
754
  }
755
+ /* c8 ignore start */
753
756
  if (isEnumerationItem(value)) {
754
757
  // OPCUA Specification 1.0.3 5.8.2 encoding rules for various dataType:
755
758
  // [...]Enumeration are always encoded as Int32 on the wire [...]
756
759
 
757
- /* istanbul ignore next */
758
760
  if (dataType !== DataType.Int32 && dataType !== DataType.ExtensionObject) {
759
761
  throw new Error(
760
762
  "expecting DataType.Int32 for enumeration values ;" + " got DataType." + dataType.toString() + " instead"
761
763
  );
762
764
  }
763
765
  }
766
+ /* c8 ignore stop */
764
767
 
765
768
  switch (dataType) {
766
769
  case DataType.Null:
@@ -784,10 +787,11 @@ export function coerceVariantType(dataType: DataType, value: undefined | any): a
784
787
  case DataType.UInt16:
785
788
  assert(value !== undefined);
786
789
  value = parseInt(value, 10);
787
- /* istanbul ignore next */
790
+ /* c8 ignore start */
788
791
  if (!isFinite(value)) {
789
792
  throw new Error("expecting a number " + value);
790
793
  }
794
+ /* c8 ignore stop */
791
795
  break;
792
796
  case DataType.UInt64:
793
797
  value = coerceUInt64(value);
@@ -806,10 +810,11 @@ export function coerceVariantType(dataType: DataType, value: undefined | any): a
806
810
  case DataType.ByteString:
807
811
  value = typeof value === "string" ? Buffer.from(value) : value;
808
812
 
809
- // istanbul ignore next
813
+ /* c8 ignore start */
810
814
  if (!(value === null || value instanceof Buffer)) {
811
815
  throw new Error("ByteString should be null or a Buffer");
812
816
  }
817
+ /* c8 ignore stop */
813
818
  assert(value === null || value instanceof Buffer);
814
819
  break;
815
820
  default:
@@ -892,7 +897,7 @@ function isValidArrayVariant(dataType: DataType, value: any): boolean {
892
897
  return true;
893
898
  }
894
899
 
895
- /*istanbul ignore next*/
900
+ /* c8 ignore start */
896
901
  function isValidMatrixVariant(dataType: DataType, value: any, dimensions: number[] | null) {
897
902
  if (!dimensions) {
898
903
  return false;
@@ -902,6 +907,7 @@ function isValidMatrixVariant(dataType: DataType, value: any, dimensions: number
902
907
  }
903
908
  return true;
904
909
  }
910
+ /* c8 ignore stop */
905
911
 
906
912
  export function isValidVariant(
907
913
  arrayType: VariantArrayType,
@@ -984,7 +990,7 @@ function __check_same_object(o1: any, o2: any): boolean {
984
990
  }
985
991
  const keys1 = Object.keys(o1);
986
992
  const keys2 = Object.keys(o2);
987
- // istanbul ignore next
993
+ /* c8 ignore next */
988
994
  if (keys1.length !== keys2.length) {
989
995
  return false;
990
996
  }
@@ -31,16 +31,20 @@ export function verifyRankAndDimensions(options: { valueRank?: number; arrayDime
31
31
  if (options.valueRank > 0 && (!options.arrayDimensions || options.arrayDimensions.length === 0)) {
32
32
  options.arrayDimensions = new Array(options.valueRank).fill(0);
33
33
  }
34
- // istanbul ignore next
34
+ // c8 ignore start
35
35
  if (!options.arrayDimensions && options.valueRank > 0) {
36
36
  throw new Error("[CONFORMANCE] arrayDimension must be specified if valueRank >0 " + options.valueRank);
37
37
  }
38
+ // c8 ignore stop
39
+
40
+ // c8 ignore start
38
41
  if (options.valueRank > 0 && options.arrayDimensions!.length !== options.valueRank) {
39
42
  throw new Error(
40
43
  "[CONFORMANCE] when valueRank> 0, arrayDimensions must have valueRank elements, this.valueRank =" +
41
- options.valueRank +
42
- " whereas arrayDimensions.length =" +
43
- options.arrayDimensions!.length
44
+ options.valueRank +
45
+ " whereas arrayDimensions.length =" +
46
+ options.arrayDimensions!.length
44
47
  );
45
48
  }
49
+ // c8 ignore stop
46
50
  }