kaitai-struct-compiler 0.10.0-SNAPSHOT20220801.113415.690af1b3 → 0.10.0-SNAPSHOT20220813.105458.a4435936

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.
@@ -1290,6 +1290,16 @@ function $isArrayOf_Lio_kaitai_struct_exprlang_Ast$cmpop(obj, depth) {
1290
1290
  function $asArrayOf_Lio_kaitai_struct_exprlang_Ast$cmpop(obj, depth) {
1291
1291
  return (($isArrayOf_Lio_kaitai_struct_exprlang_Ast$cmpop(obj, depth) || (obj === null)) ? obj : $throwArrayCastException(obj, "Lio.kaitai.struct.exprlang.Ast$cmpop;", depth))
1292
1292
  }
1293
+ function $f_Lio_kaitai_struct_exprlang_Ast$expr__evaluateStrConst__s_Option($thiz) {
1294
+ var x1 = $m_Lio_kaitai_struct_exprlang_ConstEvaluator$().evaluate__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_ConstEvaluator$value($thiz);
1295
+ if ((x1 instanceof $c_Lio_kaitai_struct_exprlang_ConstEvaluator$value$Str)) {
1296
+ var x2 = $as_Lio_kaitai_struct_exprlang_ConstEvaluator$value$Str(x1);
1297
+ var x = x2.value$1;
1298
+ return new $c_s_Some().init___O(x)
1299
+ } else {
1300
+ return $m_s_None$()
1301
+ }
1302
+ }
1293
1303
  function $is_Lio_kaitai_struct_exprlang_Ast$expr(obj) {
1294
1304
  return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Lio_kaitai_struct_exprlang_Ast$expr)))
1295
1305
  }
@@ -3709,7 +3719,30 @@ $c_Lio_kaitai_struct_Main$.prototype.updateConfigFromMeta__p1__Lio_kaitai_struct
3709
3719
  };
3710
3720
  var config2 = config1
3711
3721
  };
3712
- return config2
3722
+ var x1$2 = meta.opaqueTypes$1;
3723
+ if ((x1$2 instanceof $c_s_Some)) {
3724
+ var x2$2 = $as_s_Some(x1$2);
3725
+ var value$2 = $uZ(x2$2.value$2);
3726
+ var x$14 = config2.autoRead$1;
3727
+ var x$15 = config2.readStoresPos$1;
3728
+ var x$16 = config2.zeroCopySubstream$1;
3729
+ var x$17 = config2.cppConfig$1;
3730
+ var x$18 = config2.goPackage$1;
3731
+ var x$19 = config2.java$1;
3732
+ var x$20 = config2.dotNetNamespace$1;
3733
+ var x$21 = config2.phpNamespace$1;
3734
+ var x$22 = config2.pythonPackage$1;
3735
+ var x$23 = config2.nimModule$1;
3736
+ var x$24 = config2.nimOpaque$1;
3737
+ var config3 = new $c_Lio_kaitai_struct_RuntimeConfig().init___Z__Z__Z__Z__Lio_kaitai_struct_CppRuntimeConfig__T__Lio_kaitai_struct_JavaRuntimeConfig__T__T__T__T__T(x$14, x$15, value$2, x$16, x$17, x$18, x$19, x$20, x$21, x$22, x$23, x$24)
3738
+ } else {
3739
+ var x$25 = $m_s_None$();
3740
+ if ((!(x$25 === x1$2))) {
3741
+ throw new $c_s_MatchError().init___O(x1$2)
3742
+ };
3743
+ var config3 = config2
3744
+ };
3745
+ return config3
3713
3746
  });
3714
3747
  $c_Lio_kaitai_struct_Main$.prototype.importAndPrecompile__Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_RuntimeConfig__s_concurrent_Future = (function(specs, config) {
3715
3748
  return new $c_Lio_kaitai_struct_precompile_LoadImports().init___Lio_kaitai_struct_format_ClassSpecs(specs).processClass__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_precompile_LoadImports$ImportPath__s_concurrent_Future(specs.firstSpec$6, $m_Lio_kaitai_struct_precompile_LoadImports$().BasePath$1).map__F1__s_concurrent_ExecutionContext__s_concurrent_Future(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, specs$1, config$1) {
@@ -3720,35 +3753,23 @@ $c_Lio_kaitai_struct_Main$.prototype.importAndPrecompile__Lio_kaitai_struct_form
3720
3753
  })
3721
3754
  })(this, specs, config)), $m_s_concurrent_ExecutionContext$Implicits$().global__s_concurrent_ExecutionContext())
3722
3755
  });
