kaitai-struct-compiler 0.11.0-SNAPSHOT20240322.4237.c4672ee → 0.11.0-SNAPSHOT20240403.134844.751f059

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.
@@ -3010,8 +3010,8 @@ function $m_Lio_kaitai_struct_Utils$() {
3010
3010
  function $c_Lio_kaitai_struct_Version$() {
3011
3011
  this.Lio_kaitai_struct_Version$__f_version = null;
3012
3012
  this.Lio_kaitai_struct_Version$__f_gitTime = null;
3013
- this.Lio_kaitai_struct_Version$__f_version = "0.11-SNAPSHOT20240322.004237.c4672ee";
3014
- this.Lio_kaitai_struct_Version$__f_gitTime = "2024-03-22T00:42:37+00:00"
3013
+ this.Lio_kaitai_struct_Version$__f_version = "0.11-SNAPSHOT20240403.134844.751f059";
3014
+ this.Lio_kaitai_struct_Version$__f_gitTime = "2024-04-03T13:48:44+00:00"
3015
3015
  }
3016
3016
  $c_Lio_kaitai_struct_Version$.prototype = new $h_O();
3017
3017
  $c_Lio_kaitai_struct_Version$.prototype.constructor = $c_Lio_kaitai_struct_Version$;
@@ -18955,9 +18955,9 @@ function $h_Lio_kaitai_struct_precompile_LoadImports() {
18955
18955
  $h_Lio_kaitai_struct_precompile_LoadImports.prototype = $c_Lio_kaitai_struct_precompile_LoadImports.prototype;
18956
18956
  $c_Lio_kaitai_struct_precompile_LoadImports.prototype.processClass__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_precompile_LoadImports$ImportPath__s_concurrent_Future = (function(curClass, workDir) {
18957
18957
  $n($m_Lio_kaitai_struct_Log$().Lio_kaitai_struct_Log$__f_importOps);
18958
- var $$x3 = $m_s_concurrent_Future$();
18958
+ var $$x2 = $m_s_concurrent_Future$();
18959
18959
  var this$1 = $n($n($n(curClass).Lio_kaitai_struct_format_ClassSpec__f_meta).Lio_kaitai_struct_format_MetaSpec__f_imports);
18960
- var this$12 = $n($as_sci_List($f_sc_StrictOptimizedIterableOps__zipWithIndex__O(this$1)));
18960
+ var this$10 = $n($as_sci_List($f_sc_StrictOptimizedIterableOps__zipWithIndex__O(this$1)));
18961
18961
  var f = ((x0$1$2) => {
18962
18962
  var x0$1 = $as_T2(x0$1$2);
18963
18963
  if ((x0$1 !== null)) {
@@ -18969,21 +18969,18 @@ $c_Lio_kaitai_struct_precompile_LoadImports.prototype.processClass__Lio_kaitai_s
18969
18969
  var array = ["imports", ("" + idx)];
18970
18970
  var elems = $ct_sjsr_WrappedVarArgs__sjs_js_Array__(new $c_sjsr_WrappedVarArgs(), array);
18971
18971
  var suffix = $m_sci_Nil$().prependedAll__sc_IterableOnce__sci_List(elems);
18972
- var $$x1 = this$9.appendedAll__sc_IterableOnce__sci_List(suffix);
18973
- var this$10 = $n(curClass);
18974
- var this$11 = $n(this$10.Lio_kaitai_struct_format_ClassSpec__f_name);
18975
- return $p_Lio_kaitai_struct_precompile_LoadImports__loadImport__T__sci_List__s_Option__Lio_kaitai_struct_precompile_LoadImports$ImportPath__s_concurrent_Future(this, name, $$x1, new $c_s_Some($f_sc_IterableOnceOps__mkString__T__T__T__T(this$11, "", "::", "")), workDir)
18972
+ return $p_Lio_kaitai_struct_precompile_LoadImports__loadImport__T__sci_List__s_Option__Lio_kaitai_struct_precompile_LoadImports$ImportPath__s_concurrent_Future(this, name, this$9.appendedAll__sc_IterableOnce__sci_List(suffix), new $c_s_Some($n(curClass).fileNameAsStr__T()), workDir)
18976
18973
  } else {
18977
18974
  throw new $c_s_MatchError(x0$1)
18978
18975
  }
18979
18976
  });
18980
- if ((this$12 === $m_sci_Nil$())) {
18981
- var $$x2 = $m_sci_Nil$()
18977
+ if ((this$10 === $m_sci_Nil$())) {
18978
+ var $$x1 = $m_sci_Nil$()
18982
18979
  } else {
18983
- var arg1 = this$12.head__O();
18980
+ var arg1 = this$10.head__O();
18984
18981
  var h = new $c_sci_$colon$colon(f(arg1), $m_sci_Nil$());
18985
18982
  var t = h;
18986
- var rest = $as_sci_List(this$12.tail__O());
18983
+ var rest = $as_sci_List(this$10.tail__O());
18987
18984
  while ((rest !== $m_sci_Nil$())) {
18988
18985
  var arg1$1 = $n(rest).head__O();
18989
18986
  var nx = new $c_sci_$colon$colon(f(arg1$1), $m_sci_Nil$());
@@ -18991,27 +18988,27 @@ $c_Lio_kaitai_struct_precompile_LoadImports.prototype.processClass__Lio_kaitai_s
18991
18988
  t = nx;
18992
18989
  rest = $as_sci_List($n(rest).tail__O())
18993
18990
  };
18994
- var $$x2 = h
18991
+ var $$x1 = h
18995
18992
  };
18996
- var this$13 = $m_sc_BuildFrom$();
18997
- var thisMetaFuture = $n($n($$x3).sequence__sc_IterableOnce__sc_BuildFrom__s_concurrent_ExecutionContext__s_concurrent_Future($$x2, new $c_sc_BuildFromLowPriority2$$anon$11(this$13), $m_s_concurrent_ExecutionContext$().global__s_concurrent_ExecutionContextExecutor())).map__F1__s_concurrent_ExecutionContext__s_concurrent_Future(new $c_sjsr_AnonFunction1(((x$2) => {
18993
+ var this$11 = $m_sc_BuildFrom$();
18994
+ var thisMetaFuture = $n($n($$x2).sequence__sc_IterableOnce__sc_BuildFrom__s_concurrent_ExecutionContext__s_concurrent_Future($$x1, new $c_sc_BuildFromLowPriority2$$anon$11(this$11), $m_s_concurrent_ExecutionContext$().global__s_concurrent_ExecutionContextExecutor())).map__F1__s_concurrent_ExecutionContext__s_concurrent_Future(new $c_sjsr_AnonFunction1(((x$2) => {
18998
18995
  var x = $as_sci_List(x$2);
18999
- var this$17 = $n(x);
19000
- var this$16 = $m_s_$less$colon$less$();
19001
- var toIterableOnce = this$16.s_$less$colon$less$__f_singleton;
19002
- return $as_sci_List($f_sc_StrictOptimizedIterableOps__flatten__F1__O(this$17, toIterableOnce))
18996
+ var this$15 = $n(x);
18997
+ var this$14 = $m_s_$less$colon$less$();
18998
+ var toIterableOnce = this$14.s_$less$colon$less$__f_singleton;
18999
+ return $as_sci_List($f_sc_StrictOptimizedIterableOps__flatten__F1__O(this$15, toIterableOnce))
19003
19000
  })), $m_s_concurrent_ExecutionContext$().global__s_concurrent_ExecutionContextExecutor());
19004
- var $$x5 = $m_s_concurrent_Future$();
19005
- var this$19 = $n($n(curClass).Lio_kaitai_struct_format_ClassSpec__f_types);
19001
+ var $$x4 = $m_s_concurrent_Future$();
19002
+ var this$17 = $n($n(curClass).Lio_kaitai_struct_format_ClassSpec__f_types);
19006
19003
  var b = $m_sci_Iterable$().newBuilder__scm_Builder();
19007
19004
  $m_sci_RedBlackTree$();
19008
- var tree = this$19.sci_TreeMap__f_tree;
19005
+ var tree = this$17.sci_TreeMap__f_tree;
19009
19006
  $m_sci_RedBlackTree$();
19010
19007
  var start = $m_s_None$();
19011
- var evidence$16 = this$19.sci_TreeMap__f_ordering;
19008
+ var evidence$16 = this$17.sci_TreeMap__f_ordering;
19012
19009
  var it = new $c_sci_RedBlackTree$EntriesIterator(tree, start, evidence$16);
19013
19010
  while (it.hasNext__Z()) {
19014
- var this$22 = $n(b);
19011
+ var this$20 = $n(b);
19015
19012
  var arg1$2 = it.next__O();
19016
19013
  var x0$2 = $as_T2(arg1$2);
19017
19014
  if ((x0$2 === null)) {
@@ -19019,27 +19016,27 @@ $c_Lio_kaitai_struct_precompile_LoadImports.prototype.processClass__Lio_kaitai_s
19019
19016
  };
19020
19017
  var nestedClass = $as_Lio_kaitai_struct_format_ClassSpec($n(x0$2).T2__f__2);
19021
19018
  var elem = this.processClass__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_precompile_LoadImports$ImportPath__s_concurrent_Future(nestedClass, workDir);
19022
- this$22.addOne__O__scm_Growable(elem)
19019
+ this$20.addOne__O__scm_Growable(elem)
19023
19020
  };
19024
- var $$x4 = $as_sc_IterableOnce($n(b).result__O());
19025
- var this$23 = $m_sc_BuildFrom$();
19026
- var nestedFuture = $n($n($$x5).sequence__sc_IterableOnce__sc_BuildFrom__s_concurrent_ExecutionContext__s_concurrent_Future($$x4, new $c_sc_BuildFromLowPriority2$$anon$11(this$23), $m_s_concurrent_ExecutionContext$().global__s_concurrent_ExecutionContextExecutor())).map__F1__s_concurrent_ExecutionContext__s_concurrent_Future(new $c_sjsr_AnonFunction1(((listOfLists$2) => {
19021
+ var $$x3 = $as_sc_IterableOnce($n(b).result__O());
19022
+ var this$21 = $m_sc_BuildFrom$();
19023
+ var nestedFuture = $n($n($$x4).sequence__sc_IterableOnce__sc_BuildFrom__s_concurrent_ExecutionContext__s_concurrent_Future($$x3, new $c_sc_BuildFromLowPriority2$$anon$11(this$21), $m_s_concurrent_ExecutionContext$().global__s_concurrent_ExecutionContextExecutor())).map__F1__s_concurrent_ExecutionContext__s_concurrent_Future(new $c_sjsr_AnonFunction1(((listOfLists$2) => {
19027
19024
  var listOfLists = $as_sci_Iterable(listOfLists$2);
19028
- var this$26 = $m_s_$less$colon$less$();
19029
- return $as_sci_Iterable($n(listOfLists).flatten__F1__O(this$26.s_$less$colon$less$__f_singleton))
19025
+ var this$24 = $m_s_$less$colon$less$();
19026
+ return $as_sci_Iterable($n(listOfLists).flatten__F1__O(this$24.s_$less$colon$less$__f_singleton))
19030
19027
  })), $m_s_concurrent_ExecutionContext$().global__s_concurrent_ExecutionContextExecutor());
19031
- var $$x7 = $m_s_concurrent_Future$();
19028
+ var $$x6 = $m_s_concurrent_Future$();
19032
19029
  $n($m_s_package$().s_package$__f_List);
19033
19030
  var array$1 = [thisMetaFuture, nestedFuture];
19034
19031
  var elems$1 = $ct_sjsr_WrappedVarArgs__sjs_js_Array__(new $c_sjsr_WrappedVarArgs(), array$1);
19035
- var $$x6 = $m_sci_Nil$().prependedAll__sc_IterableOnce__sci_List(elems$1);
19036
- var this$32 = $m_sc_BuildFrom$();
19037
- return $n($n($$x7).sequence__sc_IterableOnce__sc_BuildFrom__s_concurrent_ExecutionContext__s_concurrent_Future($$x6, new $c_sc_BuildFromLowPriority2$$anon$11(this$32), $m_s_concurrent_ExecutionContext$().global__s_concurrent_ExecutionContextExecutor())).map__F1__s_concurrent_ExecutionContext__s_concurrent_Future(new $c_sjsr_AnonFunction1(((x$3$2) => {
19032
+ var $$x5 = $m_sci_Nil$().prependedAll__sc_IterableOnce__sci_List(elems$1);
19033
+ var this$30 = $m_sc_BuildFrom$();
19034
+ return $n($n($$x6).sequence__sc_IterableOnce__sc_BuildFrom__s_concurrent_ExecutionContext__s_concurrent_Future($$x5, new $c_sc_BuildFromLowPriority2$$anon$11(this$30), $m_s_concurrent_ExecutionContext$().global__s_concurrent_ExecutionContextExecutor())).map__F1__s_concurrent_ExecutionContext__s_concurrent_Future(new $c_sjsr_AnonFunction1(((x$3$2) => {
19038
19035
  var x$3 = $as_sci_List(x$3$2);
19039
- var this$36 = $n(x$3);
19040
- var this$35 = $m_s_$less$colon$less$();
19041
- var toIterableOnce$1 = this$35.s_$less$colon$less$__f_singleton;
19042
- return $as_sci_List($f_sc_StrictOptimizedIterableOps__flatten__F1__O(this$36, toIterableOnce$1))
19036
+ var this$34 = $n(x$3);
19037
+ var this$33 = $m_s_$less$colon$less$();
19038
+ var toIterableOnce$1 = this$33.s_$less$colon$less$__f_singleton;
19039
+ return $as_sci_List($f_sc_StrictOptimizedIterableOps__flatten__F1__O(this$34, toIterableOnce$1))
19043
19040
  })), $m_s_concurrent_ExecutionContext$().global__s_concurrent_ExecutionContextExecutor())
19044
19041
  });
19045
19042
  var $d_Lio_kaitai_struct_precompile_LoadImports = new $TypeData().initClass({
@@ -19317,7 +19314,6 @@ $c_Lio_kaitai_struct_precompile_ParentTypes.prototype.markup__Lio_kaitai_struct_
19317
19314
  $m_sci_RedBlackTree$().foreach__sci_RedBlackTree$Tree__F1__V(this$6.sci_TreeMap__f_tree, f)
19318
19315
  });
19319
19316
  $c_Lio_kaitai_struct_precompile_ParentTypes.prototype.markupParentAs__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_datatype_DataType$UserType__V = (function(curClass, ut) {
19320
- $n($m_Lio_kaitai_struct_Log$().Lio_kaitai_struct_Log$__f_typeProcParent);
19321
19317
  var x1 = $n(ut).Lio_kaitai_struct_datatype_DataType$UserType__f_classSpec;
19322
19318
  if ((x1 instanceof $c_s_Some)) {
19323
19319
  var x2 = $as_s_Some(x1);
@@ -19338,6 +19334,11 @@ $c_Lio_kaitai_struct_precompile_ParentTypes.prototype.markupParentAs__Lio_kaitai
19338
19334
  }
19339
19335
  });
19340
19336
  $c_Lio_kaitai_struct_precompile_ParentTypes.prototype.markupParentAs__Lio_kaitai_struct_format_ClassSpec__Lio_kaitai_struct_format_ClassSpec__V = (function(parent, child) {
19337
+ if ($n(child).isExternal__Lio_kaitai_struct_format_ClassSpec__Z(parent)) {
19338
+ $n($m_Lio_kaitai_struct_Log$().Lio_kaitai_struct_Log$__f_typeProcParent);
19339
+ return (void 0)
19340
+ };
19341
+ $n($m_Lio_kaitai_struct_Log$().Lio_kaitai_struct_Log$__f_typeProcParent);
19341
19342
  var x1 = $n(child).Lio_kaitai_struct_format_ClassSpec__f_parentClass;
19342
19343
  var x = $m_Lio_kaitai_struct_format_UnknownClassSpec$();
19343
19344
  if ((x === x1)) {
@@ -19769,7 +19770,7 @@ function $f_Lio_kaitai_struct_translators_CommonMethods__translateAttribute__Lio
19769
19770
  var x = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$();
19770
19771
  if (((x === valType) || (valType instanceof $c_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType))) {
19771
19772
  var x1$2 = $n(attr).Lio_kaitai_struct_exprlang_Ast$identifier__f_name;
19772
- if (($m_Lio_kaitai_struct_format_Identifier$().Lio_kaitai_struct_format_Identifier$__f_PARENT === x1$2)) {
19773
+ if ((($m_Lio_kaitai_struct_format_Identifier$().Lio_kaitai_struct_format_Identifier$__f_PARENT === x1$2) || ($m_Lio_kaitai_struct_format_Identifier$().Lio_kaitai_struct_format_Identifier$__f_IO === x1$2))) {
19773
19774
  return $thiz.kaitaiStructField__Lio_kaitai_struct_exprlang_Ast$expr__T__O(value, $n(attr).Lio_kaitai_struct_exprlang_Ast$identifier__f_name)
19774
19775
  } else {
19775
19776
  throw new $c_s_MatchError(x1$2)
@@ -20106,7 +20107,7 @@ function $f_Lio_kaitai_struct_translators_CommonMethods__$init$__V($thiz) {
20106
20107
  var array$6 = [$$x5, $$x4, $$x3, $$x2, $$x1, new $c_T2(self$5, y$5)];
20107
20108
  var elems$6 = $ct_sjsr_WrappedVarArgs__sjs_js_Array__(new $c_sjsr_WrappedVarArgs(), array$6);
20108
20109
  $thiz.io$kaitai$struct$translators$CommonMethods$_setter_$METHODS_BY_TYPE_$eq__sci_Map__V(this$47.from__sc_IterableOnce__sci_Map(elems$6));
20109
- $thiz.io$kaitai$struct$translators$CommonMethods$_setter_$METHOD_PRECEDENCE_$eq__I__V(99)
20110
+ $thiz.io$kaitai$struct$translators$CommonMethods$_setter_$METHOD_PRECEDENCE_$eq__I__V(999)
20110
20111
  }
20111
20112
  function $is_Lio_kaitai_struct_translators_CommonMethods$MethodSig(obj) {
20112
20113
  return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Lio_kaitai_struct_translators_CommonMethods$MethodSig)))
@@ -20601,6 +20602,8 @@ $c_Lio_kaitai_struct_translators_TypeDetector.prototype.detectAttributeType__Lio
20601
20602
  var x1$2 = $n(attr).Lio_kaitai_struct_exprlang_Ast$identifier__f_name;
20602
20603
  if (($m_Lio_kaitai_struct_format_Identifier$().Lio_kaitai_struct_format_Identifier$__f_PARENT === x1$2)) {
20603
20604
  return new $c_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType(false)
20605
+ } else if (($m_Lio_kaitai_struct_format_Identifier$().Lio_kaitai_struct_format_Identifier$__f_IO === x1$2)) {
20606
+ return $m_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$()
20604
20607
  } else {
20605
20608
  throw new $c_Lio_kaitai_struct_precompile_MethodNotFoundError($n(attr).Lio_kaitai_struct_exprlang_Ast$identifier__f_name, valType)
20606
20609
  }
@@ -33731,10 +33734,8 @@ $c_Lio_kaitai_struct_ClassCompiler.prototype.compileClass__Lio_kaitai_struct_for
33731
33734
  var x1 = $n(paramDefSpec).Lio_kaitai_struct_format_ParamDefSpec__f_dataType;
33732
33735
  if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) {
33733
33736
  var x2 = $as_Lio_kaitai_struct_datatype_DataType$UserType(x1);
33734
- var externalTypeName = $n($as_Lio_kaitai_struct_format_ClassSpec($n($n(x2).Lio_kaitai_struct_datatype_DataType$UserType__f_classSpec).get__O())).Lio_kaitai_struct_format_ClassSpec__f_name;
33735
- var x = $n(externalTypeName).head__O();
33736
- var y = $n($n(curClass).Lio_kaitai_struct_format_ClassSpec__f_name).head__O();
33737
- if ((!$m_sr_BoxesRunTime$().equals__O__O__Z(x, y))) {
33737
+ if ($n(x2).isExternal__Lio_kaitai_struct_format_ClassSpec__Z(curClass)) {
33738
+ var externalTypeName = $n($as_Lio_kaitai_struct_format_ClassSpec($n($n(x2).Lio_kaitai_struct_datatype_DataType$UserType__f_classSpec).get__O())).Lio_kaitai_struct_format_ClassSpec__f_name;
33738
33739
  $n(this.Lio_kaitai_struct_ClassCompiler__f_lang).classForwardDeclaration__sci_List__V(externalTypeName)
33739
33740
  }
33740
33741
  };
@@ -39532,25 +39533,25 @@ function $f_Lio_kaitai_struct_translators_CommonOps__unaryOp__Lio_kaitai_struct_
39532
39533
  function $f_Lio_kaitai_struct_translators_CommonOps__$init$__V($thiz) {
39533
39534
  var this$24 = $n($m_s_Predef$().s_Predef$__f_Map);
39534
39535
  var self = $m_Lio_kaitai_struct_exprlang_Ast$operator$Mult$();
39535
- var $$x9 = new $c_T2(self, 13);
39536
+ var $$x9 = new $c_T2(self, 130);
39536
39537
  var self$1 = $m_Lio_kaitai_struct_exprlang_Ast$operator$Div$();
39537
- var $$x8 = new $c_T2(self$1, 13);
39538
+ var $$x8 = new $c_T2(self$1, 130);
39538
39539
  var self$2 = $m_Lio_kaitai_struct_exprlang_Ast$operator$Mod$();
39539
- var $$x7 = new $c_T2(self$2, 13);
39540
+ var $$x7 = new $c_T2(self$2, 130);
39540
39541
  var self$3 = $m_Lio_kaitai_struct_exprlang_Ast$operator$Add$();
39541
- var $$x6 = new $c_T2(self$3, 12);
39542
+ var $$x6 = new $c_T2(self$3, 120);
39542
39543
  var self$4 = $m_Lio_kaitai_struct_exprlang_Ast$operator$Sub$();
39543
- var $$x5 = new $c_T2(self$4, 12);
39544
+ var $$x5 = new $c_T2(self$4, 120);
39544
39545
  var self$5 = $m_Lio_kaitai_struct_exprlang_Ast$operator$LShift$();
39545
- var $$x4 = new $c_T2(self$5, 11);
39546
+ var $$x4 = new $c_T2(self$5, 110);
39546
39547
  var self$6 = $m_Lio_kaitai_struct_exprlang_Ast$operator$RShift$();
39547
- var $$x3 = new $c_T2(self$6, 11);
39548
+ var $$x3 = new $c_T2(self$6, 110);
39548
39549
  var self$7 = $m_Lio_kaitai_struct_exprlang_Ast$operator$BitAnd$();
39549
- var $$x2 = new $c_T2(self$7, 10);
39550
+ var $$x2 = new $c_T2(self$7, 100);
39550
39551
  var self$8 = $m_Lio_kaitai_struct_exprlang_Ast$operator$BitXor$();
39551
- var $$x1 = new $c_T2(self$8, 9);
39552
+ var $$x1 = new $c_T2(self$8, 90);
39552
39553
  var self$9 = $m_Lio_kaitai_struct_exprlang_Ast$operator$BitOr$();
39553
- var array = [$$x9, $$x8, $$x7, $$x6, $$x5, $$x4, $$x3, $$x2, $$x1, new $c_T2(self$9, 8)];
39554
+ var array = [$$x9, $$x8, $$x7, $$x6, $$x5, $$x4, $$x3, $$x2, $$x1, new $c_T2(self$9, 80)];
39554
39555
  var elems = $ct_sjsr_WrappedVarArgs__sjs_js_Array__(new $c_sjsr_WrappedVarArgs(), array);
39555
39556
  $thiz.io$kaitai$struct$translators$CommonOps$_setter_$OPERATOR_PRECEDENCE_$eq__sci_Map__V(this$24.from__sc_IterableOnce__sci_Map(elems))
39556
39557
  }
@@ -44364,16 +44365,11 @@ $c_Lio_kaitai_struct_languages_CppCompiler$.prototype.kaitaiType2NativeType__Lio
44364
44365
  if ((x$21 === x1$2)) {
44365
44366
  return (typeStr + "*")
44366
44367
  } else {
44367
- var x$23 = $m_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$();
44368
+ var x$23 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$();
44368
44369
  if ((x$23 === x1$2)) {
44369
- return (("std::shared_ptr<" + typeStr) + ">")
44370
+ return ($n(x60).isOwning__Z() ? (("std::unique_ptr<" + typeStr) + ">") : (typeStr + "*"))
44370
44371
  } else {
44371
- var x$25 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$();
44372
- if ((x$25 === x1$2)) {
44373
- return ($n(x60).isOwning__Z() ? (("std::unique_ptr<" + typeStr) + ">") : (typeStr + "*"))
44374
- } else {
44375
- throw new $c_s_MatchError(x1$2)
44376
- }
44372
+ throw new $c_s_MatchError(x1$2)
44377
44373
  }
44378
44374
  }
44379
44375
  };
@@ -44386,12 +44382,12 @@ $c_Lio_kaitai_struct_languages_CppCompiler$.prototype.kaitaiType2NativeType__Lio
44386
44382
  var this$1 = $n(x62);
44387
44383
  var inType = this$1.Lio_kaitai_struct_datatype_DataType$ArrayType__f_elType;
44388
44384
  var x1$3 = $n(config).Lio_kaitai_struct_CppRuntimeConfig__f_pointers;
44389
- var x$27 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$();
44390
- if ((x$27 === x1$3)) {
44385
+ var x$25 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$();
44386
+ if ((x$25 === x1$3)) {
44391
44387
  return (("std::vector<" + this.kaitaiType2NativeType__Lio_kaitai_struct_CppRuntimeConfig__Lio_kaitai_struct_datatype_DataType__Z__T(config, inType, absolute)) + ">*")
44392
44388
  } else {
44393
- var x$29 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$();
44394
- if ((x$29 === x1$3)) {
44389
+ var x$27 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$();
44390
+ if ((x$27 === x1$3)) {
44395
44391
  return (("std::unique_ptr<std::vector<" + this.kaitaiType2NativeType__Lio_kaitai_struct_CppRuntimeConfig__Lio_kaitai_struct_datatype_DataType__Z__T(config, inType, absolute)) + ">>")
44396
44392
  } else {
44397
44393
  throw new $c_s_MatchError(x1$3)
@@ -44404,63 +44400,42 @@ $c_Lio_kaitai_struct_languages_CppCompiler$.prototype.kaitaiType2NativeType__Lio
44404
44400
  var inType$2 = this$2.Lio_kaitai_struct_datatype_DataType$ArrayType__f_elType;
44405
44401
  return (("std::vector<" + this.kaitaiType2NativeType__Lio_kaitai_struct_CppRuntimeConfig__Lio_kaitai_struct_datatype_DataType__Z__T(config, inType$2, absolute)) + ">*")
44406
44402
  };
44407
- var x$31 = $m_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$();
44408
- if ((x$31 === x1)) {
44403
+ var x$29 = $m_Lio_kaitai_struct_datatype_DataType$OwnedKaitaiStreamType$();
44404
+ if ((x$29 === x1)) {
44409
44405
  var x1$4 = $n(config).Lio_kaitai_struct_CppRuntimeConfig__f_pointers;
44410
- var x$33 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$();
44411
- if ((x$33 === x1$4)) {
44406
+ var x$31 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$();
44407
+ if ((x$31 === x1$4)) {
44412
44408
  return "kaitai::kstream*"
44413
44409
  } else {
44414
- var x$35 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$();
44415
- if ((x$35 === x1$4)) {
44410
+ var x$33 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$();
44411
+ if ((x$33 === x1$4)) {
44416
44412
  return "std::unique_ptr<kaitai::kstream>"
44417
44413
  } else {
44418
44414
  throw new $c_s_MatchError(x1$4)
44419
44415
  }
44420
44416
  }
44421
44417
  };
44422
- var x$37 = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$();
44423
- if ((x$37 === x1)) {
44418
+ var x$35 = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$();
44419
+ if ((x$35 === x1)) {
44424
44420
  return "kaitai::kstream*"
44425
44421
  };
44426
- var x$39 = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$();
44427
- if ((x$39 === x1)) {
44422
+ var x$37 = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$();
44423
+ if ((x$37 === x1)) {
44428
44424
  var x1$5 = $n(config).Lio_kaitai_struct_CppRuntimeConfig__f_pointers;
44429
- var x$41 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$();
44430
- if ((x$41 === x1$5)) {
44425
+ var x$39 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$();
44426
+ if ((x$39 === x1$5)) {
44431
44427
  return "kaitai::kstruct*"
44432
44428
  } else {
44433
- var x$43 = $m_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$();
44434
- if ((x$43 === x1$5)) {
44435
- return "std::shared_ptr<kaitai::kstruct>"
44429
+ var x$41 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$();
44430
+ if ((x$41 === x1$5)) {
44431
+ return "std::unique_ptr<kaitai::kstruct>"
44436
44432
  } else {
44437
- var x$45 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$();
44438
- if ((x$45 === x1$5)) {
44439
- return "std::unique_ptr<kaitai::kstruct>"
44440
- } else {
44441
- throw new $c_s_MatchError(x1$5)
44442
- }
44433
+ throw new $c_s_MatchError(x1$5)
44443
44434
  }
44444
44435
  }
44445
44436
  };
44446
44437
  if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType)) {
44447
- var x1$6 = $n(config).Lio_kaitai_struct_CppRuntimeConfig__f_pointers;
44448
- var x$47 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$();
44449
- if ((x$47 === x1$6)) {
44450
- return "kaitai::kstruct*"
44451
- } else {
44452
- var x$49 = $m_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$();
44453
- if ((x$49 === x1$6)) {
44454
- return "std::shared_ptr<kaitai::kstruct>"
44455
- } else {
44456
- var x$51 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$();
44457
- if ((x$51 === x1$6)) {
44458
- return "kaitai::kstruct*"
44459
- } else {
44460
- throw new $c_s_MatchError(x1$6)
44461
- }
44462
- }
44463
- }
44438
+ return "kaitai::kstruct*"
44464
44439
  };
44465
44440
  if ((x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$SwitchType)) {
44466
44441
  var x70 = $as_Lio_kaitai_struct_datatype_DataType$SwitchType(x1);
@@ -49656,6 +49631,9 @@ function $h_Lio_kaitai_struct_datatype_DataType$UserType() {
49656
49631
  /*<skip>*/
49657
49632
  }
49658
49633
  $h_Lio_kaitai_struct_datatype_DataType$UserType.prototype = $c_Lio_kaitai_struct_datatype_DataType$UserType.prototype;
49634
+ $c_Lio_kaitai_struct_datatype_DataType$UserType.prototype.isExternal__Lio_kaitai_struct_format_ClassSpec__Z = (function(curClass) {
49635
+ return $n($as_Lio_kaitai_struct_format_ClassSpec($n(this.Lio_kaitai_struct_datatype_DataType$UserType__f_classSpec).get__O())).isExternal__Lio_kaitai_struct_format_ClassSpec__Z(curClass)
49636
+ });
49659
49637
  $c_Lio_kaitai_struct_datatype_DataType$UserType.prototype.isOpaque__Z = (function() {
49660
49638
  var cs = $as_Lio_kaitai_struct_format_ClassSpec($n(this.Lio_kaitai_struct_datatype_DataType$UserType__f_classSpec).get__O());
49661
49639
  return ($n(cs).Lio_kaitai_struct_format_ClassSpec__f_isTopLevel || $n($n(cs).Lio_kaitai_struct_format_ClassSpec__f_meta).Lio_kaitai_struct_format_MetaSpec__f_isOpaque)
@@ -56309,53 +56287,6 @@ function $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$() {
56309
56287
  return $n_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$
56310
56288
  }
56311
56289
  /** @constructor */
56312
- function $c_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$() {
56313
- /*<skip>*/
56314
- }
56315
- $c_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$.prototype = new $h_O();
56316
- $c_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$.prototype.constructor = $c_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$;
56317
- /** @constructor */
56318
- function $h_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$() {
56319
- /*<skip>*/
56320
- }
56321
- $h_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$.prototype = $c_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$.prototype;
56322
- $c_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$.prototype.productPrefix__T = (function() {
56323
- return "SharedPointers"
56324
- });
56325
- $c_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$.prototype.productArity__I = (function() {
56326
- return 0
56327
- });
56328
- $c_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$.prototype.productElement__I__O = (function(x$1) {
56329
- return $m_sr_Statics$().ioobe__I__O(x$1)
56330
- });
56331
- $c_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$.prototype.productIterator__sc_Iterator = (function() {
56332
- return new $c_sr_ScalaRunTime$$anon$1(this)
56333
- });
56334
- $c_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$.prototype.hashCode__I = (function() {
56335
- return (-1012780677)
56336
- });
56337
- $c_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$.prototype.toString__T = (function() {
56338
- return "SharedPointers"
56339
- });
56340
- var $d_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$ = new $TypeData().initClass({
56341
- Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$: 0
56342
- }, false, "io.kaitai.struct.CppRuntimeConfig$SharedPointers$", {
56343
- Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$: 1,
56344
- O: 1,
56345
- Lio_kaitai_struct_CppRuntimeConfig$Pointers: 1,
56346
- s_Product: 1,
56347
- s_Equals: 1,
56348
- Ljava_io_Serializable: 1
56349
- });
56350
- $c_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$.prototype.$classData = $d_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$;
56351
- var $n_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$;
56352
- function $m_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$() {
56353
- if ((!$n_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$)) {
56354
- $n_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$ = new $c_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$()
56355
- };
56356
- return $n_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$
56357
- }
56358
- /** @constructor */
56359
56290
  function $c_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$() {
56360
56291
  /*<skip>*/
56361
56292
  }
@@ -62994,7 +62925,7 @@ $c_Lio_kaitai_struct_languages_GoCompiler$.prototype.kaitaiType2NativeType__Lio_
62994
62925
  };
62995
62926
  var x$23 = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStructType$();
62996
62927
  if (((x$23 === x1) || (x1 instanceof $c_Lio_kaitai_struct_datatype_DataType$CalcKaitaiStructType))) {
62997
- return "interface{}"
62928
+ return "kaitai.Struct"
62998
62929
  };
62999
62930
  var x$25 = $m_Lio_kaitai_struct_datatype_DataType$KaitaiStreamType$();
63000
62931
  if ((x$25 === x1)) {
@@ -73364,6 +73295,11 @@ $c_Lio_kaitai_struct_format_ClassSpec.prototype.toDataType__Lio_kaitai_struct_da
73364
73295
  cut.Lio_kaitai_struct_datatype_DataType$UserType__f_classSpec = new $c_s_Some(this);
73365
73296
  return cut
73366
73297
  });
73298
+ $c_Lio_kaitai_struct_format_ClassSpec.prototype.isExternal__Lio_kaitai_struct_format_ClassSpec__Z = (function(curClass) {
73299
+ var x = $n(this.Lio_kaitai_struct_format_ClassSpec__f_name).head__O();
73300
+ var y = $n($n(curClass).Lio_kaitai_struct_format_ClassSpec__f_name).head__O();
73301
+ return (!$m_sr_BoxesRunTime$().equals__O__O__Z(x, y))
73302
+ });
73367
73303
  $c_Lio_kaitai_struct_format_ClassSpec.prototype.forEachRec__F1__V = (function(proc) {
73368
73304
  $n(proc).apply__O__O(this);
73369
73305
  var this$2 = $n(this.Lio_kaitai_struct_format_ClassSpec__f_types);
@@ -83640,41 +83576,49 @@ $c_Lio_kaitai_struct_translators_GoTranslator.prototype.boolToInt__Lio_kaitai_st
83640
83576
  });
83641
83577
  $c_Lio_kaitai_struct_translators_GoTranslator.prototype.userType__Lio_kaitai_struct_datatype_DataType$UserType__T__Lio_kaitai_struct_translators_ResultLocalVar = (function(t, io) {
83642
83578
  var v = this.allocateLocalVar__I();
83643
- var rc8 = false;
83644
- var x2 = null;
83645
- var x1 = $n(t).Lio_kaitai_struct_datatype_DataType$UserType__f_forcedParent;
83646
- matchEnd9: {
83647
- var parent;
83648
- if ((x1 instanceof $c_s_Some)) {
83649
- rc8 = true;
83650
- x2 = $as_s_Some(x1);
83651
- var p3 = $as_Lio_kaitai_struct_exprlang_Ast$expr($n(x2).s_Some__f_value);
83652
- var x = $m_Lio_kaitai_struct_datatype_DataType$().Lio_kaitai_struct_datatype_DataType$__f_USER_TYPE_NO_PARENT;
83653
- if (((x === null) ? (p3 === null) : $n(x).equals__O__Z(p3))) {
83654
- var parent = "nil";
83579
+ if ($n(t).isExternal__Lio_kaitai_struct_format_ClassSpec__Z($n(this.Lio_kaitai_struct_translators_GoTranslator__f_provider).Lio_kaitai_struct_ClassTypeProvider__f_nowClass)) {
83580
+ var x1$2___1 = "nil";
83581
+ var x1$2___2 = "nil"
83582
+ } else {
83583
+ var rc8 = false;
83584
+ var x2 = null;
83585
+ var x1 = $n(t).Lio_kaitai_struct_datatype_DataType$UserType__f_forcedParent;
83586
+ matchEnd9: {
83587
+ var parent;
83588
+ if ((x1 instanceof $c_s_Some)) {
83589
+ rc8 = true;
83590
+ x2 = $as_s_Some(x1);
83591
+ var p3 = $as_Lio_kaitai_struct_exprlang_Ast$expr($n(x2).s_Some__f_value);
83592
+ var x = $m_Lio_kaitai_struct_datatype_DataType$().Lio_kaitai_struct_datatype_DataType$__f_USER_TYPE_NO_PARENT;
83593
+ if (((x === null) ? (p3 === null) : $n(x).equals__O__Z(p3))) {
83594
+ var parent = "nil";
83595
+ break matchEnd9
83596
+ }
83597
+ };
83598
+ if (rc8) {
83599
+ var fp = $as_Lio_kaitai_struct_exprlang_Ast$expr($n(x2).s_Some__f_value);
83600
+ var parent = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__I__T(fp, 0);
83655
83601
  break matchEnd9
83656
- }
83657
- };
83658
- if (rc8) {
83659
- var fp = $as_Lio_kaitai_struct_exprlang_Ast$expr($n(x2).s_Some__f_value);
83660
- var parent = this.translate__Lio_kaitai_struct_exprlang_Ast$expr__I__T(fp, 0);
83661
- break matchEnd9
83662
- };
83663
- var x$3 = $m_s_None$();
83664
- if ((x$3 === x1)) {
83665
- var parent = "this";
83666
- break matchEnd9
83602
+ };
83603
+ var x$3 = $m_s_None$();
83604
+ if ((x$3 === x1)) {
83605
+ var parent = "this";
83606
+ break matchEnd9
83607
+ };
83608
+ throw new $c_s_MatchError(x1)
83667
83609
  };
83668
- throw new $c_s_MatchError(x1)
83610
+ var x1$2___1 = parent;
83611
+ var x1$2___2 = "this._root"
83669
83612
  };
83670
- var root = ($n(t).isOpaque__Z() ? "nil" : "this._root");
83613
+ var parent$2 = $as_T(x1$2___1);
83614
+ var root = $as_T(x1$2___2);
83671
83615
  var this$2 = $n($as_sc_IterableOnceOps($n($n(t).Lio_kaitai_struct_datatype_DataType$UserType__f_args).map__F1__O(new $c_sjsr_AnonFunction1(((a$2) => {
83672
83616
  var a = $as_Lio_kaitai_struct_exprlang_Ast$expr(a$2);
83673
83617
  return this.translate__Lio_kaitai_struct_exprlang_Ast$expr__I__T(a, 0)
83674
83618
  })))));
83675
83619
  var addParams = $f_sc_IterableOnceOps__mkString__T__T__T__T(this$2, "", ", ", "");
83676
83620
  $n(this.Lio_kaitai_struct_translators_GoTranslator__f_out).puts__T__V((((((this.localVarName__I__T(v) + " := New") + $m_Lio_kaitai_struct_languages_GoCompiler$().types2class__sci_List__T($n($as_Lio_kaitai_struct_format_ClassSpec($n($n(t).Lio_kaitai_struct_datatype_DataType$UserType__f_classSpec).get__O())).Lio_kaitai_struct_format_ClassSpec__f_name)) + "(") + addParams) + ")"));
83677
- $n(this.Lio_kaitai_struct_translators_GoTranslator__f_out).puts__T__V((((((((("err = " + this.localVarName__I__T(v)) + ".Read(") + io) + ", ") + parent) + ", ") + root) + ")"));
83621
+ $n(this.Lio_kaitai_struct_translators_GoTranslator__f_out).puts__T__V((((((((("err = " + this.localVarName__I__T(v)) + ".Read(") + io) + ", ") + parent$2) + ", ") + root) + ")"));
83678
83622
  this.outAddErrCheck__V();
83679
83623
  return new $c_Lio_kaitai_struct_translators_ResultLocalVar(v)
83680
83624
  });
@@ -88379,31 +88323,6 @@ $c_Lio_kaitai_struct_translators_CppTranslator.prototype.doIfExp__Lio_kaitai_str
88379
88323
  return (((((("((" + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__I__T(condition, 0)) + ") ? (") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__I__T(ifTrue, 0)) + ") : (") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__I__T(ifFalse, 0)) + "))")
88380
88324
  });
88381
88325
  $c_Lio_kaitai_struct_translators_CppTranslator.prototype.doCast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__T = (function(value, typeName) {
88382
- var x1 = $n($n(this.Lio_kaitai_struct_translators_CppTranslator__f_config).Lio_kaitai_struct_RuntimeConfig__f_cppConfig).Lio_kaitai_struct_CppRuntimeConfig__f_pointers;
88383
- var x = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$();
88384
- if ((x === x1)) {
88385
- var $$x1 = true
88386
- } else {
88387
- var x$3 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$();
88388
- var $$x1 = (x$3 === x1)
88389
- };
88390
- if ($$x1) {
88391
- return this.cppStaticCast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__T(value, typeName)
88392
- } else {
88393
- var x$5 = $m_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$();
88394
- if ((x$5 === x1)) {
88395
- if ((typeName instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) {
88396
- var x2 = $as_Lio_kaitai_struct_datatype_DataType$UserType(typeName);
88397
- return (((("std::static_pointer_cast<" + $m_Lio_kaitai_struct_languages_CppCompiler$().types2class__sci_List__T($n($as_Lio_kaitai_struct_format_ClassSpec($n($n(x2).Lio_kaitai_struct_datatype_DataType$UserType__f_classSpec).get__O())).Lio_kaitai_struct_format_ClassSpec__f_name)) + ">(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__I__T(value, 0)) + ")")
88398
- } else {
88399
- return this.cppStaticCast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__T(value, typeName)
88400
- }
88401
- } else {
88402
- throw new $c_s_MatchError(x1)
88403
- }
88404
- }
88405
- });
88406
- $c_Lio_kaitai_struct_translators_CppTranslator.prototype.cppStaticCast__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_datatype_DataType__T = (function(value, typeName) {
88407
88326
  return (((("static_cast<" + $m_Lio_kaitai_struct_languages_CppCompiler$().kaitaiType2NativeType__Lio_kaitai_struct_CppRuntimeConfig__Lio_kaitai_struct_datatype_DataType__Z__T($n(this.Lio_kaitai_struct_translators_CppTranslator__f_config).Lio_kaitai_struct_RuntimeConfig__f_cppConfig, typeName, false)) + ">(") + this.translate__Lio_kaitai_struct_exprlang_Ast$expr__I__T(value, 0)) + ")")
88408
88327
  });
88409
88328
  $c_Lio_kaitai_struct_translators_CppTranslator.prototype.strToInt__Lio_kaitai_struct_exprlang_Ast$expr__Lio_kaitai_struct_exprlang_Ast$expr__T = (function(s, base) {
@@ -90230,18 +90149,12 @@ $c_Lio_kaitai_struct_languages_CppCompiler.prototype.fileHeader__T__V = (functio
90230
90149
  this$4.addLocal__T__V("kaitai/kaitaistruct.h");
90231
90150
  $n(this.Lio_kaitai_struct_languages_CppCompiler__f_importListHdr).addSystem__T__V("stdint.h");
90232
90151
  var x1 = $n($n(this.Lio_kaitai_struct_languages_components_LanguageCompiler__f_config).Lio_kaitai_struct_RuntimeConfig__f_cppConfig).Lio_kaitai_struct_CppRuntimeConfig__f_pointers;
90233
- var x = $m_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$();
90152
+ var x = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$();
90234
90153
  if ((x === x1)) {
90235
- var $$x1 = true
90236
- } else {
90237
- var x$3 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$();
90238
- var $$x1 = (x$3 === x1)
90239
- };
90240
- if ($$x1) {
90241
90154
  $n(this.Lio_kaitai_struct_languages_CppCompiler__f_importListHdr).addSystem__T__V("memory")
90242
90155
  } else {
90243
- var x$5 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$();
90244
- if ((!(x$5 === x1))) {
90156
+ var x$3 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$();
90157
+ if ((!(x$3 === x1))) {
90245
90158
  throw new $c_s_MatchError(x1)
90246
90159
  }
90247
90160
  };
@@ -90291,26 +90204,9 @@ $c_Lio_kaitai_struct_languages_CppCompiler.prototype.classHeader__sci_List__V =
90291
90204
  var array = [$as_T($n(name).last__O())];
90292
90205
  var elems = $ct_sjsr_WrappedVarArgs__sjs_js_Array__(new $c_sjsr_WrappedVarArgs(), array);
90293
90206
  var className = $n($$x1).types2class__sci_List__T($m_sci_Nil$().prependedAll__sc_IterableOnce__sci_List(elems));
90294
- var x1 = $n($n(this.Lio_kaitai_struct_languages_components_LanguageCompiler__f_config).Lio_kaitai_struct_RuntimeConfig__f_cppConfig).Lio_kaitai_struct_CppRuntimeConfig__f_pointers;
90295
- var x = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$();
90296
- if ((x === x1)) {
90297
- var $$x2 = true
90298
- } else {
90299
- var x$3 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$();
90300
- var $$x2 = (x$3 === x1)
90301
- };
90302
- if ($$x2) {
90303
- var extraInherits = ""
90304
- } else {
90305
- var x$5 = $m_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$();
90306
- if ((!(x$5 === x1))) {
90307
- throw new $c_s_MatchError(x1)
90308
- };
90309
- var extraInherits = ((", std::enable_shared_from_this<" + className) + ">")
90310
- };
90311
90207
  var this$5 = $n(this.Lio_kaitai_struct_languages_CppCompiler__f_outHdr);
90312
90208
  $n(this$5.Lio_kaitai_struct_StringLanguageOutputWriter__f_sb).append__T__scm_StringBuilder("\n");
90313
- $n(this.Lio_kaitai_struct_languages_CppCompiler__f_outHdr).puts__T__V((((("class " + className) + " : public kaitai::kstruct") + extraInherits) + " {"));
90209
+ $n(this.Lio_kaitai_struct_languages_CppCompiler__f_outHdr).puts__T__V((("class " + className) + " : public kaitai::kstruct {"));
90314
90210
  $n(this.Lio_kaitai_struct_languages_CppCompiler__f_outHdr).inc__V();
90315
90211
  this.Lio_kaitai_struct_languages_CppCompiler__f_accessMode = this.PrivateAccess__Lio_kaitai_struct_languages_CppCompiler$PrivateAccess$();
90316
90212
  this.ensureMode__Lio_kaitai_struct_languages_CppCompiler$AccessMode__V(this.PublicAccess__Lio_kaitai_struct_languages_CppCompiler$PublicAccess$())
@@ -90384,70 +90280,37 @@ $c_Lio_kaitai_struct_languages_CppCompiler.prototype.classConstructorHeader__sci
90384
90280
  $n(this$9.Lio_kaitai_struct_StringLanguageOutputWriter__f_sb).append__T__scm_StringBuilder("\n");
90385
90281
  $n(this.Lio_kaitai_struct_languages_CppCompiler__f_outSrc).puts__T__V((((((((((($m_Lio_kaitai_struct_languages_CppCompiler$().types2class__sci_List__T(name) + "::") + classNameBrief) + "(") + paramsArg) + ((tIo + " ") + pIo)) + ", ") + ((tParent + " ") + pParent)) + ", ") + (((((tRoot + " ") + pRoot) + endianSuffixSrc) + ") : kaitai::kstruct(") + pIo)) + ") {"));
90386
90282
  $n(this.Lio_kaitai_struct_languages_CppCompiler__f_outSrc).inc__V();
90387
- var x = $n($n(this.Lio_kaitai_struct_languages_components_LanguageCompiler__f_config).Lio_kaitai_struct_RuntimeConfig__f_cppConfig).Lio_kaitai_struct_CppRuntimeConfig__f_pointers;
90388
- var x$3 = $m_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$();
90389
- if ((x !== null)) {
90390
- var this$10 = $n(x);
90391
- var $$x4 = (this$10 === x$3)
90392
- } else {
90393
- var $$x4 = false
90394
- };
90395
- if ($$x4) {
90396
- $n(this.Lio_kaitai_struct_languages_CppCompiler__f_outSrc).puts__T__V((((("const auto weakPtrTrick = std::shared_ptr<" + classNameBrief) + ">(this, [](") + classNameBrief) + "*){});"))
90397
- };
90398
90283
  this.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V($m_Lio_kaitai_struct_format_ParentIdentifier$(), pParent);
90399
- var $$x7 = $m_Lio_kaitai_struct_format_RootIdentifier$();
90400
- if (((name === null) ? (rootClassName === null) : $n(name).equals__O__Z(rootClassName))) {
90401
- var x1$2 = $n($n(this.Lio_kaitai_struct_languages_components_LanguageCompiler__f_config).Lio_kaitai_struct_RuntimeConfig__f_cppConfig).Lio_kaitai_struct_CppRuntimeConfig__f_pointers;
90402
- var x$6 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$();
90403
- if ((x$6 === x1$2)) {
90404
- var $$x6 = true
90405
- } else {
90406
- var x$8 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$();
90407
- var $$x6 = (x$8 === x1$2)
90408
- };
90409
- if ($$x6) {
90410
- var $$x5 = "this"
90411
- } else {
90412
- var x$10 = $m_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$();
90413
- if ((!(x$10 === x1$2))) {
90414
- throw new $c_s_MatchError(x1$2)
90415
- };
90416
- var $$x5 = "shared_from_this()"
90417
- }
90418
- } else {
90419
- var $$x5 = pRoot
90420
- };
90421
- this.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V($$x7, $$x5);
90422
- var x1$3 = $n($n($n(this.Lio_kaitai_struct_languages_components_LanguageCompiler__f_typeProvider).Lio_kaitai_struct_ClassTypeProvider__f_nowClass).Lio_kaitai_struct_format_ClassSpec__f_meta).Lio_kaitai_struct_format_MetaSpec__f_endian;
90284
+ this.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V($m_Lio_kaitai_struct_format_RootIdentifier$(), (((name === null) ? (rootClassName === null) : $n(name).equals__O__Z(rootClassName)) ? "this" : pRoot));
90285
+ var x1$2 = $n($n($n(this.Lio_kaitai_struct_languages_components_LanguageCompiler__f_typeProvider).Lio_kaitai_struct_ClassTypeProvider__f_nowClass).Lio_kaitai_struct_format_ClassSpec__f_meta).Lio_kaitai_struct_format_MetaSpec__f_endian;
90423
90286
  matchEnd12: {
90424
- var $$x8;
90425
- if ((x1$3 instanceof $c_s_Some)) {
90426
- var x2 = $as_s_Some(x1$3);
90287
+ var $$x4;
90288
+ if ((x1$2 instanceof $c_s_Some)) {
90289
+ var x2 = $as_s_Some(x1$2);
90427
90290
  if (($n(x2).s_Some__f_value instanceof $c_Lio_kaitai_struct_datatype_CalcEndian)) {
90428
- var $$x8 = true;
90291
+ var $$x4 = true;
90429
90292
  break matchEnd12
90430
90293
  }
90431
90294
  };
90432
- if ((x1$3 instanceof $c_s_Some)) {
90433
- var x4 = $as_s_Some(x1$3);
90295
+ if ((x1$2 instanceof $c_s_Some)) {
90296
+ var x4 = $as_s_Some(x1$2);
90434
90297
  var p5 = $as_Lio_kaitai_struct_datatype_Endianness($n(x4).s_Some__f_value);
90435
- var x$12 = $m_Lio_kaitai_struct_datatype_InheritedEndian$();
90436
- if ((x$12 === p5)) {
90437
- var $$x8 = true;
90298
+ var x$4 = $m_Lio_kaitai_struct_datatype_InheritedEndian$();
90299
+ if ((x$4 === p5)) {
90300
+ var $$x4 = true;
90438
90301
  break matchEnd12
90439
90302
  }
90440
90303
  };
90441
- var $$x8 = false
90304
+ var $$x4 = false
90442
90305
  };
90443
- if ($$x8) {
90306
+ if ($$x4) {
90444
90307
  this.ensureMode__Lio_kaitai_struct_languages_CppCompiler$AccessMode__V(this.PrivateAccess__Lio_kaitai_struct_languages_CppCompiler$PrivateAccess$());
90445
90308
  $n(this.Lio_kaitai_struct_languages_CppCompiler__f_outHdr).puts__T__V("int m__is_le;");
90446
90309
  this.handleAssignmentSimple__Lio_kaitai_struct_format_Identifier__T__V($m_Lio_kaitai_struct_format_EndianIdentifier$(), (isHybrid ? "p_is_le" : "-1"));
90447
90310
  this.ensureMode__Lio_kaitai_struct_languages_CppCompiler$AccessMode__V(this.PublicAccess__Lio_kaitai_struct_languages_CppCompiler$PublicAccess$())
90448
90311
  };
90449
- var this$11 = $n(params);
90450
- var these = this$11;
90312
+ var this$10 = $n(params);
90313
+ var these = this$10;
90451
90314
  while ((!$n(these).isEmpty__Z())) {
90452
90315
  var arg1$2 = $n(these).head__O();
90453
90316
  var p = $as_Lio_kaitai_struct_format_ParamDefSpec(arg1$2);
@@ -91093,7 +90956,7 @@ $c_Lio_kaitai_struct_languages_CppCompiler.prototype.parseExpr__Lio_kaitai_struc
91093
90956
  var this$2 = $n(this.Lio_kaitai_struct_languages_CppCompiler__f_translator);
91094
90957
  return this$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__I__T(a, 0)
91095
90958
  })))), "", ", ", ", ");
91096
- if ($n(x10).isOpaque__Z()) {
90959
+ if ($n(x10).isExternal__Lio_kaitai_struct_format_ClassSpec__Z($n(this.Lio_kaitai_struct_languages_components_LanguageCompiler__f_typeProvider).Lio_kaitai_struct_ClassTypeProvider__f_nowClass)) {
91097
90960
  var addArgs = ""
91098
90961
  } else {
91099
90962
  var rc8 = false;
@@ -91119,59 +90982,37 @@ $c_Lio_kaitai_struct_languages_CppCompiler.prototype.parseExpr__Lio_kaitai_struc
91119
90982
  };
91120
90983
  var x$3 = $m_s_None$();
91121
90984
  if ((x$3 === x1$2)) {
91122
- var x1$3 = $n($n(this.Lio_kaitai_struct_languages_components_LanguageCompiler__f_config).Lio_kaitai_struct_RuntimeConfig__f_cppConfig).Lio_kaitai_struct_CppRuntimeConfig__f_pointers;
91123
- var x$5 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$();
91124
- if ((x$5 === x1$3)) {
91125
- var $$x1 = true
91126
- } else {
91127
- var x$7 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$();
91128
- var $$x1 = (x$7 === x1$3)
91129
- };
91130
- if ($$x1) {
91131
- var parent = "this";
91132
- break matchEnd9
91133
- } else {
91134
- var x$9 = $m_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$();
91135
- if ((!(x$9 === x1$3))) {
91136
- throw new $c_s_MatchError(x1$3)
91137
- };
91138
- var parent = "shared_from_this()";
91139
- break matchEnd9
91140
- }
90985
+ var parent = "this";
90986
+ break matchEnd9
91141
90987
  };
91142
90988
  throw new $c_s_MatchError(x1$2)
91143
90989
  };
91144
- var x1$4 = $n($n($as_Lio_kaitai_struct_format_ClassSpec($n($n(x10).Lio_kaitai_struct_datatype_DataType$UserType__f_classSpec).get__O())).Lio_kaitai_struct_format_ClassSpec__f_meta).Lio_kaitai_struct_format_MetaSpec__f_endian;
91145
- matchEnd6$2: {
90990
+ var x1$3 = $n($n($as_Lio_kaitai_struct_format_ClassSpec($n($n(x10).Lio_kaitai_struct_datatype_DataType$UserType__f_classSpec).get__O())).Lio_kaitai_struct_format_ClassSpec__f_meta).Lio_kaitai_struct_format_MetaSpec__f_endian;
90991
+ matchEnd6: {
91146
90992
  var addEndian;
91147
- if ((x1$4 instanceof $c_s_Some)) {
91148
- var x2$3 = $as_s_Some(x1$4);
90993
+ if ((x1$3 instanceof $c_s_Some)) {
90994
+ var x2$3 = $as_s_Some(x1$3);
91149
90995
  var p3$2 = $as_Lio_kaitai_struct_datatype_Endianness($n(x2$3).s_Some__f_value);
91150
- var x$11 = $m_Lio_kaitai_struct_datatype_InheritedEndian$();
91151
- if ((x$11 === p3$2)) {
90996
+ var x$5 = $m_Lio_kaitai_struct_datatype_InheritedEndian$();
90997
+ if ((x$5 === p3$2)) {
91152
90998
  var addEndian = ", m__is_le";
91153
- break matchEnd6$2
90999
+ break matchEnd6
91154
91000
  }
91155
91001
  };
91156
91002
  var addEndian = ""
91157
91003
  };
91158
91004
  var addArgs = ((((", " + parent) + ", ") + this.privateMemberName__Lio_kaitai_struct_format_Identifier__T($m_Lio_kaitai_struct_format_RootIdentifier$())) + addEndian)
91159
91005
  };
91160
- var x1$5 = $n($n(this.Lio_kaitai_struct_languages_components_LanguageCompiler__f_config).Lio_kaitai_struct_RuntimeConfig__f_cppConfig).Lio_kaitai_struct_CppRuntimeConfig__f_pointers;
91161
- var x$13 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$();
91162
- if ((x$13 === x1$5)) {
91006
+ var x1$4 = $n($n(this.Lio_kaitai_struct_languages_components_LanguageCompiler__f_config).Lio_kaitai_struct_RuntimeConfig__f_cppConfig).Lio_kaitai_struct_CppRuntimeConfig__f_pointers;
91007
+ var x$7 = $m_Lio_kaitai_struct_CppRuntimeConfig$RawPointers$();
91008
+ if ((x$7 === x1$4)) {
91163
91009
  return (((((("new " + $m_Lio_kaitai_struct_languages_CppCompiler$().types2class__sci_List__T($n(x10).Lio_kaitai_struct_datatype_DataType$UserType__f_name)) + "(") + addParams) + io) + addArgs) + ")")
91164
91010
  } else {
91165
- var x$15 = $m_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$();
91166
- if ((x$15 === x1$5)) {
91167
- return (((((("std::make_shared<" + $m_Lio_kaitai_struct_languages_CppCompiler$().types2class__sci_List__T($n(x10).Lio_kaitai_struct_datatype_DataType$UserType__f_name)) + ">(") + addParams) + io) + addArgs) + ")")
91011
+ var x$9 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$();
91012
+ if ((x$9 === x1$4)) {
91013
+ return (((((((("std::unique_ptr<" + $m_Lio_kaitai_struct_languages_CppCompiler$().types2class__sci_List__T($n(x10).Lio_kaitai_struct_datatype_DataType$UserType__f_name)) + ">(new ") + $m_Lio_kaitai_struct_languages_CppCompiler$().types2class__sci_List__T($n(x10).Lio_kaitai_struct_datatype_DataType$UserType__f_name)) + "(") + addParams) + io) + addArgs) + "))")
91168
91014
  } else {
91169
- var x$17 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$();
91170
- if ((x$17 === x1$5)) {
91171
- return (((((((("std::unique_ptr<" + $m_Lio_kaitai_struct_languages_CppCompiler$().types2class__sci_List__T($n(x10).Lio_kaitai_struct_datatype_DataType$UserType__f_name)) + ">(new ") + $m_Lio_kaitai_struct_languages_CppCompiler$().types2class__sci_List__T($n(x10).Lio_kaitai_struct_datatype_DataType$UserType__f_name)) + "(") + addParams) + io) + addArgs) + "))")
91172
- } else {
91173
- throw new $c_s_MatchError(x1$5)
91174
- }
91015
+ throw new $c_s_MatchError(x1$4)
91175
91016
  }
91176
91017
  }
91177
91018
  } else {
@@ -91454,14 +91295,8 @@ $c_Lio_kaitai_struct_languages_CppCompiler.prototype.nullPtr__T = (function() {
91454
91295
  if ((x === x1)) {
91455
91296
  return "0"
91456
91297
  } else {
91457
- var x$3 = $m_Lio_kaitai_struct_CppRuntimeConfig$SharedPointers$();
91298
+ var x$3 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$();
91458
91299
  if ((x$3 === x1)) {
91459
- var $$x1 = true
91460
- } else {
91461
- var x$5 = $m_Lio_kaitai_struct_CppRuntimeConfig$UniqueAndRawPointers$();
91462
- var $$x1 = (x$5 === x1)
91463
- };
91464
- if ($$x1) {
91465
91300
  return "nullptr"
91466
91301
  } else {
91467
91302
  throw new $c_s_MatchError(x1)
@@ -92330,7 +92165,8 @@ $c_Lio_kaitai_struct_languages_GoCompiler.prototype.classConstructorHeader__sci_
92330
92165
  };
92331
92166
  $n(this.Lio_kaitai_struct_languages_GoCompiler__f_out).dec__V();
92332
92167
  $n(this.Lio_kaitai_struct_languages_GoCompiler__f_out).puts__T__V("}");
92333
- this.universalFooter__V()
92168
+ this.universalFooter__V();
92169
+ this.ioAccessor__V()
92334
92170
  });
92335
92171
  $c_Lio_kaitai_struct_languages_GoCompiler.prototype.classConstructorFooter__V = (function() {
92336
92172
  /*<skip>*/
@@ -92633,7 +92469,7 @@ $c_Lio_kaitai_struct_languages_GoCompiler.prototype.parseExpr__Lio_kaitai_struct
92633
92469
  return (((((io + ".ReadBitsInt") + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T($n(bitEndian$2).toSuffix__T())) + "(") + width) + ")")
92634
92470
  } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) {
92635
92471
  var x10 = $as_Lio_kaitai_struct_datatype_DataType$UserType(dataType);
92636
- if ($n(x10).isOpaque__Z()) {
92472
+ if ($n(x10).isExternal__Lio_kaitai_struct_format_ClassSpec__Z($n(this.Lio_kaitai_struct_languages_components_LanguageCompiler__f_typeProvider).Lio_kaitai_struct_ClassTypeProvider__f_nowClass)) {
92637
92473
  var addArgs = ""
92638
92474
  } else {
92639
92475
  var rc8 = false;
@@ -92817,6 +92653,15 @@ $c_Lio_kaitai_struct_languages_GoCompiler.prototype.attrValidateExpr__Lio_kaitai
92817
92653
  $n(this.Lio_kaitai_struct_languages_GoCompiler__f_out).dec__V();
92818
92654
  $n(this.Lio_kaitai_struct_languages_GoCompiler__f_out).puts__T__V("}")
92819
92655
  });
92656
+ $c_Lio_kaitai_struct_languages_GoCompiler.prototype.ioAccessor__V = (function() {
92657
+ var this$1 = $n(this.Lio_kaitai_struct_languages_GoCompiler__f_out);
92658
+ $n(this$1.Lio_kaitai_struct_StringLanguageOutputWriter__f_sb).append__T__scm_StringBuilder("\n");
92659
+ $n(this.Lio_kaitai_struct_languages_GoCompiler__f_out).puts__T__V((("func (this " + $m_Lio_kaitai_struct_languages_GoCompiler$().types2class__sci_List__T($n($n(this.Lio_kaitai_struct_languages_components_LanguageCompiler__f_typeProvider).Lio_kaitai_struct_ClassTypeProvider__f_nowClass).Lio_kaitai_struct_format_ClassSpec__f_name)) + ") IO_() *kaitai.Stream {"));
92660
+ $n(this.Lio_kaitai_struct_languages_GoCompiler__f_out).inc__V();
92661
+ $n(this.Lio_kaitai_struct_languages_GoCompiler__f_out).puts__T__V("return this._io");
92662
+ $n(this.Lio_kaitai_struct_languages_GoCompiler__f_out).dec__V();
92663
+ $n(this.Lio_kaitai_struct_languages_GoCompiler__f_out).puts__T__V("}")
92664
+ });
92820
92665
  $c_Lio_kaitai_struct_languages_GoCompiler.prototype.translator__Lio_kaitai_struct_translators_AbstractTranslator = (function() {
92821
92666
  return this.Lio_kaitai_struct_languages_GoCompiler__f_translator
92822
92667
  });
@@ -93443,40 +93288,48 @@ $c_Lio_kaitai_struct_languages_JavaScriptCompiler.prototype.parseExpr__Lio_kaita
93443
93288
  return (((((io + ".readBitsInt") + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T($n(bitEndian$2).toSuffix__T())) + "(") + width) + ")")
93444
93289
  } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) {
93445
93290
  var x10 = $as_Lio_kaitai_struct_datatype_DataType$UserType(dataType);
93446
- var rc8 = false;
93447
- var x2$2 = null;
93448
- var x1$2 = $n(x10).Lio_kaitai_struct_datatype_DataType$UserType__f_forcedParent;
93449
- matchEnd9: {
93450
- var parent;
93451
- if ((x1$2 instanceof $c_s_Some)) {
93452
- rc8 = true;
93453
- x2$2 = $as_s_Some(x1$2);
93454
- var p3 = $as_Lio_kaitai_struct_exprlang_Ast$expr($n(x2$2).s_Some__f_value);
93455
- var x = $m_Lio_kaitai_struct_datatype_DataType$().Lio_kaitai_struct_datatype_DataType$__f_USER_TYPE_NO_PARENT;
93456
- if (((x === null) ? (p3 === null) : $n(x).equals__O__Z(p3))) {
93457
- var parent = "null";
93291
+ if ($n(x10).isExternal__Lio_kaitai_struct_format_ClassSpec__Z($n(this.Lio_kaitai_struct_languages_components_LanguageCompiler__f_typeProvider).Lio_kaitai_struct_ClassTypeProvider__f_nowClass)) {
93292
+ var x1$3___1 = "null";
93293
+ var x1$3___2 = "null"
93294
+ } else {
93295
+ var rc8 = false;
93296
+ var x2$2 = null;
93297
+ var x1$2 = $n(x10).Lio_kaitai_struct_datatype_DataType$UserType__f_forcedParent;
93298
+ matchEnd9: {
93299
+ var parent;
93300
+ if ((x1$2 instanceof $c_s_Some)) {
93301
+ rc8 = true;
93302
+ x2$2 = $as_s_Some(x1$2);
93303
+ var p3 = $as_Lio_kaitai_struct_exprlang_Ast$expr($n(x2$2).s_Some__f_value);
93304
+ var x = $m_Lio_kaitai_struct_datatype_DataType$().Lio_kaitai_struct_datatype_DataType$__f_USER_TYPE_NO_PARENT;
93305
+ if (((x === null) ? (p3 === null) : $n(x).equals__O__Z(p3))) {
93306
+ var parent = "null";
93307
+ break matchEnd9
93308
+ }
93309
+ };
93310
+ if (rc8) {
93311
+ var fp = $as_Lio_kaitai_struct_exprlang_Ast$expr($n(x2$2).s_Some__f_value);
93312
+ var this$1 = $n(this.Lio_kaitai_struct_languages_JavaScriptCompiler__f_translator);
93313
+ var parent = this$1.translate__Lio_kaitai_struct_exprlang_Ast$expr__I__T(fp, 0);
93458
93314
  break matchEnd9
93459
- }
93460
- };
93461
- if (rc8) {
93462
- var fp = $as_Lio_kaitai_struct_exprlang_Ast$expr($n(x2$2).s_Some__f_value);
93463
- var this$1 = $n(this.Lio_kaitai_struct_languages_JavaScriptCompiler__f_translator);
93464
- var parent = this$1.translate__Lio_kaitai_struct_exprlang_Ast$expr__I__T(fp, 0);
93465
- break matchEnd9
93466
- };
93467
- var x$3 = $m_s_None$();
93468
- if ((x$3 === x1$2)) {
93469
- var parent = "this";
93470
- break matchEnd9
93315
+ };
93316
+ var x$3 = $m_s_None$();
93317
+ if ((x$3 === x1$2)) {
93318
+ var parent = "this";
93319
+ break matchEnd9
93320
+ };
93321
+ throw new $c_s_MatchError(x1$2)
93471
93322
  };
93472
- throw new $c_s_MatchError(x1$2)
93323
+ var x1$3___1 = parent;
93324
+ var x1$3___2 = "this._root"
93473
93325
  };
93474
- var root = ($n(x10).isOpaque__Z() ? "null" : "this._root");
93475
- var x1$3 = $n($n($as_Lio_kaitai_struct_format_ClassSpec($n($n(x10).Lio_kaitai_struct_datatype_DataType$UserType__f_classSpec).get__O())).Lio_kaitai_struct_format_ClassSpec__f_meta).Lio_kaitai_struct_format_MetaSpec__f_endian;
93326
+ var parent$2 = $as_T(x1$3___1);
93327
+ var root = $as_T(x1$3___2);
93328
+ var x1$4 = $n($n($as_Lio_kaitai_struct_format_ClassSpec($n($n(x10).Lio_kaitai_struct_datatype_DataType$UserType__f_classSpec).get__O())).Lio_kaitai_struct_format_ClassSpec__f_meta).Lio_kaitai_struct_format_MetaSpec__f_endian;
93476
93329
  matchEnd6: {
93477
93330
  var addEndian;
93478
- if ((x1$3 instanceof $c_s_Some)) {
93479
- var x2$3 = $as_s_Some(x1$3);
93331
+ if ((x1$4 instanceof $c_s_Some)) {
93332
+ var x2$3 = $as_s_Some(x1$4);
93480
93333
  var p3$2 = $as_Lio_kaitai_struct_datatype_Endianness($n(x2$3).s_Some__f_value);
93481
93334
  var x$5 = $m_Lio_kaitai_struct_datatype_InheritedEndian$();
93482
93335
  if ((x$5 === p3$2)) {
@@ -93509,7 +93362,7 @@ $c_Lio_kaitai_struct_languages_JavaScriptCompiler.prototype.parseExpr__Lio_kaita
93509
93362
  } else {
93510
93363
  var topLevelModulePrefix = ""
93511
93364
  };
93512
- return ((((((((((("new " + topLevelModulePrefix) + $m_Lio_kaitai_struct_languages_JavaScriptCompiler$().types2class__sci_List__T($n(x10).Lio_kaitai_struct_datatype_DataType$UserType__f_name)) + "(") + io) + ", ") + parent) + ", ") + root) + addEndian) + addParams) + ")")
93365
+ return ((((((((((("new " + topLevelModulePrefix) + $m_Lio_kaitai_struct_languages_JavaScriptCompiler$().types2class__sci_List__T($n(x10).Lio_kaitai_struct_datatype_DataType$UserType__f_name)) + "(") + io) + ", ") + parent$2) + ", ") + root) + addEndian) + addParams) + ")")
93513
93366
  } else {
93514
93367
  throw new $c_s_MatchError(dataType)
93515
93368
  }
@@ -93673,7 +93526,7 @@ $c_Lio_kaitai_struct_languages_JavaScriptCompiler.prototype.debugClassSequence__
93673
93526
  /*<skip>*/
93674
93527
  });
93675
93528
  $c_Lio_kaitai_struct_languages_JavaScriptCompiler.prototype.classToString__Lio_kaitai_struct_exprlang_Ast$expr__V = (function(toStringExpr) {
93676
- var name = $as_T($n($n($n($n(this.Lio_kaitai_struct_languages_JavaScriptCompiler__f_translator).Lio_kaitai_struct_translators_BaseTranslator__f_provider).Lio_kaitai_struct_ClassTypeProvider__f_nowClass).Lio_kaitai_struct_format_ClassSpec__f_name).last__O());
93529
+ var name = $as_T($n($n($n(this.Lio_kaitai_struct_languages_components_LanguageCompiler__f_typeProvider).Lio_kaitai_struct_ClassTypeProvider__f_nowClass).Lio_kaitai_struct_format_ClassSpec__f_name).last__O());
93677
93530
  var className = $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T(name);
93678
93531
  var this$1 = $n(this.Lio_kaitai_struct_languages_JavaScriptCompiler__f_out);
93679
93532
  $n(this$1.Lio_kaitai_struct_StringLanguageOutputWriter__f_sb).append__T__scm_StringBuilder("\n");
@@ -94297,7 +94150,7 @@ $c_Lio_kaitai_struct_languages_PHPCompiler.prototype.parseExpr__Lio_kaitai_struc
94297
94150
  var this$2 = $n(this.Lio_kaitai_struct_languages_PHPCompiler__f_translator);
94298
94151
  return this$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__I__T(a, 0)
94299
94152
  })))), "", ", ", ", ");
94300
- if ($n(x10).isOpaque__Z()) {
94153
+ if ($n(x10).isExternal__Lio_kaitai_struct_format_ClassSpec__Z($n(this.Lio_kaitai_struct_languages_components_LanguageCompiler__f_typeProvider).Lio_kaitai_struct_ClassTypeProvider__f_nowClass)) {
94301
94154
  var addArgs = ""
94302
94155
  } else {
94303
94156
  var rc8 = false;
@@ -95009,7 +94862,7 @@ $c_Lio_kaitai_struct_languages_PerlCompiler.prototype.parseExpr__Lio_kaitai_stru
95009
94862
  return (((((io + "->read_bits_int_") + $n(bitEndian$2).toSuffix__T()) + "(") + width) + ")")
95010
94863
  } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) {
95011
94864
  var x10 = $as_Lio_kaitai_struct_datatype_DataType$UserType(dataType);
95012
- if ($n(x10).isOpaque__Z()) {
94865
+ if ($n(x10).isExternal__Lio_kaitai_struct_format_ClassSpec__Z($n(this.Lio_kaitai_struct_languages_components_LanguageCompiler__f_typeProvider).Lio_kaitai_struct_ClassTypeProvider__f_nowClass)) {
95013
94866
  var addArgs = ""
95014
94867
  } else {
95015
94868
  var x1$2 = $n(x10).Lio_kaitai_struct_datatype_DataType$UserType__f_forcedParent;
@@ -95661,7 +95514,7 @@ $c_Lio_kaitai_struct_languages_RustCompiler.prototype.parseExpr__Lio_kaitai_stru
95661
95514
  var this$2 = $n(this.Lio_kaitai_struct_languages_RustCompiler__f_translator);
95662
95515
  return this$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__I__T(a, 0)
95663
95516
  })))), "", ", ", ", ");
95664
- if ($n(x10).isOpaque__Z()) {
95517
+ if ($n(x10).isExternal__Lio_kaitai_struct_format_ClassSpec__Z($n(this.Lio_kaitai_struct_languages_components_LanguageCompiler__f_typeProvider).Lio_kaitai_struct_ClassTypeProvider__f_nowClass)) {
95665
95518
  /*<skip>*/
95666
95519
  } else {
95667
95520
  var rc8 = false;
@@ -97015,7 +96868,7 @@ $c_Lio_kaitai_struct_languages_CSharpCompiler.prototype.parseExpr__Lio_kaitai_st
97015
96868
  var this$2 = $n(this.Lio_kaitai_struct_languages_CSharpCompiler__f_translator);
97016
96869
  return this$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__I__T(a, 0)
97017
96870
  })))), "", ", ", ", ");
97018
- if ($n(x10).isOpaque__Z()) {
96871
+ if ($n(x10).isExternal__Lio_kaitai_struct_format_ClassSpec__Z($n(this.Lio_kaitai_struct_languages_components_LanguageCompiler__f_typeProvider).Lio_kaitai_struct_ClassTypeProvider__f_nowClass)) {
97019
96872
  var addArgs = ""
97020
96873
  } else {
97021
96874
  var rc8 = false;
@@ -97847,7 +97700,7 @@ $c_Lio_kaitai_struct_languages_LuaCompiler.prototype.parseExpr__Lio_kaitai_struc
97847
97700
  var this$2 = $n(this.Lio_kaitai_struct_languages_LuaCompiler__f_translator);
97848
97701
  return this$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__I__T(a, 0)
97849
97702
  })))), "", ", ", ", ");
97850
- if ($n(x10).isOpaque__Z()) {
97703
+ if ($n(x10).isExternal__Lio_kaitai_struct_format_ClassSpec__Z($n(this.Lio_kaitai_struct_languages_components_LanguageCompiler__f_typeProvider).Lio_kaitai_struct_ClassTypeProvider__f_nowClass)) {
97851
97704
  var addArgs = ""
97852
97705
  } else {
97853
97706
  var rc8 = false;
@@ -98717,54 +98570,62 @@ $c_Lio_kaitai_struct_languages_NimCompiler.prototype.parseExpr__Lio_kaitai_struc
98717
98570
  var expr = (((((io + ".readBitsInt") + $m_Lio_kaitai_struct_languages_NimCompiler$().camelCase__T__Z__T($n(bitEndian$2).toSuffix__T(), true)) + "(") + width) + ")")
98718
98571
  } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) {
98719
98572
  var x10 = $as_Lio_kaitai_struct_datatype_DataType$UserType(dataType);
98720
- var rc8 = false;
98721
- var x2$2 = null;
98722
- var x1$2 = $n(x10).Lio_kaitai_struct_datatype_DataType$UserType__f_forcedParent;
98723
- matchEnd9: {
98724
- var parent;
98725
- if ((x1$2 instanceof $c_s_Some)) {
98726
- rc8 = true;
98727
- x2$2 = $as_s_Some(x1$2);
98728
- var p3 = $as_Lio_kaitai_struct_exprlang_Ast$expr($n(x2$2).s_Some__f_value);
98729
- var x = $m_Lio_kaitai_struct_datatype_DataType$().Lio_kaitai_struct_datatype_DataType$__f_USER_TYPE_NO_PARENT;
98730
- if (((x === null) ? (p3 === null) : $n(x).equals__O__Z(p3))) {
98731
- var parent = "nil";
98573
+ if ($n(x10).isExternal__Lio_kaitai_struct_format_ClassSpec__Z($n(this.Lio_kaitai_struct_languages_components_LanguageCompiler__f_typeProvider).Lio_kaitai_struct_ClassTypeProvider__f_nowClass)) {
98574
+ var x1$3___1 = "nil";
98575
+ var x1$3___2 = "nil"
98576
+ } else {
98577
+ var rc8 = false;
98578
+ var x2$2 = null;
98579
+ var x1$2 = $n(x10).Lio_kaitai_struct_datatype_DataType$UserType__f_forcedParent;
98580
+ matchEnd9: {
98581
+ var parent;
98582
+ if ((x1$2 instanceof $c_s_Some)) {
98583
+ rc8 = true;
98584
+ x2$2 = $as_s_Some(x1$2);
98585
+ var p3 = $as_Lio_kaitai_struct_exprlang_Ast$expr($n(x2$2).s_Some__f_value);
98586
+ var x = $m_Lio_kaitai_struct_datatype_DataType$().Lio_kaitai_struct_datatype_DataType$__f_USER_TYPE_NO_PARENT;
98587
+ if (((x === null) ? (p3 === null) : $n(x).equals__O__Z(p3))) {
98588
+ var parent = "nil";
98589
+ break matchEnd9
98590
+ }
98591
+ };
98592
+ if (rc8) {
98593
+ var fp = $as_Lio_kaitai_struct_exprlang_Ast$expr($n(x2$2).s_Some__f_value);
98594
+ var this$1 = $n(this.Lio_kaitai_struct_languages_NimCompiler__f_translator);
98595
+ var parent = this$1.translate__Lio_kaitai_struct_exprlang_Ast$expr__I__T(fp, 0);
98732
98596
  break matchEnd9
98733
- }
98734
- };
98735
- if (rc8) {
98736
- var fp = $as_Lio_kaitai_struct_exprlang_Ast$expr($n(x2$2).s_Some__f_value);
98737
- var this$1 = $n(this.Lio_kaitai_struct_languages_NimCompiler__f_translator);
98738
- var parent = this$1.translate__Lio_kaitai_struct_exprlang_Ast$expr__I__T(fp, 0);
98739
- break matchEnd9
98740
- };
98741
- var x$3 = $m_s_None$();
98742
- if ((x$3 === x1$2)) {
98743
- var parent = "this";
98744
- break matchEnd9
98597
+ };
98598
+ var x$3 = $m_s_None$();
98599
+ if ((x$3 === x1$2)) {
98600
+ var parent = "this";
98601
+ break matchEnd9
98602
+ };
98603
+ throw new $c_s_MatchError(x1$2)
98745
98604
  };
98746
- throw new $c_s_MatchError(x1$2)
98605
+ var x1$3___1 = parent;
98606
+ var x1$3___2 = "this.root"
98747
98607
  };
98748
- var addArgs = (", this.root, " + parent);
98608
+ var parent$2 = $as_T(x1$3___1);
98609
+ var root = $as_T(x1$3___2);
98749
98610
  var addParams = $m_Lio_kaitai_struct_Utils$().join__sc_IterableOnce__T__T__T__T($as_sc_IterableOnce($n($n(x10).Lio_kaitai_struct_datatype_DataType$UserType__f_args).map__F1__O(new $c_sjsr_AnonFunction1(((a$2) => {
98750
98611
  var a = $as_Lio_kaitai_struct_exprlang_Ast$expr(a$2);
98751
98612
  var this$3 = $n(this.Lio_kaitai_struct_languages_NimCompiler__f_translator);
98752
98613
  return this$3.translate__Lio_kaitai_struct_exprlang_Ast$expr__I__T(a, 0)
98753
98614
  })))), ", ", ", ", "");
98754
- var x1$3 = $n(x10).Lio_kaitai_struct_datatype_DataType$UserType__f_classSpec;
98755
- if ((x1$3 instanceof $c_s_Some)) {
98756
- var x2$3 = $as_s_Some(x1$3);
98615
+ var x1$4 = $n(x10).Lio_kaitai_struct_datatype_DataType$UserType__f_classSpec;
98616
+ if ((x1$4 instanceof $c_s_Some)) {
98617
+ var x2$3 = $as_s_Some(x1$4);
98757
98618
  var cs = $as_Lio_kaitai_struct_format_ClassSpec($n(x2$3).s_Some__f_value);
98758
98619
  var $$x1 = $n(cs).Lio_kaitai_struct_format_ClassSpec__f_name
98759
98620
  } else {
98760
98621
  var x$5 = $m_s_None$();
98761
- if ((!(x$5 === x1$3))) {
98762
- throw new $c_s_MatchError(x1$3)
98622
+ if ((!(x$5 === x1$4))) {
98623
+ throw new $c_s_MatchError(x1$4)
98763
98624
  };
98764
98625
  var $$x1 = $n(x10).Lio_kaitai_struct_datatype_DataType$UserType__f_name
98765
98626
  };
98766
98627
  var concreteName = this.namespaced__sci_List__T($$x1);
98767
- var expr = (((((concreteName + ".read(") + io) + addArgs) + addParams) + ")")
98628
+ var expr = ((((((((concreteName + ".read(") + io) + ", ") + root) + ", ") + parent$2) + addParams) + ")")
98768
98629
  } else {
98769
98630
  var expr;
98770
98631
  throw new $c_s_MatchError(dataType)
@@ -99444,7 +99305,7 @@ $c_Lio_kaitai_struct_languages_RubyCompiler.prototype.parseExpr__Lio_kaitai_stru
99444
99305
  var this$2 = $n(this.Lio_kaitai_struct_languages_RubyCompiler__f_translator);
99445
99306
  return this$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__I__T(a, 0)
99446
99307
  })))), ", ", ", ", "");
99447
- if ($n(x10).isOpaque__Z()) {
99308
+ if ($n(x10).isExternal__Lio_kaitai_struct_format_ClassSpec__Z($n(this.Lio_kaitai_struct_languages_components_LanguageCompiler__f_typeProvider).Lio_kaitai_struct_ClassTypeProvider__f_nowClass)) {
99448
99309
  var addArgs = ""
99449
99310
  } else {
99450
99311
  var rc8 = false;
@@ -100841,7 +100702,7 @@ $c_Lio_kaitai_struct_languages_JavaCompiler.prototype.parseExpr__Lio_kaitai_stru
100841
100702
  var expr = (((((io + ".readBitsInt") + $m_Lio_kaitai_struct_Utils$().upperCamelCase__T__T($n(bitEndian$2).toSuffix__T())) + "(") + width) + ")")
100842
100703
  } else if ((dataType instanceof $c_Lio_kaitai_struct_datatype_DataType$UserType)) {
100843
100704
  var x10 = $as_Lio_kaitai_struct_datatype_DataType$UserType(dataType);
100844
- if ($n(x10).isOpaque__Z()) {
100705
+ if ($n(x10).isExternal__Lio_kaitai_struct_format_ClassSpec__Z($n(this.Lio_kaitai_struct_languages_components_LanguageCompiler__f_typeProvider).Lio_kaitai_struct_ClassTypeProvider__f_nowClass)) {
100845
100706
  var addArgs = ""
100846
100707
  } else {
100847
100708
  var rc8 = false;
@@ -101846,7 +101707,7 @@ $c_Lio_kaitai_struct_languages_PythonCompiler.prototype.parseExpr__Lio_kaitai_st
101846
101707
  var this$2 = $n(this.Lio_kaitai_struct_languages_PythonCompiler__f_translator);
101847
101708
  return this$2.translate__Lio_kaitai_struct_exprlang_Ast$expr__I__T(a, 0)
101848
101709
  })))), "", ", ", ", ");
101849
- if ($n(x10).isOpaque__Z()) {
101710
+ if ($n(x10).isExternal__Lio_kaitai_struct_format_ClassSpec__Z($n(this.Lio_kaitai_struct_languages_components_LanguageCompiler__f_typeProvider).Lio_kaitai_struct_ClassTypeProvider__f_nowClass)) {
101850
101711
  var addArgs = ""
101851
101712
  } else {
101852
101713
  var rc8 = false;
@@ -102091,8 +101952,7 @@ $c_Lio_kaitai_struct_languages_PythonCompiler.prototype.attrValidateExpr__Lio_ka
102091
101952
  });
102092
101953
  $c_Lio_kaitai_struct_languages_PythonCompiler.prototype.userType2class__Lio_kaitai_struct_datatype_DataType$UserType__T = (function(t) {
102093
101954
  var name = $n($as_Lio_kaitai_struct_format_ClassSpec($n($n(t).Lio_kaitai_struct_datatype_DataType$UserType__f_classSpec).get__O())).Lio_kaitai_struct_format_ClassSpec__f_name;
102094
- var firstName = $as_T($n(name).head__O());
102095
- var prefix = (($n(t).isOpaque__Z() && (firstName !== $n($n($n($n(this.Lio_kaitai_struct_languages_PythonCompiler__f_translator).Lio_kaitai_struct_translators_BaseTranslator__f_provider).Lio_kaitai_struct_ClassTypeProvider__f_nowClass).Lio_kaitai_struct_format_ClassSpec__f_name).head__O())) ? (firstName + ".") : "");
101955
+ var prefix = ($n(t).isExternal__Lio_kaitai_struct_format_ClassSpec__Z($n(this.Lio_kaitai_struct_languages_components_LanguageCompiler__f_typeProvider).Lio_kaitai_struct_ClassTypeProvider__f_nowClass) ? ($n(name).head__O() + ".") : "");
102096
101956
  return (prefix + $m_Lio_kaitai_struct_languages_PythonCompiler$().types2class__sci_List__T(name))
102097
101957
  });
102098
101958
  $c_Lio_kaitai_struct_languages_PythonCompiler.prototype.translator__Lio_kaitai_struct_translators_AbstractTranslator = (function() {
package/package.json CHANGED
@@ -6,7 +6,7 @@
6
6
  "bugs": {
7
7
  "url": "https://github.com/kaitai-io/kaitai_struct/issues"
8
8
  },
9
- "bundleDependencies": false,
9
+ "bundleDependencies": [],
10
10
  "deprecated": false,
11
11
  "description": "Kaitai Struct Compiler",
12
12
  "homepage": "https://github.com/kaitai-io/kaitai_struct_compiler#readme",
@@ -35,5 +35,5 @@
35
35
  "scripts": {
36
36
  "test": "echo \"Error: no test specified\" && exit 1"
37
37
  },
38
- "version": "0.11.0-SNAPSHOT20240322.004237.c4672ee"
38
+ "version": "0.11.0-SNAPSHOT20240403.134844.751f059"
39
39
  }