3723
- $c_Lio_kaitai_struct_Main$.prototype.precompile__Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_RuntimeConfig__sc_Iterable = (function(classSpecs, topClass, config) {
3724
- var iterTable = classSpecs.table$5;
3725
- var idx = $f_scm_HashTable__scala$collection$mutable$HashTable$$lastPopulatedIndex__I(classSpecs);
3726
- var es = iterTable.get(idx);
3727
- while ((es !== null)) {
3728
- var this$1 = es;
3729
- var next = this$1.next$1;
3730
- var arg1 = es;
3731
- var e = $as_scm_DefaultEntry(arg1);
3732
- var _2 = e.value$1;
3733
- var curClass = $as_Lio_kaitai_struct_format_ClassSpec(_2);
3734
- $m_Lio_kaitai_struct_precompile_MarkupClassNames$().markupClassNames__Lio_kaitai_struct_format_ClassSpec__V(curClass);
3735
- es = next;
3736
- while (((es === null) && (idx > 0))) {
3737
- idx = (((-1) + idx) | 0);
3738
- es = iterTable.get(idx)
3739
- }
3756
+ $c_Lio_kaitai_struct_Main$.prototype.precompile__Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_RuntimeConfig__sc_Iterable = (function(classSpecs, topClass, conf) {
3757
+ var config = this.updateConfigFromMeta__p1__Lio_kaitai_struct_RuntimeConfig__Lio_kaitai_struct_format_MetaSpec__Lio_kaitai_struct_RuntimeConfig(conf, topClass.meta$1);
3758
+ new $c_Lio_kaitai_struct_precompile_MarkupClassNames().init___Lio_kaitai_struct_format_ClassSpecs(classSpecs).run__sc_Iterable();
3759
+ var resolveTypeProblems = new $c_Lio_kaitai_struct_precompile_ResolveTypes().init___Lio_kaitai_struct_format_ClassSpecs__Z(classSpecs, config.opaqueTypes$1).run__sc_Iterable();
3760
+ if (resolveTypeProblems.nonEmpty__Z()) {
3761
+ return resolveTypeProblems
3740
3762
  };
3741
- var this$2 = topClass.meta$1.opaqueTypes$1;
3742
- var opaqueTypes = $uZ((this$2.isEmpty__Z() ? config.opaqueTypes$1 : this$2.get__O()));
3743
- new $c_Lio_kaitai_struct_precompile_ResolveTypes().init___Lio_kaitai_struct_format_ClassSpecs__Z(classSpecs, opaqueTypes).run__V();
3744
3763
  new $c_Lio_kaitai_struct_precompile_ParentTypes().init___Lio_kaitai_struct_format_ClassSpecs(classSpecs).run__V();
3745
3764
  new $c_Lio_kaitai_struct_precompile_SpecsValueTypeDerive().init___Lio_kaitai_struct_format_ClassSpecs(classSpecs).run__V();
3746
3765
  new $c_Lio_kaitai_struct_precompile_CalculateSeqSizes().init___Lio_kaitai_struct_format_ClassSpecs(classSpecs).run__V();
3747
3766
  var typeValidatorProblems = new $c_Lio_kaitai_struct_precompile_TypeValidator().init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec(classSpecs, topClass).run__sc_Iterable();
3748
3767
  var styleWarnings = new $c_Lio_kaitai_struct_precompile_StyleCheckIds().init___Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_format_ClassSpec(classSpecs, topClass).run__sc_Iterable();
3749
3768
  topClass.parentClass$1 = $m_Lio_kaitai_struct_format_GenericStructClassSpec$();
3750
- var this$3 = $m_sc_Iterable$();
3751
- return $as_sc_Iterable(typeValidatorProblems.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(styleWarnings, this$3.ReusableCBFInstance$2))
3769
+ var this$1 = $m_sc_Iterable$();
3770
+ var jsx$1 = $as_sc_TraversableLike(resolveTypeProblems.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(typeValidatorProblems, this$1.ReusableCBFInstance$2));
3771
+ var this$2 = $m_sc_Iterable$();
3772
+ return $as_sc_Iterable(jsx$1.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(styleWarnings, this$2.ReusableCBFInstance$2))
3752
3773
  });
3753
3774
  $c_Lio_kaitai_struct_Main$.prototype.precompile__Lio_kaitai_struct_format_ClassSpecs__Lio_kaitai_struct_RuntimeConfig__sc_Iterable = (function(specs, config) {
3754
3775
  $m_scm_Iterable$();
@@ -4494,9 +4515,9 @@ function $h_Lio_kaitai_struct_Version$() {
4494
4515
  $h_Lio_kaitai_struct_Version$.prototype = $c_Lio_kaitai_struct_Version$.prototype;
4495
4516
  $c_Lio_kaitai_struct_Version$.prototype.init___ = (function() {
4496
4517
  this.name$1 = "kaitai-struct-compiler-js";
4497
- this.version$1 = "0.10-SNAPSHOT20220801.113415.690af1b3";
4498
- this.gitCommit$1 = "690af1b3";
4499
- this.gitTime$1 = "2022-08-01T11:34:15+00:00";
4518
+ this.version$1 = "0.10-SNAPSHOT20220813.105458.a4435936";
4519
+ this.gitCommit$1 = "a4435936";
4520
+ this.gitTime$1 = "2022-08-13T10:54:58+00:00";
4500
4521
  return this
4501
4522
  });
4502
4523
  var $d_Lio_kaitai_struct_Version$ = new $TypeData().initClass({
@@ -10052,90 +10073,6 @@ function $m_Lio_kaitai_struct_precompile_LoadImports$ImportPath$() {
10052
10073
  return $n_Lio_kaitai_struct_precompile_LoadImports$ImportPath$
10053
10074
  }
10054
10075
  /** @constructor */
10055
- function $c_Lio_kaitai_struct_precompile_MarkupClassNames$() {
10056
- $c_O.call(this)
10057
- }
10058
- $c_Lio_kaitai_struct_precompile_MarkupClassNames$.prototype = new $h_O();
10059
- $c_Lio_kaitai_struct_precompile_MarkupClassNames$.prototype.constructor = $c_Lio_kaitai_struct_precompile_MarkupClassNames$;
10060
- /** @constructor */
10061
- function $h_Lio_kaitai_struct_precompile_MarkupClassNames$() {
10062
- /*<skip>*/
10063
- }
10064
- $h_Lio_kaitai_struct_precompile_MarkupClassNames$.prototype = $c_Lio_kaitai_struct_precompile_MarkupClassNames$.prototype;
10065
- $c_Lio_kaitai_struct_precompile_MarkupClassNames$.prototype.init___ = (function() {
10066
- return this
10067
- });
10068
- $c_Lio_kaitai_struct_precompile_MarkupClassNames$.prototype.markupClassNames__Lio_kaitai_struct_format_ClassSpec__V = (function(curClass) {
10069
- curClass.enums$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, curClass$1) {
10070
- return (function(x0$1$2) {
10071
- var x0$1 = $as_T2(x0$1$2);
10072
- if ((x0$1 !== null)) {
10073
- var enumName = $as_T(x0$1.$$und1__O());
10074
- var enumSpec = $as_Lio_kaitai_struct_format_EnumSpec(x0$1.$$und2__O());
10075
- var x$1 = curClass$1.name$1;
10076
- $m_sci_List$();
10077
- var array = [enumName];
10078
- var i = (((-1) + $uI(array.length)) | 0);
10079
- var result = $m_sci_Nil$();
10080
- while ((i >= 0)) {
10081
- var this$4 = result;
10082
- var index = i;
10083
- var x = array[index];
10084
- result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4);
10085
- i = (((-1) + i) | 0)
10086
- };
10087
- enumSpec.name$1 = result.$$colon$colon$colon__sci_List__sci_List(x$1)
10088
- } else {
10089
- throw new $c_s_MatchError().init___O(x0$1)
10090
- }
10091
- })
10092
- })(this, curClass)));
10093
- curClass.types$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2$1, curClass$2) {
10094
- return (function(x0$2$2) {
10095
- var x0$2 = $as_T2(x0$2$2);
10096
- matchEnd4: {
10097
- if ((x0$2 !== null)) {
10098
- var nestedName = $as_T(x0$2.$$und1__O());
10099
- var nestedClass = $as_Lio_kaitai_struct_format_ClassSpec(x0$2.$$und2__O());
10100
- if ((nestedName !== null)) {
10101
- var x$2 = curClass$2.name$1;
10102
- $m_sci_List$();
10103
- var array$1 = [nestedName];
10104
- var i$1 = (((-1) + $uI(array$1.length)) | 0);
10105
- var result$1 = $m_sci_Nil$();
10106
- while ((i$1 >= 0)) {
10107
- var this$8 = result$1;
10108
- var index$1 = i$1;
10109
- var x$3 = array$1[index$1];
10110
- result$1 = new $c_sci_$colon$colon().init___O__sci_List(x$3, this$8);
10111
- i$1 = (((-1) + i$1) | 0)
10112
- };
10113
- nestedClass.name$1 = result$1.$$colon$colon$colon__sci_List__sci_List(x$2);
10114
- nestedClass.upClass$1 = new $c_s_Some().init___O(curClass$2);
10115
- $m_Lio_kaitai_struct_precompile_MarkupClassNames$().markupClassNames__Lio_kaitai_struct_format_ClassSpec__V(nestedClass);
10116
- break matchEnd4
10117
- }
10118
- };
10119
- throw new $c_s_MatchError().init___O(x0$2)
10120
- }
10121
- })
10122
- })(this, curClass)))
10123
- });
10124
- var $d_Lio_kaitai_struct_precompile_MarkupClassNames$ = new $TypeData().initClass({
10125
- Lio_kaitai_struct_precompile_MarkupClassNames$: 0
10126
- }, false, "io.kaitai.struct.precompile.MarkupClassNames$", {
10127
- Lio_kaitai_struct_precompile_MarkupClassNames$: 1,
10128
- O: 1
10129
- });
10130
- $c_Lio_kaitai_struct_precompile_MarkupClassNames$.prototype.$classData = $d_Lio_kaitai_struct_precompile_MarkupClassNames$;
10131
- var $n_Lio_kaitai_struct_precompile_MarkupClassNames$ = (void 0);
10132
- function $m_Lio_kaitai_struct_precompile_MarkupClassNames$() {
10133
- if ((!$n_Lio_kaitai_struct_precompile_MarkupClassNames$)) {
10134
- $n_Lio_kaitai_struct_precompile_MarkupClassNames$ = new $c_Lio_kaitai_struct_precompile_MarkupClassNames$().init___()
10135
- };
10136
- return $n_Lio_kaitai_struct_precompile_MarkupClassNames$
10137
- }
10138
- /** @constructor */
10139
10076
  function $c_Lio_kaitai_struct_precompile_ParentTypes() {
10140
10077
  $c_O.call(this);
10141
10078
  this.classSpecs$1 = null
@@ -10330,266 +10267,6 @@ var $d_Lio_kaitai_struct_precompile_ParentTypes = new $TypeData().initClass({
10330
10267
  });
10331
10268
  $c_Lio_kaitai_struct_precompile_ParentTypes.prototype.$classData = $d_Lio_kaitai_struct_precompile_ParentTypes;
10332
10269
  /** @constructor */
10333
- function $c_Lio_kaitai_struct_precompile_ResolveTypes() {
10334
- $c_O.call(this);
10335
- this.specs$1 = null;
10336
- this.opaqueTypes$1 = false
10337
- }
10338
- $c_Lio_kaitai_struct_precompile_ResolveTypes.prototype = new $h_O();
10339
- $c_Lio_kaitai_struct_precompile_ResolveTypes.prototype.constructor = $c_Lio_kaitai_struct_precompile_ResolveTypes;
10340
- /** @constructor */
10341
- function $h_Lio_kaitai_struct_precompile_ResolveTypes() {
10342
- /*<skip>*/
10343
- }
10344
- $h_Lio_kaitai_struct_precompile_ResolveTypes.prototype = $c_Lio_kaitai_struct_precompile_ResolveTypes.prototype;
10345
- $c_Lio_kaitai_struct_precompile_ResolveTypes.prototype.realResolveUserType__p1__Lio_kaitai_struct_format_ClassSpec__sci_List__sci_List__s_Option = (function(curClass, typeName, path) {
10346
- if ((!(typeName instanceof $c_sci_$colon$colon))) {
10347
- throw new $c_s_MatchError().init___O(typeName)
10348
- };
10349
- var x2 = $as_sci_$colon$colon(typeName);
10350
- var firstName = $as_T(x2.head$5);
10351
- var restNames = x2.tl$5;
10352
- var this$1 = curClass.types$1.get__O__s_Option(firstName);
10353
- if (this$1.isEmpty__Z()) {
10354
- var resolvedHere = $m_s_None$()
10355
- } else {
10356
- var arg1 = this$1.get__O();
10357
- var nestedClass = $as_Lio_kaitai_struct_format_ClassSpec(arg1);
10358
- var resolvedHere = (restNames.isEmpty__Z() ? new $c_s_Some().init___O(nestedClass) : this.resolveUserType__Lio_kaitai_struct_format_ClassSpec__sci_List__sci_List__s_Option(nestedClass, restNames, path))
10359
- };
10360
- if ((resolvedHere instanceof $c_s_Some)) {
10361
- return resolvedHere
10362
- } else {
10363
- var x = $m_s_None$();
10364
- if ((x === resolvedHere)) {
10365
- var x1$3 = curClass.upClass$1;
10366
- if ((x1$3 instanceof $c_s_Some)) {
10367
- var x2$2 = $as_s_Some(x1$3);
10368
- var upClass = $as_Lio_kaitai_struct_format_ClassSpec(x2$2.value$2);
10369
- return this.resolveUserType__Lio_kaitai_struct_format_ClassSpec__sci_List__sci_List__s_Option(upClass, typeName, path)
10370
- } else {
10371
- var x$3 = $m_s_None$();
10372
- if ((x$3 === x1$3)) {
10373
- var x$5 = curClass.name$1.head__O();
10374
- if (((x$5 === null) ? (firstName === null) : $objectEquals(x$5, firstName))) {
10375
- return new $c_s_Some().init___O(curClass)
10376
- } else {
10377
- var resolvedTop = this.specs$1.get__O__s_Option(firstName);
10378
- var x$7 = $m_s_None$();
10379
- if ((x$7 === resolvedTop)) {
10380
- return $m_s_None$()
10381
- } else if ((resolvedTop instanceof $c_s_Some)) {
10382
- var x2$3 = $as_s_Some(resolvedTop);
10383
- var classSpec = $as_Lio_kaitai_struct_format_ClassSpec(x2$3.value$2);
10384
- return (restNames.isEmpty__Z() ? resolvedTop : this.resolveUserType__Lio_kaitai_struct_format_ClassSpec__sci_List__sci_List__s_Option(classSpec, restNames, path))
10385
- } else {
10386
- throw new $c_s_MatchError().init___O(resolvedTop)
10387
- }
10388
- }
10389
- } else {
10390
- throw new $c_s_MatchError().init___O(x1$3)
10391
- }
10392
- }
10393
- } else {
10394
- throw new $c_s_MatchError().init___O(resolvedHere)
10395
- }
10396
- }
10397
- });
10398
- $c_Lio_kaitai_struct_precompile_ResolveTypes.prototype.run__V = (function() {
10399
- this.specs$1.forEachRec__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) {
10400
- return (function(curClass$2) {
10401
- var curClass = $as_Lio_kaitai_struct_format_ClassSpec(curClass$2);
10402
- $this.resolveUserTypes__Lio_kaitai_struct_format_ClassSpec__V(curClass)
10403
- })
10404
- })(this)))
10405
- });
10406
- $c_Lio_kaitai_struct_precompile_ResolveTypes.prototype.resolveUserType__Lio_kaitai_struct_format_ClassSpec__sci_List__sci_List__s_Option = (function(curClass, typeName, path) {
10407
- $m_Lio_kaitai_struct_Log$();
10408
- var res = this.realResolveUserType__p1__Lio_kaitai_struct_format_ClassSpec__sci_List__sci_List__s_Option(curClass, typeName, path);
10409
- var x = $m_s_None$();
10410
- if ((x === res)) {
10411
- if (this.opaqueTypes$1) {
10412
- $m_Lio_kaitai_struct_Log$();
10413
- return new $c_s_Some().init___O($m_Lio_kaitai_struct_format_ClassSpec$().opaquePlaceholder__sci_List__Lio_kaitai_struct_format_ClassSpec(typeName))
10414
- } else {
10415
- var err = new $c_Lio_kaitai_struct_precompile_TypeNotFoundError().init___T__Lio_kaitai_struct_format_ClassSpec($f_sc_TraversableOnce__mkString__T__T__T__T(typeName, "", "::", ""), curClass);
10416
- throw $m_Lio_kaitai_struct_problems_KSYParseError$().withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(err.s$1, path)
10417
- }
10418
- } else if ((res instanceof $c_s_Some)) {
10419
- var x2 = $as_s_Some(res);
10420
- $as_Lio_kaitai_struct_format_ClassSpec(x2.value$2);
10421
- $m_Lio_kaitai_struct_Log$();
10422
- return res
10423
- } else {
10424
- throw new $c_s_MatchError().init___O(res)
10425
- }
10426
- });
10427
- $c_Lio_kaitai_struct_precompile_ResolveTypes.prototype.realResolveEnumSpec__p1__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option = (function(curClass, typeName) {
10428
- if ((!(typeName instanceof $c_sci_$colon$colon))) {
10429
- throw new $c_s_MatchError().init___O(typeName)
10430
- };
10431
- var x2 = $as_sci_$colon$colon(typeName);
10432
- var firstName = $as_T(x2.head$5);
10433
- var restNames = x2.tl$5;
10434
- if (restNames.isEmpty__Z()) {
10435
- var resolvedHere = curClass.enums$1.get__O__s_Option(firstName)
10436
- } else {
10437
- var this$1 = curClass.types$1.get__O__s_Option(firstName);
10438
- if (this$1.isEmpty__Z()) {
10439
- var resolvedHere = $m_s_None$()
10440
- } else {
10441
- var arg1 = this$1.get__O();
10442
- var nestedClass = $as_Lio_kaitai_struct_format_ClassSpec(arg1);
10443
- var resolvedHere = this.resolveEnumSpec__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option(nestedClass, restNames)
10444
- }
10445
- };
10446
- if ((resolvedHere instanceof $c_s_Some)) {
10447
- return resolvedHere
10448
- } else {
10449
- var x = $m_s_None$();
10450
- if ((x === resolvedHere)) {
10451
- var x1$3 = curClass.upClass$1;
10452
- if ((x1$3 instanceof $c_s_Some)) {
10453
- var x2$2 = $as_s_Some(x1$3);
10454
- var upClass = $as_Lio_kaitai_struct_format_ClassSpec(x2$2.value$2);
10455
- return this.resolveEnumSpec__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option(upClass, typeName)
10456
- } else {
10457
- var x$4 = $m_s_None$();
10458
- if ((x$4 === x1$3)) {
10459
- var x$6 = curClass.name$1.head__O();
10460
- if (((x$6 === null) ? (firstName === null) : $objectEquals(x$6, firstName))) {
10461
- return this.resolveEnumSpec__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option(curClass, restNames)
10462
- } else {
10463
- var resolvedTop = this.specs$1.get__O__s_Option(firstName);
10464
- var x$8 = $m_s_None$();
10465
- if ((x$8 === resolvedTop)) {
10466
- return $m_s_None$()
10467
- } else if ((resolvedTop instanceof $c_s_Some)) {
10468
- var x2$3 = $as_s_Some(resolvedTop);
10469
- var classSpec = $as_Lio_kaitai_struct_format_ClassSpec(x2$3.value$2);
10470
- return (restNames.isEmpty__Z() ? $m_s_None$() : this.resolveEnumSpec__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option(classSpec, restNames))
10471
- } else {
10472
- throw new $c_s_MatchError().init___O(resolvedTop)
10473
- }
10474
- }
10475
- } else {
10476
- throw new $c_s_MatchError().init___O(x1$3)
10477
- }
10478
- }
10479
- } else {
10480
- throw new $c_s_MatchError().init___O(resolvedHere)
10481
- }
10482
- }
10483
- });
10484
- $c_Lio_kaitai_struct_precompile_ResolveTypes.prototype.resolveUserTypes__Lio_kaitai_struct_format_ClassSpec__V = (function(curClass) {
10485
- var this$1 = curClass.seq$1;
10486
- var these = this$1;
10487
- while ((!these.isEmpty__Z())) {
10488
- var arg1 = these.head__O();
10489
- var attr = $as_Lio_kaitai_struct_format_AttrSpec(arg1);
10490
- this.resolveUserType__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType__sci_List__V(curClass, attr.dataType$1, attr.path$1);
10491
- var this$2 = these;
10492
- these = this$2.tail__sci_List()
10493
- };
10494
- curClass.instances$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2$1, curClass$1) {
10495
- return (function(x0$1$2) {
10496
- var x0$1 = $as_T2(x0$1$2);
10497
- if ((x0$1 !== null)) {
10498
- var instSpec = $as_Lio_kaitai_struct_format_InstanceSpec(x0$1.$$und2__O());
10499
- if ((instSpec instanceof $c_Lio_kaitai_struct_format_ParseInstanceSpec)) {
10500
- var x2 = $as_Lio_kaitai_struct_format_ParseInstanceSpec(instSpec);
10501
- this$2$1.resolveUserType__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType__sci_List__V(curClass$1, x2.dataType$2, x2.path$2)
10502
- } else if ((!(instSpec instanceof $c_Lio_kaitai_struct_format_ValueInstanceSpec))) {
10503
- throw new $c_s_MatchError().init___O(instSpec)
10504
- }
10505
- } else {
10506
- throw new $c_s_MatchError().init___O(x0$1)
10507
- }
10508
- })
10509
- })(this, curClass)));
10510
- var this$3 = curClass.params$1;
10511
- var these$1 = this$3;
10512
- while ((!these$1.isEmpty__Z())) {
10513
- var arg1$1 = these$1.head__O();
10514
- var paramDef = $as_Lio_kaitai_struct_format_ParamDefSpec(arg1$1);
10515
- this.resolveUserType__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType__sci_List__V(curClass, paramDef.dataType$1, paramDef.path$1);
10516
- var this$4 = these$1;
10517
- these$1 = this$4.tail__sci_List()
10518
- }
10519
- });
10520
- $c_Lio_kaitai_struct_precompile_ResolveTypes.prototype.resolveUserType__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType__sci_List__V = (function(curClass, dataType, path) {
10521
- if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) {
10522
- var x2 = $as_Lio_kaitai_struct_datatype_DataType$UserType(dataType);
10523
- x2.classSpec$3 = this.resolveUserType__Lio_kaitai_struct_format_ClassSpec__sci_List__sci_List__s_Option(curClass, x2.name$3, path)
10524
- } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) {
10525
- var x3 = $as_Lio_kaitai_struct_datatype_DataType$EnumType(dataType);
10526
- x3.enumSpec$1 = this.resolveEnumSpec__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option(curClass, x3.name$1);
10527
- if (x3.enumSpec$1.isEmpty__Z()) {
10528
- var this$1 = x3.name$1;
10529
- var err = new $c_Lio_kaitai_struct_precompile_EnumNotFoundError().init___T__Lio_kaitai_struct_format_ClassSpec($f_sc_TraversableOnce__mkString__T__T__T__T(this$1, "", "::", ""), curClass);
10530
- throw $m_Lio_kaitai_struct_problems_KSYParseError$().withText__T__sci_List__Lio_kaitai_struct_problems_CompilationProblemException(err.s$1, path)
10531
- }
10532
- } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) {
10533
- var x4 = $as_Lio_kaitai_struct_datatype_DataType$SwitchType(dataType);
10534
- x4.cases$2.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, curClass$1, path$1) {
10535
- return (function(x0$1$2) {
10536
- var x0$1 = $as_T2(x0$1$2);
10537
- if ((x0$1 !== null)) {
10538
- var caseName = $as_Lio_kaitai_struct_exprlang_Ast$expr(x0$1.$$und1__O());
10539
- var ut = $as_Lio_kaitai_struct_datatype_DataType(x0$1.$$und2__O());
10540
- $m_sci_List$();
10541
- var array = ["type", "cases", caseName.toString__T()];
10542
- var i = (((-1) + $uI(array.length)) | 0);
10543
- var result = $m_sci_Nil$();
10544
- while ((i >= 0)) {
10545
- var this$5 = result;
10546
- var index = i;
10547
- var x = array[index];
10548
- result = new $c_sci_$colon$colon().init___O__sci_List(x, this$5);
10549
- i = (((-1) + i) | 0)
10550
- };
10551
- var jsx$1 = result;
10552
- var this$6 = $m_sci_List$();
10553
- $this.resolveUserType__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType__sci_List__V(curClass$1, ut, $as_sci_List(path$1.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$6.ReusableCBFInstance$2)))
10554
- } else {
10555
- throw new $c_s_MatchError().init___O(x0$1)
10556
- }
10557
- })
10558
- })(this, curClass, path)))
10559
- } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayType)) {
10560
- var x5 = $as_Lio_kaitai_struct_datatype_DataType$ArrayType(dataType);
10561
- this.resolveUserType__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType__sci_List__V(curClass, x5.elType$2, path)
10562
- }
10563
- });
10564
- $c_Lio_kaitai_struct_precompile_ResolveTypes.prototype.init___Lio_kaitai_struct_format_ClassSpecs__Z = (function(specs, opaqueTypes) {
10565
- this.specs$1 = specs;
10566
- this.opaqueTypes$1 = opaqueTypes;
10567
- return this
10568
- });
10569
- $c_Lio_kaitai_struct_precompile_ResolveTypes.prototype.resolveEnumSpec__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option = (function(curClass, typeName) {
10570
- $m_Lio_kaitai_struct_Log$();
10571
- var res = this.realResolveEnumSpec__p1__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option(curClass, typeName);
10572
- var x = $m_s_None$();
10573
- if ((x === res)) {
10574
- $m_Lio_kaitai_struct_Log$();
10575
- return res
10576
- } else if ((res instanceof $c_s_Some)) {
10577
- var x2 = $as_s_Some(res);
10578
- $as_Lio_kaitai_struct_format_EnumSpec(x2.value$2);
10579
- $m_Lio_kaitai_struct_Log$();
10580
- return res
10581
- } else {
10582
- throw new $c_s_MatchError().init___O(res)
10583
- }
10584
- });
10585
- var $d_Lio_kaitai_struct_precompile_ResolveTypes = new $TypeData().initClass({
10586
- Lio_kaitai_struct_precompile_ResolveTypes: 0
10587
- }, false, "io.kaitai.struct.precompile.ResolveTypes", {
10588
- Lio_kaitai_struct_precompile_ResolveTypes: 1,
10589
- O: 1
10590
- });
10591
- $c_Lio_kaitai_struct_precompile_ResolveTypes.prototype.$classData = $d_Lio_kaitai_struct_precompile_ResolveTypes;
10592
- /** @constructor */
10593
10270
  function $c_Lio_kaitai_struct_precompile_SpecsValueTypeDerive() {
10594
10271
  $c_O.call(this);
10595
10272
  this.specs$1 = null
@@ -22459,6 +22136,484 @@ function $asArrayOf_Lio_kaitai_struct_format_AttrLikeSpec(obj, depth) {
22459
22136
  return (($isArrayOf_Lio_kaitai_struct_format_AttrLikeSpec(obj, depth) || (obj === null)) ? obj : $throwArrayCastException(obj, "Lio.kaitai.struct.format.AttrLikeSpec;", depth))
22460
22137
  }
22461
22138
  /** @constructor */
22139
+ function $c_Lio_kaitai_struct_precompile_MarkupClassNames() {
22140
+ $c_O.call(this);
22141
+ this.classSpecs$1 = null
22142
+ }
22143
+ $c_Lio_kaitai_struct_precompile_MarkupClassNames.prototype = new $h_O();
22144
+ $c_Lio_kaitai_struct_precompile_MarkupClassNames.prototype.constructor = $c_Lio_kaitai_struct_precompile_MarkupClassNames;
22145
+ /** @constructor */
22146
+ function $h_Lio_kaitai_struct_precompile_MarkupClassNames() {
22147
+ /*<skip>*/
22148
+ }
22149
+ $h_Lio_kaitai_struct_precompile_MarkupClassNames.prototype = $c_Lio_kaitai_struct_precompile_MarkupClassNames.prototype;
22150
+ $c_Lio_kaitai_struct_precompile_MarkupClassNames.prototype.markupClassNames__Lio_kaitai_struct_format_ClassSpec__V = (function(curClass) {
22151
+ curClass.enums$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, curClass$1) {
22152
+ return (function(x0$1$2) {
22153
+ var x0$1 = $as_T2(x0$1$2);
22154
+ if ((x0$1 !== null)) {
22155
+ var enumName = $as_T(x0$1.$$und1__O());
22156
+ var enumSpec = $as_Lio_kaitai_struct_format_EnumSpec(x0$1.$$und2__O());
22157
+ var x$1 = curClass$1.name$1;
22158
+ $m_sci_List$();
22159
+ var array = [enumName];
22160
+ var i = (((-1) + $uI(array.length)) | 0);
22161
+ var result = $m_sci_Nil$();
22162
+ while ((i >= 0)) {
22163
+ var this$4 = result;
22164
+ var index = i;
22165
+ var x = array[index];
22166
+ result = new $c_sci_$colon$colon().init___O__sci_List(x, this$4);
22167
+ i = (((-1) + i) | 0)
22168
+ };
22169
+ enumSpec.name$1 = result.$$colon$colon$colon__sci_List__sci_List(x$1)
22170
+ } else {
22171
+ throw new $c_s_MatchError().init___O(x0$1)
22172
+ }
22173
+ })
22174
+ })(this, curClass)));
22175
+ curClass.types$1.foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2$1, curClass$2) {
22176
+ return (function(x0$2$2) {
22177
+ var x0$2 = $as_T2(x0$2$2);
22178
+ matchEnd4: {
22179
+ if ((x0$2 !== null)) {
22180
+ var nestedName = $as_T(x0$2.$$und1__O());
22181
+ var nestedClass = $as_Lio_kaitai_struct_format_ClassSpec(x0$2.$$und2__O());
22182
+ if ((nestedName !== null)) {
22183
+ var x$2 = curClass$2.name$1;
22184
+ $m_sci_List$();
22185
+ var array$1 = [nestedName];
22186
+ var i$1 = (((-1) + $uI(array$1.length)) | 0);
22187
+ var result$1 = $m_sci_Nil$();
22188
+ while ((i$1 >= 0)) {
22189
+ var this$8 = result$1;
22190
+ var index$1 = i$1;
22191
+ var x$3 = array$1[index$1];
22192
+ result$1 = new $c_sci_$colon$colon().init___O__sci_List(x$3, this$8);
22193
+ i$1 = (((-1) + i$1) | 0)
22194
+ };
22195
+ nestedClass.name$1 = result$1.$$colon$colon$colon__sci_List__sci_List(x$2);
22196
+ nestedClass.upClass$1 = new $c_s_Some().init___O(curClass$2);
22197
+ this$2$1.markupClassNames__Lio_kaitai_struct_format_ClassSpec__V(nestedClass);
22198
+ break matchEnd4
22199
+ }
22200
+ };
22201
+ throw new $c_s_MatchError().init___O(x0$2)
22202
+ }
22203
+ })
22204
+ })(this, curClass)))
22205
+ });
22206
+ $c_Lio_kaitai_struct_precompile_MarkupClassNames.prototype.init___Lio_kaitai_struct_format_ClassSpecs = (function(classSpecs) {
22207
+ this.classSpecs$1 = classSpecs;
22208
+ return this
22209
+ });
22210
+ $c_Lio_kaitai_struct_precompile_MarkupClassNames.prototype.run__sc_Iterable = (function() {
22211
+ var this$1 = this.classSpecs$1;
22212
+ var iterTable = this$1.table$5;
22213
+ var idx = $f_scm_HashTable__scala$collection$mutable$HashTable$$lastPopulatedIndex__I(this$1);
22214
+ var es = iterTable.get(idx);
22215
+ while ((es !== null)) {
22216
+ var this$2 = es;
22217
+ var next = this$2.next$1;
22218
+ var arg1 = es;
22219
+ var e = $as_scm_DefaultEntry(arg1);
22220
+ var _2 = e.value$1;
22221
+ var curClass = $as_Lio_kaitai_struct_format_ClassSpec(_2);
22222
+ this.markupClassNames__Lio_kaitai_struct_format_ClassSpec__V(curClass);
22223
+ es = next;
22224
+ while (((es === null) && (idx > 0))) {
22225
+ idx = (((-1) + idx) | 0);
22226
+ es = iterTable.get(idx)
22227
+ }
22228
+ };
22229
+ var xo = $m_s_None$();
22230
+ return xo.toList__sci_List()
22231
+ });
22232
+ var $d_Lio_kaitai_struct_precompile_MarkupClassNames = new $TypeData().initClass({
22233
+ Lio_kaitai_struct_precompile_MarkupClassNames: 0
22234
+ }, false, "io.kaitai.struct.precompile.MarkupClassNames", {
22235
+ Lio_kaitai_struct_precompile_MarkupClassNames: 1,
22236
+ O: 1,
22237
+ Lio_kaitai_struct_precompile_PrecompileStep: 1
22238
+ });
22239
+ $c_Lio_kaitai_struct_precompile_MarkupClassNames.prototype.$classData = $d_Lio_kaitai_struct_precompile_MarkupClassNames;
22240
+ /** @constructor */
22241
+ function $c_Lio_kaitai_struct_precompile_ResolveTypes() {
22242
+ $c_O.call(this);
22243
+ this.specs$1 = null;
22244
+ this.opaqueTypes$1 = false
22245
+ }
22246
+ $c_Lio_kaitai_struct_precompile_ResolveTypes.prototype = new $h_O();
22247
+ $c_Lio_kaitai_struct_precompile_ResolveTypes.prototype.constructor = $c_Lio_kaitai_struct_precompile_ResolveTypes;
22248
+ /** @constructor */
22249
+ function $h_Lio_kaitai_struct_precompile_ResolveTypes() {
22250
+ /*<skip>*/
22251
+ }
22252
+ $h_Lio_kaitai_struct_precompile_ResolveTypes.prototype = $c_Lio_kaitai_struct_precompile_ResolveTypes.prototype;
22253
+ $c_Lio_kaitai_struct_precompile_ResolveTypes.prototype.resolveUserType__Lio_kaitai_struct_format_ClassSpec__sci_List__sci_List__T2 = (function(curClass, typeName, path) {
22254
+ var res = this.realResolveUserType__p1__Lio_kaitai_struct_format_ClassSpec__sci_List__sci_List__s_Option(curClass, typeName, path);
22255
+ var x = $m_s_None$();
22256
+ if ((x === res)) {
22257
+ return (this.opaqueTypes$1 ? ($m_Lio_kaitai_struct_Log$(), new $c_T2().init___O__O(new $c_s_Some().init___O($m_Lio_kaitai_struct_format_ClassSpec$().opaquePlaceholder__sci_List__Lio_kaitai_struct_format_ClassSpec(typeName)), $m_s_None$())) : new $c_T2().init___O__O($m_s_None$(), new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_TypeNotFoundErr().init___sci_List__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option(typeName, curClass, path, $m_s_None$()))))
22258
+ } else if ((res instanceof $c_s_Some)) {
22259
+ var x2 = $as_s_Some(res);
22260
+ $as_Lio_kaitai_struct_format_ClassSpec(x2.value$2);
22261
+ $m_Lio_kaitai_struct_Log$();
22262
+ return new $c_T2().init___O__O(res, $m_s_None$())
22263
+ } else {
22264
+ throw new $c_s_MatchError().init___O(res)
22265
+ }
22266
+ });
22267
+ $c_Lio_kaitai_struct_precompile_ResolveTypes.prototype.resolveUserType__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType__sci_List__sc_Iterable = (function(curClass, dataType, path) {
22268
+ if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) {
22269
+ var x2 = $as_Lio_kaitai_struct_datatype_DataType$UserType(dataType);
22270
+ var x1$2 = this.resolveUserType__Lio_kaitai_struct_format_ClassSpec__sci_List__sci_List__T2(curClass, x2.name$3, path);
22271
+ if ((x1$2 === null)) {
22272
+ throw new $c_s_MatchError().init___O(x1$2)
22273
+ };
22274
+ var resClassSpec = $as_s_Option(x1$2.$$und1__O());
22275
+ var problems = $as_s_Option(x1$2.$$und2__O());
22276
+ x2.classSpec$3 = resClassSpec;
22277
+ return problems.toList__sci_List()
22278
+ } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$EnumType)) {
22279
+ var x3 = $as_Lio_kaitai_struct_datatype_DataType$EnumType(dataType);
22280
+ x3.enumSpec$1 = this.resolveEnumSpec__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option(curClass, x3.name$1);
22281
+ if (x3.enumSpec$1.isEmpty__Z()) {
22282
+ var xo = new $c_s_Some().init___O(new $c_Lio_kaitai_struct_problems_EnumNotFoundErr().init___sci_List__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option(x3.name$1, curClass, path, $m_s_None$()));
22283
+ return xo.toList__sci_List()
22284
+ } else {
22285
+ var xo$1 = $m_s_None$();
22286
+ return xo$1.toList__sci_List()
22287
+ }
22288
+ } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) {
22289
+ var x4 = $as_Lio_kaitai_struct_datatype_DataType$SwitchType(dataType);
22290
+ var this$11 = x4.cases$2;
22291
+ var f = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this, curClass$1, path$1) {
22292
+ return (function(x0$1$2) {
22293
+ var x0$1 = $as_T2(x0$1$2);
22294
+ if ((x0$1 !== null)) {
22295
+ var caseName = $as_Lio_kaitai_struct_exprlang_Ast$expr(x0$1.$$und1__O());
22296
+ var ut = $as_Lio_kaitai_struct_datatype_DataType(x0$1.$$und2__O());
22297
+ $m_sci_List$();
22298
+ var array = ["type", "cases", caseName.toString__T()];
22299
+ var i = (((-1) + $uI(array.length)) | 0);
22300
+ var result = $m_sci_Nil$();
22301
+ while ((i >= 0)) {
22302
+ var this$8 = result;
22303
+ var index = i;
22304
+ var x = array[index];
22305
+ result = new $c_sci_$colon$colon().init___O__sci_List(x, this$8);
22306
+ i = (((-1) + i) | 0)
22307
+ };
22308
+ var jsx$1 = result;
22309
+ var this$9 = $m_sci_List$();
22310
+ return $this.resolveUserType__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType__sci_List__sc_Iterable(curClass$1, ut, $as_sci_List(path$1.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(jsx$1, this$9.ReusableCBFInstance$2)))
22311
+ } else {
22312
+ throw new $c_s_MatchError().init___O(x0$1)
22313
+ }
22314
+ })
22315
+ })(this, curClass, path));
22316
+ var this$10 = $m_sci_Iterable$();
22317
+ var bf = this$10.ReusableCBFInstance$2;
22318
+ return $as_sc_Iterable($f_sc_TraversableLike__flatMap__F1__scg_CanBuildFrom__O(this$11, f, bf))
22319
+ } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$ArrayType)) {
22320
+ var x5 = $as_Lio_kaitai_struct_datatype_DataType$ArrayType(dataType);
22321
+ return this.resolveUserType__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType__sci_List__sc_Iterable(curClass, x5.elType$2, path)
22322
+ } else {
22323
+ var xo$2 = $m_s_None$();
22324
+ return xo$2.toList__sci_List()
22325
+ }
22326
+ });
22327
+ $c_Lio_kaitai_struct_precompile_ResolveTypes.prototype.realResolveUserType__p1__Lio_kaitai_struct_format_ClassSpec__sci_List__sci_List__s_Option = (function(curClass, typeName, path) {
22328
+ _realResolveUserType: while (true) {
22329
+ $m_Lio_kaitai_struct_Log$();
22330
+ var x1 = typeName;
22331
+ if ((!(x1 instanceof $c_sci_$colon$colon))) {
22332
+ throw new $c_s_MatchError().init___O(x1)
22333
+ };
22334
+ var x2 = $as_sci_$colon$colon(x1);
22335
+ var firstName = $as_T(x2.head$5);
22336
+ var restNames = x2.tl$5;
22337
+ var this$1 = curClass.types$1.get__O__s_Option(firstName);
22338
+ if (this$1.isEmpty__Z()) {
22339
+ var resolvedHere = $m_s_None$()
22340
+ } else {
22341
+ var arg1 = this$1.get__O();
22342
+ var nestedClass = $as_Lio_kaitai_struct_format_ClassSpec(arg1);
22343
+ var resolvedHere = (restNames.isEmpty__Z() ? new $c_s_Some().init___O(nestedClass) : this.realResolveUserType__p1__Lio_kaitai_struct_format_ClassSpec__sci_List__sci_List__s_Option(nestedClass, restNames, path))
22344
+ };
22345
+ if ((resolvedHere instanceof $c_s_Some)) {
22346
+ return resolvedHere
22347
+ } else {
22348
+ var x$3 = $m_s_None$();
22349
+ if ((x$3 === resolvedHere)) {
22350
+ var x1$3 = curClass.upClass$1;
22351
+ if ((x1$3 instanceof $c_s_Some)) {
22352
+ var x2$2 = $as_s_Some(x1$3);
22353
+ var upClass = $as_Lio_kaitai_struct_format_ClassSpec(x2$2.value$2);
22354
+ curClass = upClass;
22355
+ continue _realResolveUserType
22356
+ } else {
22357
+ var x$5 = $m_s_None$();
22358
+ if ((x$5 === x1$3)) {
22359
+ var x$7 = curClass.name$1.head__O();
22360
+ if (((x$7 === null) ? (firstName === null) : $objectEquals(x$7, firstName))) {
22361
+ return new $c_s_Some().init___O(curClass)
22362
+ } else {
22363
+ var resolvedTop = this.specs$1.get__O__s_Option(firstName);
22364
+ var x$9 = $m_s_None$();
22365
+ if ((x$9 === resolvedTop)) {
22366
+ return $m_s_None$()
22367
+ } else if ((resolvedTop instanceof $c_s_Some)) {
22368
+ var x2$3 = $as_s_Some(resolvedTop);
22369
+ var classSpec = $as_Lio_kaitai_struct_format_ClassSpec(x2$3.value$2);
22370
+ if (restNames.isEmpty__Z()) {
22371
+ return resolvedTop
22372
+ } else {
22373
+ curClass = classSpec;
22374
+ typeName = restNames;
22375
+ continue _realResolveUserType
22376
+ }
22377
+ } else {
22378
+ throw new $c_s_MatchError().init___O(resolvedTop)
22379
+ }
22380
+ }
22381
+ } else {
22382
+ throw new $c_s_MatchError().init___O(x1$3)
22383
+ }
22384
+ }
22385
+ } else {
22386
+ throw new $c_s_MatchError().init___O(resolvedHere)
22387
+ }
22388
+ }
22389
+ }
22390
+ });
22391
+ $c_Lio_kaitai_struct_precompile_ResolveTypes.prototype.resolveUserTypes__Lio_kaitai_struct_format_ClassSpec__sc_Iterable = (function(curClass) {
22392
+ var this$2 = curClass.seq$1;
22393
+ var f = (function($this, curClass$1) {
22394
+ return (function(attr$2) {
22395
+ var attr = $as_Lio_kaitai_struct_format_AttrSpec(attr$2);
22396
+ return $this.resolveUserType__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType__sci_List__sc_Iterable(curClass$1, attr.dataType$1, attr.path$1)
22397
+ })
22398
+ })(this, curClass);
22399
+ var this$1 = $m_sci_List$();
22400
+ var bf = this$1.ReusableCBFInstance$2;
22401
+ if ((bf === $m_sci_List$().ReusableCBFInstance$2)) {
22402
+ if ((this$2 === $m_sci_Nil$())) {
22403
+ var jsx$1 = $m_sci_Nil$()
22404
+ } else {
22405
+ var rest = this$2;
22406
+ var found = new $c_sr_BooleanRef().init___Z(false);
22407
+ var h = new $c_sr_ObjectRef().init___O(null);
22408
+ var t = new $c_sr_ObjectRef().init___O(null);
22409
+ while ((rest !== $m_sci_Nil$())) {
22410
+ var arg1 = rest.head__O();
22411
+ $as_sc_GenTraversableOnce(f(arg1)).seq__sc_TraversableOnce().foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this$1, found$1, h$1, t$1) {
22412
+ return (function(b$2) {
22413
+ if ((!found$1.elem$1)) {
22414
+ h$1.elem$1 = new $c_sci_$colon$colon().init___O__sci_List(b$2, $m_sci_Nil$());
22415
+ t$1.elem$1 = $as_sci_$colon$colon(h$1.elem$1);
22416
+ found$1.elem$1 = true
22417
+ } else {
22418
+ var nx = new $c_sci_$colon$colon().init___O__sci_List(b$2, $m_sci_Nil$());
22419
+ $as_sci_$colon$colon(t$1.elem$1).tl$5 = nx;
22420
+ t$1.elem$1 = nx
22421
+ }
22422
+ })
22423
+ })(this$2, found, h, t)));
22424
+ var this$6 = rest;
22425
+ rest = this$6.tail__sci_List()
22426
+ };
22427
+ var jsx$1 = ((!found.elem$1) ? $m_sci_Nil$() : $as_sci_$colon$colon(h.elem$1))
22428
+ }
22429
+ } else {
22430
+ $m_sci_List$();
22431
+ var b = new $c_scm_ListBuffer().init___();
22432
+ var these = this$2;
22433
+ while ((!these.isEmpty__Z())) {
22434
+ var arg1$1 = these.head__O();
22435
+ var xs = $as_sc_GenTraversableOnce(f(arg1$1)).seq__sc_TraversableOnce();
22436
+ b.$$plus$plus$eq__sc_TraversableOnce__scm_ListBuffer(xs);
22437
+ var this$8 = these;
22438
+ these = this$8.tail__sci_List()
22439
+ };
22440
+ var jsx$1 = b.toList__sci_List()
22441
+ };
22442
+ var seqProblems = $as_sc_Iterable(jsx$1);
22443
+ var this$11 = curClass.instances$1;
22444
+ var f$1 = new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2$1, curClass$2) {
22445
+ return (function(x0$1$2) {
22446
+ var x0$1 = $as_T2(x0$1$2);
22447
+ if ((x0$1 !== null)) {
22448
+ var instSpec = $as_Lio_kaitai_struct_format_InstanceSpec(x0$1.$$und2__O());
22449
+ if ((instSpec instanceof $c_Lio_kaitai_struct_format_ParseInstanceSpec)) {
22450
+ var x2 = $as_Lio_kaitai_struct_format_ParseInstanceSpec(instSpec);
22451
+ return this$2$1.resolveUserType__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType__sci_List__sc_Iterable(curClass$2, x2.dataType$2, x2.path$2)
22452
+ } else if ((instSpec instanceof $c_Lio_kaitai_struct_format_ValueInstanceSpec)) {
22453
+ var xo = $m_s_None$();
22454
+ return xo.toList__sci_List()
22455
+ } else {
22456
+ throw new $c_s_MatchError().init___O(instSpec)
22457
+ }
22458
+ } else {
22459
+ throw new $c_s_MatchError().init___O(x0$1)
22460
+ }
22461
+ })
22462
+ })(this, curClass));
22463
+ var this$10 = $m_sci_Iterable$();
22464
+ var bf$1 = this$10.ReusableCBFInstance$2;
22465
+ var instancesProblems = $as_sc_Iterable($f_sc_TraversableLike__flatMap__F1__scg_CanBuildFrom__O(this$11, f$1, bf$1));
22466
+ var this$13 = curClass.params$1;
22467
+ var f$2 = (function(this$3$1, curClass$3) {
22468
+ return (function(paramDef$2) {
22469
+ var paramDef = $as_Lio_kaitai_struct_format_ParamDefSpec(paramDef$2);
22470
+ return this$3$1.resolveUserType__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType__sci_List__sc_Iterable(curClass$3, paramDef.dataType$1, paramDef.path$1)
22471
+ })
22472
+ })(this, curClass);
22473
+ var this$12 = $m_sci_List$();
22474
+ var bf$2 = this$12.ReusableCBFInstance$2;
22475
+ if ((bf$2 === $m_sci_List$().ReusableCBFInstance$2)) {
22476
+ if ((this$13 === $m_sci_Nil$())) {
22477
+ var jsx$2 = $m_sci_Nil$()
22478
+ } else {
22479
+ var rest$1 = this$13;
22480
+ var found$2 = new $c_sr_BooleanRef().init___Z(false);
22481
+ var h$2 = new $c_sr_ObjectRef().init___O(null);
22482
+ var t$2 = new $c_sr_ObjectRef().init___O(null);
22483
+ while ((rest$1 !== $m_sci_Nil$())) {
22484
+ var arg1$2 = rest$1.head__O();
22485
+ $as_sc_GenTraversableOnce(f$2(arg1$2)).seq__sc_TraversableOnce().foreach__F1__V(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this$2, found$3, h$3, t$3) {
22486
+ return (function(b$2$1) {
22487
+ if ((!found$3.elem$1)) {
22488
+ h$3.elem$1 = new $c_sci_$colon$colon().init___O__sci_List(b$2$1, $m_sci_Nil$());
22489
+ t$3.elem$1 = $as_sci_$colon$colon(h$3.elem$1);
22490
+ found$3.elem$1 = true
22491
+ } else {
22492
+ var nx$1 = new $c_sci_$colon$colon().init___O__sci_List(b$2$1, $m_sci_Nil$());
22493
+ $as_sci_$colon$colon(t$3.elem$1).tl$5 = nx$1;
22494
+ t$3.elem$1 = nx$1
22495
+ }
22496
+ })
22497
+ })(this$13, found$2, h$2, t$2)));
22498
+ var this$17 = rest$1;
22499
+ rest$1 = this$17.tail__sci_List()
22500
+ };
22501
+ var jsx$2 = ((!found$2.elem$1) ? $m_sci_Nil$() : $as_sci_$colon$colon(h$2.elem$1))
22502
+ }
22503
+ } else {
22504
+ $m_sci_List$();
22505
+ var b$1 = new $c_scm_ListBuffer().init___();
22506
+ var these$1 = this$13;
22507
+ while ((!these$1.isEmpty__Z())) {
22508
+ var arg1$3 = these$1.head__O();
22509
+ var xs$1 = $as_sc_GenTraversableOnce(f$2(arg1$3)).seq__sc_TraversableOnce();
22510
+ b$1.$$plus$plus$eq__sc_TraversableOnce__scm_ListBuffer(xs$1);
22511
+ var this$19 = these$1;
22512
+ these$1 = this$19.tail__sci_List()
22513
+ };
22514
+ var jsx$2 = b$1.toList__sci_List()
22515
+ };
22516
+ var paramsProblems = $as_sc_Iterable(jsx$2);
22517
+ var this$20 = $m_sc_Iterable$();
22518
+ var jsx$3 = $as_sc_TraversableLike(seqProblems.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(instancesProblems, this$20.ReusableCBFInstance$2));
22519
+ var this$21 = $m_sc_Iterable$();
22520
+ return $as_sc_Iterable(jsx$3.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(paramsProblems, this$21.ReusableCBFInstance$2))
22521
+ });
22522
+ $c_Lio_kaitai_struct_precompile_ResolveTypes.prototype.realResolveEnumSpec__p1__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option = (function(curClass, typeName) {
22523
+ if ((!(typeName instanceof $c_sci_$colon$colon))) {
22524
+ throw new $c_s_MatchError().init___O(typeName)
22525
+ };
22526
+ var x2 = $as_sci_$colon$colon(typeName);
22527
+ var firstName = $as_T(x2.head$5);
22528
+ var restNames = x2.tl$5;
22529
+ if (restNames.isEmpty__Z()) {
22530
+ var resolvedHere = curClass.enums$1.get__O__s_Option(firstName)
22531
+ } else {
22532
+ var this$1 = curClass.types$1.get__O__s_Option(firstName);
22533
+ if (this$1.isEmpty__Z()) {
22534
+ var resolvedHere = $m_s_None$()
22535
+ } else {
22536
+ var arg1 = this$1.get__O();
22537
+ var nestedClass = $as_Lio_kaitai_struct_format_ClassSpec(arg1);
22538
+ var resolvedHere = this.resolveEnumSpec__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option(nestedClass, restNames)
22539
+ }
22540
+ };
22541
+ if ((resolvedHere instanceof $c_s_Some)) {
22542
+ return resolvedHere
22543
+ } else {
22544
+ var x = $m_s_None$();
22545
+ if ((x === resolvedHere)) {
22546
+ var x1$3 = curClass.upClass$1;
22547
+ if ((x1$3 instanceof $c_s_Some)) {
22548
+ var x2$2 = $as_s_Some(x1$3);
22549
+ var upClass = $as_Lio_kaitai_struct_format_ClassSpec(x2$2.value$2);
22550
+ return this.resolveEnumSpec__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option(upClass, typeName)
22551
+ } else {
22552
+ var x$4 = $m_s_None$();
22553
+ if ((x$4 === x1$3)) {
22554
+ var x$6 = curClass.name$1.head__O();
22555
+ if (((x$6 === null) ? (firstName === null) : $objectEquals(x$6, firstName))) {
22556
+ return this.resolveEnumSpec__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option(curClass, restNames)
22557
+ } else {
22558
+ var resolvedTop = this.specs$1.get__O__s_Option(firstName);
22559
+ var x$8 = $m_s_None$();
22560
+ if ((x$8 === resolvedTop)) {
22561
+ return $m_s_None$()
22562
+ } else if ((resolvedTop instanceof $c_s_Some)) {
22563
+ var x2$3 = $as_s_Some(resolvedTop);
22564
+ var classSpec = $as_Lio_kaitai_struct_format_ClassSpec(x2$3.value$2);
22565
+ return (restNames.isEmpty__Z() ? $m_s_None$() : this.resolveEnumSpec__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option(classSpec, restNames))
22566
+ } else {
22567
+ throw new $c_s_MatchError().init___O(resolvedTop)
22568
+ }
22569
+ }
22570
+ } else {
22571
+ throw new $c_s_MatchError().init___O(x1$3)
22572
+ }
22573
+ }
22574
+ } else {
22575
+ throw new $c_s_MatchError().init___O(resolvedHere)
22576
+ }
22577
+ }
22578
+ });
22579
+ $c_Lio_kaitai_struct_precompile_ResolveTypes.prototype.init___Lio_kaitai_struct_format_ClassSpecs__Z = (function(specs, opaqueTypes) {
22580
+ this.specs$1 = specs;
22581
+ this.opaqueTypes$1 = opaqueTypes;
22582
+ return this
22583
+ });
22584
+ $c_Lio_kaitai_struct_precompile_ResolveTypes.prototype.run__sc_Iterable = (function() {
22585
+ return this.specs$1.mapRec__F1__sc_Iterable(new $c_sjsr_AnonFunction1().init___sjs_js_Function1((function($this) {
22586
+ return (function(curClass$2) {
22587
+ var curClass = $as_Lio_kaitai_struct_format_ClassSpec(curClass$2);
22588
+ return $this.resolveUserTypes__Lio_kaitai_struct_format_ClassSpec__sc_Iterable(curClass)
22589
+ })
22590
+ })(this)))
22591
+ });
22592
+ $c_Lio_kaitai_struct_precompile_ResolveTypes.prototype.resolveEnumSpec__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option = (function(curClass, typeName) {
22593
+ $m_Lio_kaitai_struct_Log$();
22594
+ var res = this.realResolveEnumSpec__p1__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option(curClass, typeName);
22595
+ var x = $m_s_None$();
22596
+ if ((x === res)) {
22597
+ $m_Lio_kaitai_struct_Log$();
22598
+ return res
22599
+ } else if ((res instanceof $c_s_Some)) {
22600
+ var x2 = $as_s_Some(res);
22601
+ $as_Lio_kaitai_struct_format_EnumSpec(x2.value$2);
22602
+ $m_Lio_kaitai_struct_Log$();
22603
+ return res
22604
+ } else {
22605
+ throw new $c_s_MatchError().init___O(res)
22606
+ }
22607
+ });
22608
+ var $d_Lio_kaitai_struct_precompile_ResolveTypes = new $TypeData().initClass({
22609
+ Lio_kaitai_struct_precompile_ResolveTypes: 0
22610
+ }, false, "io.kaitai.struct.precompile.ResolveTypes", {
22611
+ Lio_kaitai_struct_precompile_ResolveTypes: 1,
22612
+ O: 1,
22613
+ Lio_kaitai_struct_precompile_PrecompileStep: 1
22614
+ });
22615
+ $c_Lio_kaitai_struct_precompile_ResolveTypes.prototype.$classData = $d_Lio_kaitai_struct_precompile_ResolveTypes;
22616
+ /** @constructor */
22462
22617
  function $c_Lio_kaitai_struct_precompile_StyleCheckIds() {
22463
22618
  $c_O.call(this);
22464
22619
  this.specs$1 = null;
@@ -47912,6 +48067,12 @@ $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumById.prototype.productPrefix__T = (fu
47912
48067
  $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumById.prototype.productArity__I = (function() {
47913
48068
  return 3
47914
48069
  });
48070
+ $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumById.prototype.init___Lio_kaitai_struct_exprlang_Ast$identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$typeId = (function(enumName, id, inType) {
48071
+ this.enumName$1 = enumName;
48072
+ this.id$1 = id;
48073
+ this.inType$1 = inType;
48074
+ return this
48075
+ });
47915
48076
  $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumById.prototype.equals__O__Z = (function(x$1) {
47916
48077
  if ((this === x$1)) {
47917
48078
  return true
@@ -47937,12 +48098,6 @@ $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumById.prototype.equals__O__Z = (functi
47937
48098
  return false
47938
48099
  }
47939
48100
  });
47940
- $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumById.prototype.init___Lio_kaitai_struct_exprlang_Ast$identifier__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$typeId = (function(enumName, id, inType) {
47941
- this.enumName$1 = enumName;
47942
- this.id$1 = id;
47943
- this.inType$1 = inType;
47944
- return this
47945
- });
47946
48101
  $c_Lio_kaitai_struct_exprlang_Ast$expr$EnumById.prototype.productElement__I__O = (function(x$1) {
47947
48102
  switch (x$1) {
47948
48103
  case 0: {
@@ -48753,14 +48908,14 @@ $h_Lio_kaitai_struct_exprlang_Ast$expr$UnaryOp.prototype = $c_Lio_kaitai_struct_
48753
48908
  $c_Lio_kaitai_struct_exprlang_Ast$expr$UnaryOp.prototype.productPrefix__T = (function() {
48754
48909
  return "UnaryOp"
48755
48910
  });
48911
+ $c_Lio_kaitai_struct_exprlang_Ast$expr$UnaryOp.prototype.productArity__I = (function() {
48912
+ return 2
48913
+ });
48756
48914
  $c_Lio_kaitai_struct_exprlang_Ast$expr$UnaryOp.prototype.init___Lio_kaitai_struct_exprlang_Ast$unaryop__Lio_kaitai_struct_exprlang_Ast$expr = (function(op, operand) {
48757
48915
  this.op$1 = op;
48758
48916
  this.operand$1 = operand;
48759
48917
  return this
48760
48918
  });
48761
- $c_Lio_kaitai_struct_exprlang_Ast$expr$UnaryOp.prototype.productArity__I = (function() {
48762
- return 2
48763
- });
48764
48919
  $c_Lio_kaitai_struct_exprlang_Ast$expr$UnaryOp.prototype.equals__O__Z = (function(x$1) {
48765
48920
  if ((this === x$1)) {
48766
48921
  return true
@@ -57384,6 +57539,143 @@ var $d_Lio_kaitai_struct_precompile_TypeNotFoundError = new $TypeData().initClas
57384
57539
  });
57385
57540
  $c_Lio_kaitai_struct_precompile_TypeNotFoundError.prototype.$classData = $d_Lio_kaitai_struct_precompile_TypeNotFoundError;
57386
57541
  /** @constructor */
57542
+ function $c_Lio_kaitai_struct_problems_EnumNotFoundErr() {
57543
+ $c_Lio_kaitai_struct_problems_CompilationProblem.call(this);
57544
+ this.name$2 = null;
57545
+ this.curClass$2 = null;
57546
+ this.path$2 = null;
57547
+ this.fileName$2 = null;
57548
+ this.coords$2 = null
57549
+ }
57550
+ $c_Lio_kaitai_struct_problems_EnumNotFoundErr.prototype = new $h_Lio_kaitai_struct_problems_CompilationProblem();
57551
+ $c_Lio_kaitai_struct_problems_EnumNotFoundErr.prototype.constructor = $c_Lio_kaitai_struct_problems_EnumNotFoundErr;
57552
+ /** @constructor */
57553
+ function $h_Lio_kaitai_struct_problems_EnumNotFoundErr() {
57554
+ /*<skip>*/
57555
+ }
57556
+ $h_Lio_kaitai_struct_problems_EnumNotFoundErr.prototype = $c_Lio_kaitai_struct_problems_EnumNotFoundErr.prototype;
57557
+ $c_Lio_kaitai_struct_problems_EnumNotFoundErr.prototype.productPrefix__T = (function() {
57558
+ return "EnumNotFoundErr"
57559
+ });
57560
+ $c_Lio_kaitai_struct_problems_EnumNotFoundErr.prototype.productArity__I = (function() {
57561
+ return 4
57562
+ });
57563
+ $c_Lio_kaitai_struct_problems_EnumNotFoundErr.prototype.equals__O__Z = (function(x$1) {
57564
+ if ((this === x$1)) {
57565
+ return true
57566
+ } else if ((x$1 instanceof $c_Lio_kaitai_struct_problems_EnumNotFoundErr)) {
57567
+ var EnumNotFoundErr$1 = $as_Lio_kaitai_struct_problems_EnumNotFoundErr(x$1);
57568
+ var x = this.name$2;
57569
+ var x$2 = EnumNotFoundErr$1.name$2;
57570
+ if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) {
57571
+ var x$3 = this.curClass$2;
57572
+ var x$4 = EnumNotFoundErr$1.curClass$2;
57573
+ var jsx$2 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4))
57574
+ } else {
57575
+ var jsx$2 = false
57576
+ };
57577
+ if (jsx$2) {
57578
+ var x$5 = this.path$2;
57579
+ var x$6 = EnumNotFoundErr$1.path$2;
57580
+ var jsx$1 = ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6))
57581
+ } else {
57582
+ var jsx$1 = false
57583
+ };
57584
+ if (jsx$1) {
57585
+ var x$7 = this.fileName$2;
57586
+ var x$8 = EnumNotFoundErr$1.fileName$2;
57587
+ return ((x$7 === null) ? (x$8 === null) : x$7.equals__O__Z(x$8))
57588
+ } else {
57589
+ return false
57590
+ }
57591
+ } else {
57592
+ return false
57593
+ }
57594
+ });
57595
+ $c_Lio_kaitai_struct_problems_EnumNotFoundErr.prototype.severity__Lio_kaitai_struct_problems_ProblemSeverity = (function() {
57596
+ return $m_Lio_kaitai_struct_problems_ProblemSeverity$Error$()
57597
+ });
57598
+ $c_Lio_kaitai_struct_problems_EnumNotFoundErr.prototype.productElement__I__O = (function(x$1) {
57599
+ switch (x$1) {
57600
+ case 0: {
57601
+ return this.name$2;
57602
+ break
57603
+ }
57604
+ case 1: {
57605
+ return this.curClass$2;
57606
+ break
57607
+ }
57608
+ case 2: {
57609
+ return this.path$2;
57610
+ break
57611
+ }
57612
+ case 3: {
57613
+ return this.fileName$2;
57614
+ break
57615
+ }
57616
+ default: {
57617
+ throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1))
57618
+ }
57619
+ }
57620
+ });
57621
+ $c_Lio_kaitai_struct_problems_EnumNotFoundErr.prototype.toString__T = (function() {
57622
+ return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this)
57623
+ });
57624
+ $c_Lio_kaitai_struct_problems_EnumNotFoundErr.prototype.coords__Lio_kaitai_struct_problems_ProblemCoords = (function() {
57625
+ return this.coords$2
57626
+ });
57627
+ $c_Lio_kaitai_struct_problems_EnumNotFoundErr.prototype.localizedInFile__T__Lio_kaitai_struct_problems_CompilationProblem = (function(fileName) {
57628
+ var x$1 = new $c_s_Some().init___O(fileName);
57629
+ var x$2 = this.name$2;
57630
+ var x$3 = this.curClass$2;
57631
+ var x$4 = this.path$2;
57632
+ return new $c_Lio_kaitai_struct_problems_EnumNotFoundErr().init___sci_List__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option(x$2, x$3, x$4, x$1)
57633
+ });
57634
+ $c_Lio_kaitai_struct_problems_EnumNotFoundErr.prototype.text__T = (function() {
57635
+ var this$1 = this.name$2;
57636
+ var jsx$1 = $f_sc_TraversableOnce__mkString__T__T__T__T(this$1, "", "::", "");
57637
+ var this$2 = this.curClass$2;
57638
+ var this$3 = this$2.name$1;
57639
+ return ((("unable to find enum '" + jsx$1) + "', searching from ") + $f_sc_TraversableOnce__mkString__T__T__T__T(this$3, "", "::", ""))
57640
+ });
57641
+ $c_Lio_kaitai_struct_problems_EnumNotFoundErr.prototype.hashCode__I = (function() {
57642
+ var this$2 = $m_s_util_hashing_MurmurHash3$();
57643
+ return this$2.productHash__s_Product__I__I(this, (-889275714))
57644
+ });
57645
+ $c_Lio_kaitai_struct_problems_EnumNotFoundErr.prototype.productIterator__sc_Iterator = (function() {
57646
+ return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this)
57647
+ });
57648
+ $c_Lio_kaitai_struct_problems_EnumNotFoundErr.prototype.init___sci_List__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option = (function(name, curClass, path, fileName) {
57649
+ this.name$2 = name;
57650
+ this.curClass$2 = curClass;
57651
+ this.path$2 = path;
57652
+ this.fileName$2 = fileName;
57653
+ this.coords$2 = new $c_Lio_kaitai_struct_problems_ProblemCoords().init___s_Option__s_Option__s_Option__s_Option(fileName, new $c_s_Some().init___O(path), $m_s_None$(), $m_s_None$());
57654
+ return this
57655
+ });
57656
+ function $as_Lio_kaitai_struct_problems_EnumNotFoundErr(obj) {
57657
+ return (((obj instanceof $c_Lio_kaitai_struct_problems_EnumNotFoundErr) || (obj === null)) ? obj : $throwClassCastException(obj, "io.kaitai.struct.problems.EnumNotFoundErr"))
57658
+ }
57659
+ function $isArrayOf_Lio_kaitai_struct_problems_EnumNotFoundErr(obj, depth) {
57660
+ return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_problems_EnumNotFoundErr)))
57661
+ }
57662
+ function $asArrayOf_Lio_kaitai_struct_problems_EnumNotFoundErr(obj, depth) {
57663
+ return (($isArrayOf_Lio_kaitai_struct_problems_EnumNotFoundErr(obj, depth) || (obj === null)) ? obj : $throwArrayCastException(obj, "Lio.kaitai.struct.problems.EnumNotFoundErr;", depth))
57664
+ }
57665
+ var $d_Lio_kaitai_struct_problems_EnumNotFoundErr = new $TypeData().initClass({
57666
+ Lio_kaitai_struct_problems_EnumNotFoundErr: 0
57667
+ }, false, "io.kaitai.struct.problems.EnumNotFoundErr", {
57668
+ Lio_kaitai_struct_problems_EnumNotFoundErr: 1,
57669
+ Lio_kaitai_struct_problems_CompilationProblem: 1,
57670
+ O: 1,
57671
+ Lio_kaitai_struct_Jsonable: 1,
57672
+ s_Product: 1,
57673
+ s_Equals: 1,
57674
+ s_Serializable: 1,
57675
+ Ljava_io_Serializable: 1
57676
+ });
57677
+ $c_Lio_kaitai_struct_problems_EnumNotFoundErr.prototype.$classData = $d_Lio_kaitai_struct_problems_EnumNotFoundErr;
57678
+ /** @constructor */
57387
57679
  function $c_Lio_kaitai_struct_problems_ErrorInInput() {
57388
57680
  $c_Lio_kaitai_struct_problems_CompilationProblem.call(this);
57389
57681
  this.err$2 = null;
@@ -57910,6 +58202,143 @@ var $d_Lio_kaitai_struct_problems_ParamMismatchError = new $TypeData().initClass
57910
58202
  });
57911
58203
  $c_Lio_kaitai_struct_problems_ParamMismatchError.prototype.$classData = $d_Lio_kaitai_struct_problems_ParamMismatchError;
57912
58204
  /** @constructor */
58205
+ function $c_Lio_kaitai_struct_problems_TypeNotFoundErr() {
58206
+ $c_Lio_kaitai_struct_problems_CompilationProblem.call(this);
58207
+ this.name$2 = null;
58208
+ this.curClass$2 = null;
58209
+ this.path$2 = null;
58210
+ this.fileName$2 = null;
58211
+ this.coords$2 = null
58212
+ }
58213
+ $c_Lio_kaitai_struct_problems_TypeNotFoundErr.prototype = new $h_Lio_kaitai_struct_problems_CompilationProblem();
58214
+ $c_Lio_kaitai_struct_problems_TypeNotFoundErr.prototype.constructor = $c_Lio_kaitai_struct_problems_TypeNotFoundErr;
58215
+ /** @constructor */
58216
+ function $h_Lio_kaitai_struct_problems_TypeNotFoundErr() {
58217
+ /*<skip>*/
58218
+ }
58219
+ $h_Lio_kaitai_struct_problems_TypeNotFoundErr.prototype = $c_Lio_kaitai_struct_problems_TypeNotFoundErr.prototype;
58220
+ $c_Lio_kaitai_struct_problems_TypeNotFoundErr.prototype.productPrefix__T = (function() {
58221
+ return "TypeNotFoundErr"
58222
+ });
58223
+ $c_Lio_kaitai_struct_problems_TypeNotFoundErr.prototype.productArity__I = (function() {
58224
+ return 4
58225
+ });
58226
+ $c_Lio_kaitai_struct_problems_TypeNotFoundErr.prototype.equals__O__Z = (function(x$1) {
58227
+ if ((this === x$1)) {
58228
+ return true
58229
+ } else if ((x$1 instanceof $c_Lio_kaitai_struct_problems_TypeNotFoundErr)) {
58230
+ var TypeNotFoundErr$1 = $as_Lio_kaitai_struct_problems_TypeNotFoundErr(x$1);
58231
+ var x = this.name$2;
58232
+ var x$2 = TypeNotFoundErr$1.name$2;
58233
+ if (((x === null) ? (x$2 === null) : x.equals__O__Z(x$2))) {
58234
+ var x$3 = this.curClass$2;
58235
+ var x$4 = TypeNotFoundErr$1.curClass$2;
58236
+ var jsx$2 = ((x$3 === null) ? (x$4 === null) : x$3.equals__O__Z(x$4))
58237
+ } else {
58238
+ var jsx$2 = false
58239
+ };
58240
+ if (jsx$2) {
58241
+ var x$5 = this.path$2;
58242
+ var x$6 = TypeNotFoundErr$1.path$2;
58243
+ var jsx$1 = ((x$5 === null) ? (x$6 === null) : x$5.equals__O__Z(x$6))
58244
+ } else {
58245
+ var jsx$1 = false
58246
+ };
58247
+ if (jsx$1) {
58248
+ var x$7 = this.fileName$2;
58249
+ var x$8 = TypeNotFoundErr$1.fileName$2;
58250
+ return ((x$7 === null) ? (x$8 === null) : x$7.equals__O__Z(x$8))
58251
+ } else {
58252
+ return false
58253
+ }
58254
+ } else {
58255
+ return false
58256
+ }
58257
+ });
58258
+ $c_Lio_kaitai_struct_problems_TypeNotFoundErr.prototype.severity__Lio_kaitai_struct_problems_ProblemSeverity = (function() {
58259
+ return $m_Lio_kaitai_struct_problems_ProblemSeverity$Error$()
58260
+ });
58261
+ $c_Lio_kaitai_struct_problems_TypeNotFoundErr.prototype.productElement__I__O = (function(x$1) {
58262
+ switch (x$1) {
58263
+ case 0: {
58264
+ return this.name$2;
58265
+ break
58266
+ }
58267
+ case 1: {
58268
+ return this.curClass$2;
58269
+ break
58270
+ }
58271
+ case 2: {
58272
+ return this.path$2;
58273
+ break
58274
+ }
58275
+ case 3: {
58276
+ return this.fileName$2;
58277
+ break
58278
+ }
58279
+ default: {
58280
+ throw new $c_jl_IndexOutOfBoundsException().init___T(("" + x$1))
58281
+ }
58282
+ }
58283
+ });
58284
+ $c_Lio_kaitai_struct_problems_TypeNotFoundErr.prototype.toString__T = (function() {
58285
+ return $m_sr_ScalaRunTime$().$$undtoString__s_Product__T(this)
58286
+ });
58287
+ $c_Lio_kaitai_struct_problems_TypeNotFoundErr.prototype.coords__Lio_kaitai_struct_problems_ProblemCoords = (function() {
58288
+ return this.coords$2
58289
+ });
58290
+ $c_Lio_kaitai_struct_problems_TypeNotFoundErr.prototype.localizedInFile__T__Lio_kaitai_struct_problems_CompilationProblem = (function(fileName) {
58291
+ var x$1 = new $c_s_Some().init___O(fileName);
58292
+ var x$2 = this.name$2;
58293
+ var x$3 = this.curClass$2;
58294
+ var x$4 = this.path$2;
58295
+ return new $c_Lio_kaitai_struct_problems_TypeNotFoundErr().init___sci_List__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option(x$2, x$3, x$4, x$1)
58296
+ });
58297
+ $c_Lio_kaitai_struct_problems_TypeNotFoundErr.prototype.text__T = (function() {
58298
+ var this$1 = this.name$2;
58299
+ var jsx$1 = $f_sc_TraversableOnce__mkString__T__T__T__T(this$1, "", "::", "");
58300
+ var this$2 = this.curClass$2;
58301
+ var this$3 = this$2.name$1;
58302
+ return ((("unable to find type '" + jsx$1) + "', searching from ") + $f_sc_TraversableOnce__mkString__T__T__T__T(this$3, "", "::", ""))
58303
+ });
58304
+ $c_Lio_kaitai_struct_problems_TypeNotFoundErr.prototype.hashCode__I = (function() {
58305
+ var this$2 = $m_s_util_hashing_MurmurHash3$();
58306
+ return this$2.productHash__s_Product__I__I(this, (-889275714))
58307
+ });
58308
+ $c_Lio_kaitai_struct_problems_TypeNotFoundErr.prototype.productIterator__sc_Iterator = (function() {
58309
+ return new $c_sr_ScalaRunTime$$anon$1().init___s_Product(this)
58310
+ });
58311
+ $c_Lio_kaitai_struct_problems_TypeNotFoundErr.prototype.init___sci_List__Lio_kaitai_struct_format_ClassSpec__sci_List__s_Option = (function(name, curClass, path, fileName) {
58312
+ this.name$2 = name;
58313
+ this.curClass$2 = curClass;
58314
+ this.path$2 = path;
58315
+ this.fileName$2 = fileName;
58316
+ this.coords$2 = new $c_Lio_kaitai_struct_problems_ProblemCoords().init___s_Option__s_Option__s_Option__s_Option(fileName, new $c_s_Some().init___O(path), $m_s_None$(), $m_s_None$());
58317
+ return this
58318
+ });
58319
+ function $as_Lio_kaitai_struct_problems_TypeNotFoundErr(obj) {
58320
+ return (((obj instanceof $c_Lio_kaitai_struct_problems_TypeNotFoundErr) || (obj === null)) ? obj : $throwClassCastException(obj, "io.kaitai.struct.problems.TypeNotFoundErr"))
58321
+ }
58322
+ function $isArrayOf_Lio_kaitai_struct_problems_TypeNotFoundErr(obj, depth) {
58323
+ return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.Lio_kaitai_struct_problems_TypeNotFoundErr)))
58324
+ }
58325
+ function $asArrayOf_Lio_kaitai_struct_problems_TypeNotFoundErr(obj, depth) {
58326
+ return (($isArrayOf_Lio_kaitai_struct_problems_TypeNotFoundErr(obj, depth) || (obj === null)) ? obj : $throwArrayCastException(obj, "Lio.kaitai.struct.problems.TypeNotFoundErr;", depth))
58327
+ }
58328
+ var $d_Lio_kaitai_struct_problems_TypeNotFoundErr = new $TypeData().initClass({
58329
+ Lio_kaitai_struct_problems_TypeNotFoundErr: 0
58330
+ }, false, "io.kaitai.struct.problems.TypeNotFoundErr", {
58331
+ Lio_kaitai_struct_problems_TypeNotFoundErr: 1,
58332
+ Lio_kaitai_struct_problems_CompilationProblem: 1,
58333
+ O: 1,
58334
+ Lio_kaitai_struct_Jsonable: 1,
58335
+ s_Product: 1,
58336
+ s_Equals: 1,
58337
+ s_Serializable: 1,
58338
+ Ljava_io_Serializable: 1
58339
+ });
58340
+ $c_Lio_kaitai_struct_problems_TypeNotFoundErr.prototype.$classData = $d_Lio_kaitai_struct_problems_TypeNotFoundErr;
58341
+ /** @constructor */
57913
58342
  function $c_Ljava_io_PrintStream() {
57914
58343
  $c_Ljava_io_FilterOutputStream.call(this);
57915
58344
  this.encoder$3 = null;
@@ -66702,12 +67131,12 @@ $c_Lio_kaitai_struct_translators_JavaTranslator.prototype.arraySize__Lio_kaitai_
66702
67131
  return this.arraySize__Lio_kaitai_struct_exprlang_Ast$expr__T(a)
66703
67132
  });
66704
67133
  $c_Lio_kaitai_struct_translators_JavaTranslator.prototype.doStrCompareOp__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$cmpop__Lio_kaitai_struct_exprlang_Ast$expr__T = (function(left, op, right) {
66705
- var x$2 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$();
66706
- if (((op !== null) && (op === x$2))) {
67134
+ var x = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$Eq$();
67135
+ if ((x === op)) {
66707
67136
  return (((this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left) + ".equals(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ")")
66708
67137
  } else {
66709
- var x$4 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$NotEq$();
66710
- if (((op !== null) && (op === x$4))) {
67138
+ var x$3 = $m_Lio_kaitai_struct_exprlang_Ast$cmpop$NotEq$();
67139
+ if ((x$3 === op)) {
66711
67140
  return (((("!(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + ").equals(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ")")
66712
67141
  } else {
66713
67142
  return (((((("(" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(left)) + ".compareTo(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(right)) + ") ") + $f_Lio_kaitai_struct_translators_CommonOps__cmpOp__Lio_kaitai_struct_exprlang_Ast$cmpop__T(this, op)) + " 0)")
@@ -68055,7 +68484,20 @@ $c_Lio_kaitai_struct_translators_RubyTranslator.prototype.strToInt__Lio_kaitai_s
68055
68484
  return this.strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T(s, base)
68056
68485
  });
68057
68486
  $c_Lio_kaitai_struct_translators_RubyTranslator.prototype.bytesToStr__T__Lio_kaitai_struct_exprlang_Ast$expr__T = (function(bytesExpr, encoding) {
68058
- return (((("(" + bytesExpr) + ").force_encoding(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(encoding)) + ")")
68487
+ var encodingOpt = $f_Lio_kaitai_struct_exprlang_Ast$expr__evaluateStrConst__s_Option(encoding);
68488
+ if ((encodingOpt instanceof $c_s_Some)) {
68489
+ var x2 = $as_s_Some(encodingOpt);
68490
+ var encodingConst = $as_T(x2.value$2);
68491
+ var encodingConstLower = $as_T(encodingConst.toLowerCase());
68492
+ var needEncode = ((encodingConstLower !== "utf8") && (encodingConstLower !== "utf-8"))
68493
+ } else {
68494
+ var x = $m_s_None$();
68495
+ if ((!(x === encodingOpt))) {
68496
+ throw new $c_s_MatchError().init___O(encodingOpt)
68497
+ };
68498
+ var needEncode = true
68499
+ };
68500
+ return ((((("(" + bytesExpr) + ").force_encoding(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__T(encoding)) + ")") + (needEncode ? ".encode('UTF-8')" : ""))
68059
68501
  });
68060
68502
  $c_Lio_kaitai_struct_translators_RubyTranslator.prototype.enumToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType$EnumType__O = (function(value, et) {
68061
68503
  return this.enumToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType$EnumType__T(value, et)
@@ -72284,6 +72726,9 @@ $c_sc_AbstractTraversable.prototype.map__F1__scg_CanBuildFrom__O = (function(f,
72284
72726
  $c_sc_AbstractTraversable.prototype.toArray__s_reflect_ClassTag__O = (function(evidence$1) {
72285
72727
  return $f_sc_TraversableOnce__toArray__s_reflect_ClassTag__O(this, evidence$1)
72286
72728
  });
72729
+ $c_sc_AbstractTraversable.prototype.nonEmpty__Z = (function() {
72730
+ return $f_sc_TraversableOnce__nonEmpty__Z(this)
72731
+ });
72287
72732
  $c_sc_AbstractTraversable.prototype.collect__s_PartialFunction__scg_CanBuildFrom__O = (function(pf, bf) {
72288
72733
  return $f_sc_TraversableLike__collect__s_PartialFunction__scg_CanBuildFrom__O(this, pf, bf)
72289
72734
  });
@@ -84881,6 +85326,9 @@ $c_sci_StringOps.prototype.mkString__T = (function() {
84881
85326
  var $$this = this.repr$1;
84882
85327
  return $$this
84883
85328
  });
85329
+ $c_sci_StringOps.prototype.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O = (function(that, bf) {
85330
+ return $f_sc_TraversableLike__$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(this, that, bf)
85331
+ });
84884
85332
  $c_sci_StringOps.prototype.length__I = (function() {
84885
85333
  var $$this = this.repr$1;
84886
85334
  return $uI($$this.length)
@@ -85172,6 +85620,9 @@ $c_scm_ArrayOps$ofRef.prototype.iterator__sc_Iterator = (function() {
85172
85620
  var $$this = this.repr$1;
85173
85621
  return new $c_sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(this, 0, $$this.u.length)
85174
85622
  });
85623
+ $c_scm_ArrayOps$ofRef.prototype.$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O = (function(that, bf) {
85624
+ return $f_sc_TraversableLike__$$plus$plus__sc_GenTraversableOnce__scg_CanBuildFrom__O(this, that, bf)
85625
+ });
85175
85626
  $c_scm_ArrayOps$ofRef.prototype.mkString__T = (function() {
85176
85627
  return $f_sc_TraversableOnce__mkString__T__T__T__T(this, "", "", "")
85177
85628
  });
@@ -85208,13 +85659,13 @@ $c_scm_ArrayOps$ofRef.prototype.$$div$colon__O__F2__O = (function(z, op) {
85208
85659
  $c_scm_ArrayOps$ofRef.prototype.copyToArray__O__I__I__V = (function(xs, start, len) {
85209
85660
  $f_scm_ArrayOps__copyToArray__O__I__I__V(this, xs, start, len)
85210
85661
  });
85211
- $c_scm_ArrayOps$ofRef.prototype.isTraversableAgain__Z = (function() {
85212
- return true
85213
- });
85214
85662
  $c_scm_ArrayOps$ofRef.prototype.hashCode__I = (function() {
85215
85663
  var $$this = this.repr$1;
85216
85664
  return $$this.hashCode__I()
85217
85665
  });
85666
+ $c_scm_ArrayOps$ofRef.prototype.isTraversableAgain__Z = (function() {
85667
+ return true
85668
+ });
85218
85669
  $c_scm_ArrayOps$ofRef.prototype.toMap__s_Predef$$less$colon$less__sci_Map = (function(ev) {
85219
85670
  $m_sci_Map$();
85220
85671
  var b = new $c_scm_MapBuilder().init___sc_GenMap($m_sci_Map$EmptyMap$());
@@ -95258,6 +95709,9 @@ $c_scm_ListBuffer.prototype.$$plus$plus$eq__sc_TraversableOnce__scm_ListBuffer =
95258
95709
  return $as_scm_ListBuffer($f_scg_Growable__$$plus$plus$eq__sc_TraversableOnce__scg_Growable(this, xs))
95259
95710
  }
95260
95711
  });
95712
+ $c_scm_ListBuffer.prototype.nonEmpty__Z = (function() {
95713
+ return (this.len$6 > 0)
95714
+ });
95261
95715
  $c_scm_ListBuffer.prototype.reduceLeft__F2__O = (function(op) {
95262
95716
  var this$1 = this.scala$collection$mutable$ListBuffer$$start$6;
95263
95717
  return $f_sc_LinearSeqOptimized__reduceLeft__F2__O(this$1, op)