#ifdef OMC_BASE_FILE
#define OMC_FILE OMC_BASE_FILE
#else
#define OMC_FILE "Unparsing.c"
#endif
#include "omc_simulation_settings.h"
#include "Unparsing.h"
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT0,3,3) {&Tpl_Text_MEM__TEXT__desc,MMC_REFSTRUCTLIT(mmc_nil),MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT0 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT0)
#define _OMC_LIT1_data "_"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT1,1,_OMC_LIT1_data);
#define _OMC_LIT1 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT1)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT2,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT1}};
#define _OMC_LIT2 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT2)
#define _OMC_LIT3_data "jl_value_t *"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT3,12,_OMC_LIT3_data);
#define _OMC_LIT3 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT3)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT4,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT3}};
#define _OMC_LIT4 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT4)
#define _OMC_LIT5_data " = NULL;\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT5,9,_OMC_LIT5_data);
#define _OMC_LIT5 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT5)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT6,2,5) {&Tpl_StringToken_ST__LINE__desc,_OMC_LIT5}};
#define _OMC_LIT6 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT6)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT7,1,3) {&Tpl_StringToken_ST__NEW__LINE__desc,}};
#define _OMC_LIT7 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT7)
#define _OMC_LIT8_data "assert(("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT8,8,_OMC_LIT8_data);
#define _OMC_LIT8 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT8)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT9,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT8}};
#define _OMC_LIT9 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT9)
#define _OMC_LIT10_data " = jl_get_global("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT10,17,_OMC_LIT10_data);
#define _OMC_LIT10 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT10)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT11,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT10}};
#define _OMC_LIT11 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT11)
#define _OMC_LIT12_data ", jl_symbol(\""
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT12,13,_OMC_LIT12_data);
#define _OMC_LIT12 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT12)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT13,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT12}};
#define _OMC_LIT13 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT13)
#define _OMC_LIT14_data "\"))));"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT14,6,_OMC_LIT14_data);
#define _OMC_LIT14 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT14)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT15,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT14}};
#define _OMC_LIT15 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT15)
#define _OMC_LIT16_data "extern jl_value_t *"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT16,19,_OMC_LIT16_data);
#define _OMC_LIT16 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT16)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT17,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT16}};
#define _OMC_LIT17 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT17)
#define _OMC_LIT18_data ";"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT18,1,_OMC_LIT18_data);
#define _OMC_LIT18 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT18)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT19,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT18}};
#define _OMC_LIT19 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT19)
#define _OMC_LIT20_data ","
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT20,1,_OMC_LIT20_data);
#define _OMC_LIT20 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT20)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT21,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT20}};
#define _OMC_LIT21 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT21)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT22,1,1) {_OMC_LIT21}};
#define _OMC_LIT22 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT22)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT23,9,3) {&Tpl_IterOptions_ITER__OPTIONS__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),MMC_REFSTRUCTLIT(mmc_none),_OMC_LIT22,MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),_OMC_LIT7,MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),_OMC_LIT7}};
#define _OMC_LIT23 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT23)
#define _OMC_LIT24_data "."
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT24,1,_OMC_LIT24_data);
#define _OMC_LIT24 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT24)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT25,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT24}};
#define _OMC_LIT25 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT25)
#define _OMC_LIT26_data "__"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT26,2,_OMC_LIT26_data);
#define _OMC_LIT26 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT26)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT27,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT26}};
#define _OMC_LIT27 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT27)
#define _OMC_LIT28_data "_5f"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT28,3,_OMC_LIT28_data);
#define _OMC_LIT28 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT28)
#define _OMC_LIT29_data "jl_function_t *"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT29,15,_OMC_LIT29_data);
#define _OMC_LIT29 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT29)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT30,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT29}};
#define _OMC_LIT30 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT30)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT31,2,1) {_OMC_LIT3,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT31 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT31)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT32,2,1) {_OMC_LIT5,_OMC_LIT31}};
#define _OMC_LIT32 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT32)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT33,3,6) {&Tpl_StringToken_ST__STRING__LIST__desc,_OMC_LIT32,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))}};
#define _OMC_LIT33 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT33)
#define _OMC_LIT34_data "_type = NULL;\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT34,14,_OMC_LIT34_data);
#define _OMC_LIT34 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT34)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT35,2,5) {&Tpl_StringToken_ST__LINE__desc,_OMC_LIT34}};
#define _OMC_LIT35 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT35)
#define _OMC_LIT36_data " = jl_get_function("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT36,19,_OMC_LIT36_data);
#define _OMC_LIT36 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT36)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT37,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT36}};
#define _OMC_LIT37 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT37)
#define _OMC_LIT38_data ", \""
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT38,3,_OMC_LIT38_data);
#define _OMC_LIT38 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT38)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT39,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT38}};
#define _OMC_LIT39 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT39)
#define _OMC_LIT40_data "\")));\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT40,6,_OMC_LIT40_data);
#define _OMC_LIT40 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT40)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT41,2,1) {_OMC_LIT8,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT41 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT41)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT42,2,1) {_OMC_LIT40,_OMC_LIT41}};
#define _OMC_LIT42 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT42)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT43,3,6) {&Tpl_StringToken_ST__STRING__LIST__desc,_OMC_LIT42,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))}};
#define _OMC_LIT43 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT43)
#define _OMC_LIT44_data "_type = jl_get_global("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT44,22,_OMC_LIT44_data);
#define _OMC_LIT44 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT44)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT45,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT44}};
#define _OMC_LIT45 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT45)
#define _OMC_LIT46_data "extern jl_function_t *"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT46,22,_OMC_LIT46_data);
#define _OMC_LIT46 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT46)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT47,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT46}};
#define _OMC_LIT47 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT47)
#define _OMC_LIT48_data ";\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT48,2,_OMC_LIT48_data);
#define _OMC_LIT48 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT48)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT49,2,1) {_OMC_LIT46,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT49 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT49)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT50,2,1) {_OMC_LIT48,_OMC_LIT49}};
#define _OMC_LIT50 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT50)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT51,3,6) {&Tpl_StringToken_ST__STRING__LIST__desc,_OMC_LIT50,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))}};
#define _OMC_LIT51 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT51)
#define _OMC_LIT52_data "_type;\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT52,7,_OMC_LIT52_data);
#define _OMC_LIT52 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT52)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT53,2,5) {&Tpl_StringToken_ST__LINE__desc,_OMC_LIT52}};
#define _OMC_LIT53 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT53)
#define _OMC_LIT54_data "#define "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT54,8,_OMC_LIT54_data);
#define _OMC_LIT54 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT54)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT55,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT54}};
#define _OMC_LIT55 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT55)
#define _OMC_LIT56_data " jl_call0("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT56,10,_OMC_LIT56_data);
#define _OMC_LIT56 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT56)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT57,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT56}};
#define _OMC_LIT57 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT57)
#define _OMC_LIT58_data ")"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT58,1,_OMC_LIT58_data);
#define _OMC_LIT58 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT58)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT59,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT58}};
#define _OMC_LIT59 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT59)
#define _OMC_LIT60_data "static inline jl_value_t* "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT60,26,_OMC_LIT60_data);
#define _OMC_LIT60 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT60)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT61,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT60}};
#define _OMC_LIT61 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT61)
#define _OMC_LIT62_data "("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT62,1,_OMC_LIT62_data);
#define _OMC_LIT62 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT62)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT63,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT62}};
#define _OMC_LIT63 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT63)
#define _OMC_LIT64_data ") {\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT64,4,_OMC_LIT64_data);
#define _OMC_LIT64 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT64)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT65,2,5) {&Tpl_StringToken_ST__LINE__desc,_OMC_LIT64}};
#define _OMC_LIT65 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT65)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT66,2,4) {&Tpl_BlockType_BT__INDENT__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(2))}};
#define _OMC_LIT66 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT66)
#define _OMC_LIT67_data "return jl_call"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT67,14,_OMC_LIT67_data);
#define _OMC_LIT67 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT67)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT68,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT67}};
#define _OMC_LIT68 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT68)
#define _OMC_LIT69_data ");\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT69,3,_OMC_LIT69_data);
#define _OMC_LIT69 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT69)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT70,2,5) {&Tpl_StringToken_ST__LINE__desc,_OMC_LIT69}};
#define _OMC_LIT70 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT70)
#define _OMC_LIT71_data "}"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT71,1,_OMC_LIT71_data);
#define _OMC_LIT71 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT71)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT72,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT71}};
#define _OMC_LIT72 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT72)
#define _OMC_LIT73_data "jl_value_t *values["
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT73,19,_OMC_LIT73_data);
#define _OMC_LIT73 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT73)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT74,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT73}};
#define _OMC_LIT74 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT74)
#define _OMC_LIT75_data "] = {"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT75,5,_OMC_LIT75_data);
#define _OMC_LIT75 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT75)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT76,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT75}};
#define _OMC_LIT76 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT76)
#define _OMC_LIT77_data "};\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT77,3,_OMC_LIT77_data);
#define _OMC_LIT77 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT77)
#define _OMC_LIT78_data "return jl_call("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT78,15,_OMC_LIT78_data);
#define _OMC_LIT78 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT78)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT79,2,1) {_OMC_LIT78,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT79 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT79)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT80,2,1) {_OMC_LIT77,_OMC_LIT79}};
#define _OMC_LIT80 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT80)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT81,3,6) {&Tpl_StringToken_ST__STRING__LIST__desc,_OMC_LIT80,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))}};
#define _OMC_LIT81 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT81)
#define _OMC_LIT82_data ", values, "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT82,10,_OMC_LIT82_data);
#define _OMC_LIT82 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT82)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT83,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT82}};
#define _OMC_LIT83 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT83)
#define _OMC_LIT84_data ", "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT84,2,_OMC_LIT84_data);
#define _OMC_LIT84 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT84)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT85,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT84}};
#define _OMC_LIT85 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT85)
#define _OMC_LIT86_data "jl_eval_string(\"using "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT86,22,_OMC_LIT86_data);
#define _OMC_LIT86 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT86)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT87,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT86}};
#define _OMC_LIT87 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT87)
#define _OMC_LIT88_data "\");\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT88,4,_OMC_LIT88_data);
#define _OMC_LIT88 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT88)
#define _OMC_LIT89_data "jl_module_t* "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT89,13,_OMC_LIT89_data);
#define _OMC_LIT89 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT89)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT90,2,1) {_OMC_LIT89,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT90 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT90)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT91,2,1) {_OMC_LIT88,_OMC_LIT90}};
#define _OMC_LIT91 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT91)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT92,3,6) {&Tpl_StringToken_ST__STRING__LIST__desc,_OMC_LIT91,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))}};
#define _OMC_LIT92 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT92)
#define _OMC_LIT93_data " = (jl_module_t *) jl_eval_string(\""
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT93,35,_OMC_LIT93_data);
#define _OMC_LIT93 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT93)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT94,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT93}};
#define _OMC_LIT94 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT94)
#define _OMC_LIT95_data "if (!"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT95,5,_OMC_LIT95_data);
#define _OMC_LIT95 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT95)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT96,2,1) {_OMC_LIT95,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT96 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT96)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT97,2,1) {_OMC_LIT88,_OMC_LIT96}};
#define _OMC_LIT97 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT97)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT98,3,6) {&Tpl_StringToken_ST__STRING__LIST__desc,_OMC_LIT97,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))}};
#define _OMC_LIT98 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT98)
#define _OMC_LIT99_data ")\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT99,2,_OMC_LIT99_data);
#define _OMC_LIT99 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT99)
#define _OMC_LIT100_data "{\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT100,2,_OMC_LIT100_data);
#define _OMC_LIT100 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT100)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT101,2,1) {_OMC_LIT100,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT101 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT101)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT102,2,1) {_OMC_LIT99,_OMC_LIT101}};
#define _OMC_LIT102 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT102)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT103,3,6) {&Tpl_StringToken_ST__STRING__LIST__desc,_OMC_LIT102,MMC_IMMEDIATE(MMC_TAGFIXNUM(1))}};
#define _OMC_LIT103 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT103)
#define _OMC_LIT104_data "fprintf(stderr, \"module "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT104,24,_OMC_LIT104_data);
#define _OMC_LIT104 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT104)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT105,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT104}};
#define _OMC_LIT105 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT105)
#define _OMC_LIT106_data " not loaded, load it via using.\");\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT106,35,_OMC_LIT106_data);
#define _OMC_LIT106 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT106)
#define _OMC_LIT107_data "fflush(NULL);\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT107,14,_OMC_LIT107_data);
#define _OMC_LIT107 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT107)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT108,2,1) {_OMC_LIT107,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT108 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT108)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT109,2,1) {_OMC_LIT106,_OMC_LIT108}};
#define _OMC_LIT109 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT109)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT110,3,6) {&Tpl_StringToken_ST__STRING__LIST__desc,_OMC_LIT109,MMC_IMMEDIATE(MMC_TAGFIXNUM(1))}};
#define _OMC_LIT110 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT110)
#define _OMC_LIT111_data "}\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT111,2,_OMC_LIT111_data);
#define _OMC_LIT111 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT111)
#define _OMC_LIT112_data "assert(jl_is_module("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT112,20,_OMC_LIT112_data);
#define _OMC_LIT112 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT112)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT113,2,1) {_OMC_LIT112,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT113 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT113)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT114,2,1) {_OMC_LIT111,_OMC_LIT113}};
#define _OMC_LIT114 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT114)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT115,3,6) {&Tpl_StringToken_ST__STRING__LIST__desc,_OMC_LIT114,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))}};
#define _OMC_LIT115 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT115)
#define _OMC_LIT116_data "));"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT116,3,_OMC_LIT116_data);
#define _OMC_LIT116 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT116)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT117,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT116}};
#define _OMC_LIT117 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT117)
#define _OMC_LIT118_data "/* Automatically generated header for external MetaModelica functions */\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT118,73,_OMC_LIT118_data);
#define _OMC_LIT118 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT118)
#define _OMC_LIT119_data "#include <julia.h>\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT119,19,_OMC_LIT119_data);
#define _OMC_LIT119 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT119)
#define _OMC_LIT120_data "#include <assert.h>\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT120,20,_OMC_LIT120_data);
#define _OMC_LIT120 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT120)
#define _OMC_LIT121_data "#ifdef __cplusplus\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT121,19,_OMC_LIT121_data);
#define _OMC_LIT121 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT121)
#define _OMC_LIT122_data "extern \"C\" {\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT122,13,_OMC_LIT122_data);
#define _OMC_LIT122 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT122)
#define _OMC_LIT123_data "#endif\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT123,7,_OMC_LIT123_data);
#define _OMC_LIT123 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT123)
#define _OMC_LIT124_data "#ifdef ADD_METARECORD_DEFINITIONS\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT124,34,_OMC_LIT124_data);
#define _OMC_LIT124 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT124)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT125,2,1) {_OMC_LIT124,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT125 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT125)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT126,2,1) {_OMC_LIT123,_OMC_LIT125}};
#define _OMC_LIT126 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT126)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT127,2,1) {_OMC_LIT122,_OMC_LIT126}};
#define _OMC_LIT127 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT127)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT128,2,1) {_OMC_LIT121,_OMC_LIT127}};
#define _OMC_LIT128 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT128)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT129,2,1) {_OMC_LIT120,_OMC_LIT128}};
#define _OMC_LIT129 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT129)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT130,2,1) {_OMC_LIT119,_OMC_LIT129}};
#define _OMC_LIT130 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT130)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT131,2,1) {_OMC_LIT118,_OMC_LIT130}};
#define _OMC_LIT131 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT131)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT132,3,6) {&Tpl_StringToken_ST__STRING__LIST__desc,_OMC_LIT131,MMC_IMMEDIATE(MMC_TAGFIXNUM(1))}};
#define _OMC_LIT132 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT132)
#define _OMC_LIT133_data "void OpenModelica_initAbsynReferences()\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT133,40,_OMC_LIT133_data);
#define _OMC_LIT133 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT133)
#define _OMC_LIT134_data "  /* Note: These values may be garbage collected away? Call this before each file is parsed? */\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT134,96,_OMC_LIT134_data);
#define _OMC_LIT134 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT134)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT135,2,1) {_OMC_LIT134,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT135 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT135)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT136,2,1) {_OMC_LIT100,_OMC_LIT135}};
#define _OMC_LIT136 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT136)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT137,2,1) {_OMC_LIT133,_OMC_LIT136}};
#define _OMC_LIT137 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT137)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT138,3,6) {&Tpl_StringToken_ST__STRING__LIST__desc,_OMC_LIT137,MMC_IMMEDIATE(MMC_TAGFIXNUM(1))}};
#define _OMC_LIT138 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT138)
#define _OMC_LIT139_data "#else\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT139,6,_OMC_LIT139_data);
#define _OMC_LIT139 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT139)
#define _OMC_LIT140_data "void OpenModelica_initAbsynReferences();\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT140,41,_OMC_LIT140_data);
#define _OMC_LIT140 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT140)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT141,2,1) {_OMC_LIT123,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT141 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT141)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT142,2,1) {_OMC_LIT140,_OMC_LIT141}};
#define _OMC_LIT142 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT142)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT143,2,1) {_OMC_LIT139,_OMC_LIT142}};
#define _OMC_LIT143 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT143)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT144,2,1) {_OMC_LIT111,_OMC_LIT143}};
#define _OMC_LIT144 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT144)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT145,3,6) {&Tpl_StringToken_ST__STRING__LIST__desc,_OMC_LIT144,MMC_IMMEDIATE(MMC_TAGFIXNUM(1))}};
#define _OMC_LIT145 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT145)
#define _OMC_LIT146_data "\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT146,1,_OMC_LIT146_data);
#define _OMC_LIT146 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT146)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT147,2,1) {_OMC_LIT146,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT147 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT147)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT148,2,1) {_OMC_LIT123,_OMC_LIT147}};
#define _OMC_LIT148 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT148)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT149,2,1) {_OMC_LIT111,_OMC_LIT148}};
#define _OMC_LIT149 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT149)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT150,2,1) {_OMC_LIT121,_OMC_LIT149}};
#define _OMC_LIT150 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT150)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT151,3,6) {&Tpl_StringToken_ST__STRING__LIST__desc,_OMC_LIT150,MMC_IMMEDIATE(MMC_TAGFIXNUM(1))}};
#define _OMC_LIT151 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT151)
#define _OMC_LIT152_data ""
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT152,0,_OMC_LIT152_data);
#define _OMC_LIT152 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT152)
#define _OMC_LIT153_data "#ifndef "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT153,8,_OMC_LIT153_data);
#define _OMC_LIT153 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT153)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT154,2,1) {_OMC_LIT153,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT154 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT154)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT155,2,1) {_OMC_LIT124,_OMC_LIT154}};
#define _OMC_LIT155 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT155)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT156,3,6) {&Tpl_StringToken_ST__STRING__LIST__desc,_OMC_LIT155,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))}};
#define _OMC_LIT156 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT156)
#define _OMC_LIT157_data "__desc_added\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT157,13,_OMC_LIT157_data);
#define _OMC_LIT157 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT157)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT158,2,1) {_OMC_LIT54,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT158 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT158)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT159,2,1) {_OMC_LIT157,_OMC_LIT158}};
#define _OMC_LIT159 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT159)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT160,3,6) {&Tpl_StringToken_ST__STRING__LIST__desc,_OMC_LIT159,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))}};
#define _OMC_LIT160 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT160)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT161,2,5) {&Tpl_StringToken_ST__LINE__desc,_OMC_LIT157}};
#define _OMC_LIT161 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT161)
#define _OMC_LIT162_data "ADD_METARECORD_DEFINITIONS struct record_description "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT162,53,_OMC_LIT162_data);
#define _OMC_LIT162 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT162)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT163,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT162}};
#define _OMC_LIT163 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT163)
#define _OMC_LIT164_data "__desc = {\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT164,11,_OMC_LIT164_data);
#define _OMC_LIT164 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT164)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT165,2,5) {&Tpl_StringToken_ST__LINE__desc,_OMC_LIT164}};
#define _OMC_LIT165 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT165)
#define _OMC_LIT166_data "\""
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT166,1,_OMC_LIT166_data);
#define _OMC_LIT166 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT166)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT167,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT166}};
#define _OMC_LIT167 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT167)
#define _OMC_LIT168_data "\",\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT168,3,_OMC_LIT168_data);
#define _OMC_LIT168 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT168)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT169,2,1) {_OMC_LIT166,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT169 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT169)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT170,2,1) {_OMC_LIT168,_OMC_LIT169}};
#define _OMC_LIT170 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT170)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT171,3,6) {&Tpl_StringToken_ST__STRING__LIST__desc,_OMC_LIT170,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))}};
#define _OMC_LIT171 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT171)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT172,2,5) {&Tpl_StringToken_ST__LINE__desc,_OMC_LIT168}};
#define _OMC_LIT172 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT172)
#define _OMC_LIT173_data "__desc__fields\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT173,15,_OMC_LIT173_data);
#define _OMC_LIT173 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT173)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT174,2,5) {&Tpl_StringToken_ST__LINE__desc,_OMC_LIT173}};
#define _OMC_LIT174 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT174)
#define _OMC_LIT175_data "#else /* Only use the file as a header */\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT175,42,_OMC_LIT175_data);
#define _OMC_LIT175 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT175)
#define _OMC_LIT176_data "extern struct record_description "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT176,33,_OMC_LIT176_data);
#define _OMC_LIT176 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT176)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT177,2,1) {_OMC_LIT176,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT177 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT177)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT178,2,1) {_OMC_LIT175,_OMC_LIT177}};
#define _OMC_LIT178 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT178)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT179,2,1) {_OMC_LIT123,_OMC_LIT178}};
#define _OMC_LIT179 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT179)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT180,2,1) {_OMC_LIT77,_OMC_LIT179}};
#define _OMC_LIT180 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT180)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT181,3,6) {&Tpl_StringToken_ST__STRING__LIST__desc,_OMC_LIT180,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))}};
#define _OMC_LIT181 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT181)
#define _OMC_LIT182_data "__desc;\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT182,8,_OMC_LIT182_data);
#define _OMC_LIT182 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT182)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT183,2,1) {_OMC_LIT123,_OMC_LIT158}};
#define _OMC_LIT183 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT183)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT184,2,1) {_OMC_LIT182,_OMC_LIT183}};
#define _OMC_LIT184 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT184)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT185,3,6) {&Tpl_StringToken_ST__STRING__LIST__desc,_OMC_LIT184,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))}};
#define _OMC_LIT185 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT185)
#define _OMC_LIT186_data "_3dBOX"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT186,6,_OMC_LIT186_data);
#define _OMC_LIT186 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT186)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT187,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT186}};
#define _OMC_LIT187 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT187)
#define _OMC_LIT188_data " "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT188,1,_OMC_LIT188_data);
#define _OMC_LIT188 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT188)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT189,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT188}};
#define _OMC_LIT189 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT189)
#define _OMC_LIT190_data "static const MMC_DEFSTRUCTLIT("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT190,30,_OMC_LIT190_data);
#define _OMC_LIT190 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT190)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT191,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT190}};
#define _OMC_LIT191 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT191)
#define _OMC_LIT192_data "__struct,1,"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT192,11,_OMC_LIT192_data);
#define _OMC_LIT192 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT192)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT193,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT192}};
#define _OMC_LIT193 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT193)
#define _OMC_LIT194_data ") {&"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT194,4,_OMC_LIT194_data);
#define _OMC_LIT194 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT194)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT195,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT194}};
#define _OMC_LIT195 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT195)
#define _OMC_LIT196_data "__desc}};\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT196,10,_OMC_LIT196_data);
#define _OMC_LIT196 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT196)
#define _OMC_LIT197_data "static void *"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT197,13,_OMC_LIT197_data);
#define _OMC_LIT197 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT197)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT198,2,1) {_OMC_LIT197,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT198 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT198)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT199,2,1) {_OMC_LIT196,_OMC_LIT198}};
#define _OMC_LIT199 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT199)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT200,3,6) {&Tpl_StringToken_ST__STRING__LIST__desc,_OMC_LIT199,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))}};
#define _OMC_LIT200 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT200)
#define _OMC_LIT201_data " = MMC_REFSTRUCTLIT("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT201,20,_OMC_LIT201_data);
#define _OMC_LIT201 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT201)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT202,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT201}};
#define _OMC_LIT202 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT202)
#define _OMC_LIT203_data "__struct);"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT203,10,_OMC_LIT203_data);
#define _OMC_LIT203 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT203)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT204,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT203}};
#define _OMC_LIT204 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT204)
#define _OMC_LIT205_data ") (mmc_mk_box"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT205,13,_OMC_LIT205_data);
#define _OMC_LIT205 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT205)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT206,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT205}};
#define _OMC_LIT206 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT206)
#define _OMC_LIT207_data ",&"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT207,2,_OMC_LIT207_data);
#define _OMC_LIT207 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT207)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT208,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT207}};
#define _OMC_LIT208 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT208)
#define _OMC_LIT209_data "__desc,"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT209,7,_OMC_LIT209_data);
#define _OMC_LIT209 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT209)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT210,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT209}};
#define _OMC_LIT210 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT210)
#define _OMC_LIT211_data "))"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT211,2,_OMC_LIT211_data);
#define _OMC_LIT211 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT211)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT212,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT211}};
#define _OMC_LIT212 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT212)
#define _OMC_LIT213_data "ADD_METARECORD_DEFINITIONS const char* "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT213,39,_OMC_LIT213_data);
#define _OMC_LIT213 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT213)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT214,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT213}};
#define _OMC_LIT214 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT214)
#define _OMC_LIT215_data "__desc__fields[1] = {\"no fields\"};"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT215,34,_OMC_LIT215_data);
#define _OMC_LIT215 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT215)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT216,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT215}};
#define _OMC_LIT216 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT216)
#define _OMC_LIT217_data "__desc__fields["
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT217,15,_OMC_LIT217_data);
#define _OMC_LIT217 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT217)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT218,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT217}};
#define _OMC_LIT218 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT218)
#define _OMC_LIT219_data "};"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT219,2,_OMC_LIT219_data);
#define _OMC_LIT219 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT219)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT220,2,4) {&Tpl_StringToken_ST__STRING__desc,_OMC_LIT219}};
#define _OMC_LIT220 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT220)
#define _OMC_LIT221_data "0"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT221,1,_OMC_LIT221_data);
#define _OMC_LIT221 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT221)
#define _OMC_LIT222_data "/* Automatically generated header for bootstrapping MetaModelica */\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT222,68,_OMC_LIT222_data);
#define _OMC_LIT222 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT222)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT223,2,1) {_OMC_LIT122,_OMC_LIT141}};
#define _OMC_LIT223 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT223)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT224,2,1) {_OMC_LIT121,_OMC_LIT223}};
#define _OMC_LIT224 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT224)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT225,2,1) {_OMC_LIT222,_OMC_LIT224}};
#define _OMC_LIT225 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT225)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT226,3,6) {&Tpl_StringToken_ST__STRING__LIST__desc,_OMC_LIT225,MMC_IMMEDIATE(MMC_TAGFIXNUM(1))}};
#define _OMC_LIT226 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT226)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT227,1,1) {_OMC_LIT7}};
#define _OMC_LIT227 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT227)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT228,9,3) {&Tpl_IterOptions_ITER__OPTIONS__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),MMC_REFSTRUCTLIT(mmc_none),_OMC_LIT227,MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),_OMC_LIT7,MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),_OMC_LIT7}};
#define _OMC_LIT228 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT228)
#define _OMC_LIT229_data "$"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT229,1,_OMC_LIT229_data);
#define _OMC_LIT229 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT229)
#define _OMC_LIT230_data "#endif"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT230,6,_OMC_LIT230_data);
#define _OMC_LIT230 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT230)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT231,2,1) {_OMC_LIT230,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT231 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT231)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT232,2,1) {_OMC_LIT182,_OMC_LIT231}};
#define _OMC_LIT232 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT232)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT233,3,6) {&Tpl_StringToken_ST__STRING__LIST__desc,_OMC_LIT232,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))}};
#define _OMC_LIT233 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT233)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT234,2,1) {_OMC_LIT118,_OMC_LIT224}};
#define _OMC_LIT234 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT234)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT235,3,6) {&Tpl_StringToken_ST__STRING__LIST__desc,_OMC_LIT234,MMC_IMMEDIATE(MMC_TAGFIXNUM(1))}};
#define _OMC_LIT235 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT235)
#include "util/modelica.h"
#include "Unparsing_includes.h"
#if !defined(PROTECTED_FUNCTION_STATIC)
#define PROTECTED_FUNCTION_STATIC
#endif
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_fun__65(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_a_elt, modelica_metatype _in_a_buf1, modelica_metatype _in_a_buf2, modelica_string _in_a_pack, modelica_metatype *out_out_a_buf1, modelica_metatype *out_out_a_buf2);
static const MMC_DEFSTRUCTLIT(boxvar_lit_Unparsing_fun__65,2,0) {(void*) boxptr_Unparsing_fun__65,0}};
#define boxvar_Unparsing_fun__65 MMC_REFSTRUCTLIT(boxvar_lit_Unparsing_fun__65)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_fun__64(threadData_t *threadData, modelica_metatype _in_txt, modelica_integer _in_mArg, modelica_metatype _in_a_fields1, modelica_metatype _in_a_fields2, modelica_metatype _in_a_p_elementLst, modelica_metatype _in_a_fieldsWithType, modelica_metatype _in_a_omcname, modelica_metatype _in_a_fullname);
PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Unparsing_fun__64(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_mArg, modelica_metatype _in_a_fields1, modelica_metatype _in_a_fields2, modelica_metatype _in_a_p_elementLst, modelica_metatype _in_a_fieldsWithType, modelica_metatype _in_a_omcname, modelica_metatype _in_a_fullname);
static const MMC_DEFSTRUCTLIT(boxvar_lit_Unparsing_fun__64,2,0) {(void*) boxptr_Unparsing_fun__64,0}};
#define boxvar_Unparsing_fun__64 MMC_REFSTRUCTLIT(boxvar_lit_Unparsing_fun__64)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_lm__63(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items);
static const MMC_DEFSTRUCTLIT(boxvar_lit_Unparsing_lm__63,2,0) {(void*) boxptr_Unparsing_lm__63,0}};
#define boxvar_Unparsing_lm__63 MMC_REFSTRUCTLIT(boxvar_lit_Unparsing_lm__63)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_lm__62(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items);
static const MMC_DEFSTRUCTLIT(boxvar_lit_Unparsing_lm__62,2,0) {(void*) boxptr_Unparsing_lm__62,0}};
#define boxvar_Unparsing_lm__62 MMC_REFSTRUCTLIT(boxvar_lit_Unparsing_lm__62)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_lm__61(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items);
static const MMC_DEFSTRUCTLIT(boxvar_lit_Unparsing_lm__61,2,0) {(void*) boxptr_Unparsing_lm__61,0}};
#define boxvar_Unparsing_lm__61 MMC_REFSTRUCTLIT(boxvar_lit_Unparsing_lm__61)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_fun__59(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_a_cl, modelica_metatype _in_a_buf1, modelica_metatype _in_a_buf2, modelica_metatype *out_out_a_buf1, modelica_metatype *out_out_a_buf2);
static const MMC_DEFSTRUCTLIT(boxvar_lit_Unparsing_fun__59,2,0) {(void*) boxptr_Unparsing_fun__59,0}};
#define boxvar_Unparsing_fun__59 MMC_REFSTRUCTLIT(boxvar_lit_Unparsing_fun__59)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_lm__58(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items, modelica_string _in_a_c_name, modelica_metatype _in_a_buf2, modelica_metatype _in_a_buf1, modelica_metatype *out_out_a_buf2, modelica_metatype *out_out_a_buf1);
static const MMC_DEFSTRUCTLIT(boxvar_lit_Unparsing_lm__58,2,0) {(void*) boxptr_Unparsing_lm__58,0}};
#define boxvar_Unparsing_lm__58 MMC_REFSTRUCTLIT(boxvar_lit_Unparsing_lm__58)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_fun__56(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_a_cl, modelica_metatype _in_a_buf1, modelica_metatype _in_a_buf2, modelica_string _in_a_pack, modelica_metatype *out_out_a_buf1, modelica_metatype *out_out_a_buf2);
static const MMC_DEFSTRUCTLIT(boxvar_lit_Unparsing_fun__56,2,0) {(void*) boxptr_Unparsing_fun__56,0}};
#define boxvar_Unparsing_fun__56 MMC_REFSTRUCTLIT(boxvar_lit_Unparsing_fun__56)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_lm__54(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items, modelica_metatype _in_a_buf2, modelica_metatype _in_a_buf1, modelica_metatype *out_out_a_buf2, modelica_metatype *out_out_a_buf1);
static const MMC_DEFSTRUCTLIT(boxvar_lit_Unparsing_lm__54,2,0) {(void*) boxptr_Unparsing_lm__54,0}};
#define boxvar_Unparsing_lm__54 MMC_REFSTRUCTLIT(boxvar_lit_Unparsing_lm__54)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_fun__52(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_a_p_elementLst, modelica_metatype _in_a_fields, modelica_metatype _in_a_omcname, modelica_metatype _in_a_ctor, modelica_metatype _in_a_fullname);
static const MMC_DEFSTRUCTLIT(boxvar_lit_Unparsing_fun__52,2,0) {(void*) boxptr_Unparsing_fun__52,0}};
#define boxvar_Unparsing_fun__52 MMC_REFSTRUCTLIT(boxvar_lit_Unparsing_fun__52)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_fun__51(threadData_t *threadData, modelica_metatype _in_txt, modelica_string _in_mArg, modelica_metatype _in_a_fieldsStr, modelica_metatype _in_a_nElts, modelica_metatype _in_a_omcname);
static const MMC_DEFSTRUCTLIT(boxvar_lit_Unparsing_fun__51,2,0) {(void*) boxptr_Unparsing_fun__51,0}};
#define boxvar_Unparsing_fun__51 MMC_REFSTRUCTLIT(boxvar_lit_Unparsing_fun__51)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_lm__50(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items);
static const MMC_DEFSTRUCTLIT(boxvar_lit_Unparsing_lm__50,2,0) {(void*) boxptr_Unparsing_lm__50,0}};
#define boxvar_Unparsing_lm__50 MMC_REFSTRUCTLIT(boxvar_lit_Unparsing_lm__50)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_lm__49(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items);
static const MMC_DEFSTRUCTLIT(boxvar_lit_Unparsing_lm__49,2,0) {(void*) boxptr_Unparsing_lm__49,0}};
#define boxvar_Unparsing_lm__49 MMC_REFSTRUCTLIT(boxvar_lit_Unparsing_lm__49)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_fun__45(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_a_cl);
static const MMC_DEFSTRUCTLIT(boxvar_lit_Unparsing_fun__45,2,0) {(void*) boxptr_Unparsing_fun__45,0}};
#define boxvar_Unparsing_fun__45 MMC_REFSTRUCTLIT(boxvar_lit_Unparsing_fun__45)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_lm__44(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items, modelica_string _in_a_c_name);
static const MMC_DEFSTRUCTLIT(boxvar_lit_Unparsing_lm__44,2,0) {(void*) boxptr_Unparsing_lm__44,0}};
#define boxvar_Unparsing_lm__44 MMC_REFSTRUCTLIT(boxvar_lit_Unparsing_lm__44)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_lm__42(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items);
static const MMC_DEFSTRUCTLIT(boxvar_lit_Unparsing_lm__42,2,0) {(void*) boxptr_Unparsing_lm__42,0}};
#define boxvar_Unparsing_lm__42 MMC_REFSTRUCTLIT(boxvar_lit_Unparsing_lm__42)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_fun__41(threadData_t *threadData, modelica_metatype _in_txt, modelica_string _in_mArg, modelica_metatype _in_a_fieldsStr, modelica_metatype _in_a_nElts, modelica_metatype _in_a_omcname);
static const MMC_DEFSTRUCTLIT(boxvar_lit_Unparsing_fun__41,2,0) {(void*) boxptr_Unparsing_fun__41,0}};
#define boxvar_Unparsing_fun__41 MMC_REFSTRUCTLIT(boxvar_lit_Unparsing_fun__41)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_lm__40(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items);
static const MMC_DEFSTRUCTLIT(boxvar_lit_Unparsing_lm__40,2,0) {(void*) boxptr_Unparsing_lm__40,0}};
#define boxvar_Unparsing_lm__40 MMC_REFSTRUCTLIT(boxvar_lit_Unparsing_lm__40)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_lm__38(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items);
static const MMC_DEFSTRUCTLIT(boxvar_lit_Unparsing_lm__38,2,0) {(void*) boxptr_Unparsing_lm__38,0}};
#define boxvar_Unparsing_lm__38 MMC_REFSTRUCTLIT(boxvar_lit_Unparsing_lm__38)
DLLExport
modelica_metatype omc_Unparsing_elementExternalHeaderJulia(threadData_t *threadData, modelica_metatype _txt, modelica_metatype _a_buf1, modelica_metatype _a_buf2, modelica_metatype _a_elt, modelica_string _a_pack, modelica_metatype *out_out_a_buf1, modelica_metatype *out_out_a_buf2)
{
modelica_metatype _out_txt = NULL;
modelica_metatype _out_a_buf1 = NULL;
modelica_metatype _out_a_buf2 = NULL;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
_out_txt = omc_Unparsing_fun__65(threadData, _txt, _a_elt, _a_buf1, _a_buf2, _a_pack ,&_out_a_buf1 ,&_out_a_buf2);
_return: OMC_LABEL_UNUSED
if (out_out_a_buf1) { *out_out_a_buf1 = _out_a_buf1; }
if (out_out_a_buf2) { *out_out_a_buf2 = _out_a_buf2; }
return _out_txt;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_fun__65(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_a_elt, modelica_metatype _in_a_buf1, modelica_metatype _in_a_buf2, modelica_string _in_a_pack, modelica_metatype *out_out_a_buf1, modelica_metatype *out_out_a_buf2)
{
modelica_metatype _out_txt = NULL;
modelica_metatype _out_a_buf1 = NULL;
modelica_metatype _out_a_buf2 = NULL;
modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;modelica_metatype tmp4_2;modelica_metatype tmp4_3;modelica_metatype tmp4_4;modelica_string tmp4_5;
tmp4_1 = _in_txt;
tmp4_2 = _in_a_elt;
tmp4_3 = _in_a_buf1;
tmp4_4 = _in_a_buf2;
tmp4_5 = _in_a_pack;
{
modelica_metatype _txt = NULL;
modelica_metatype _a_buf1 = NULL;
modelica_metatype _a_buf2 = NULL;
modelica_string _a_pack = NULL;
modelica_metatype _i_elt = NULL;
modelica_metatype _i_r_name = NULL;
modelica_metatype _i_p_elementLst = NULL;
modelica_string _i_c_name = NULL;
modelica_integer _ret_8;
modelica_string _ret_7 = NULL;
modelica_metatype _l_fullname = NULL;
modelica_string _ret_5 = NULL;
modelica_metatype _l_funcName = NULL;
modelica_metatype _l_fieldsWithType = NULL;
modelica_metatype _l_fields2 = NULL;
modelica_metatype _l_fields1 = NULL;
modelica_metatype _l_omcname = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 4; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
modelica_metatype tmpMeta6;
modelica_metatype tmpMeta7;
modelica_metatype tmpMeta8;
if (mmc__uniontype__metarecord__typedef__equal(tmp4_2,2,8) == 0) goto tmp3_end;
tmpMeta6 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 2));
tmpMeta7 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 6));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta7,18,1) == 0) goto tmp3_end;
tmpMeta8 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 7));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta8,0,8) == 0) goto tmp3_end;
_i_c_name = tmpMeta6;
_txt = tmp4_1;
_a_buf1 = tmp4_3;
_a_buf2 = tmp4_4;
_a_pack = tmp4_5;
_l_omcname = omc_Tpl_writeStr(threadData, _OMC_LIT0, _a_pack);
_l_omcname = omc_Tpl_writeTok(threadData, _l_omcname, _OMC_LIT2);
_l_omcname = omc_Tpl_writeStr(threadData, _l_omcname, _i_c_name);
_a_buf1 = omc_Tpl_writeTok(threadData, _a_buf1, _OMC_LIT4);
_a_buf1 = omc_Tpl_writeText(threadData, _a_buf1, _l_omcname);
_a_buf1 = omc_Tpl_writeTok(threadData, _a_buf1, _OMC_LIT6);
_a_buf1 = omc_Tpl_writeTok(threadData, _a_buf1, _OMC_LIT7);
_a_buf2 = omc_Tpl_writeTok(threadData, _a_buf2, _OMC_LIT9);
_a_buf2 = omc_Tpl_writeText(threadData, _a_buf2, _l_omcname);
_a_buf2 = omc_Tpl_writeTok(threadData, _a_buf2, _OMC_LIT11);
_a_buf2 = omc_Tpl_writeStr(threadData, _a_buf2, _a_pack);
_a_buf2 = omc_Tpl_writeTok(threadData, _a_buf2, _OMC_LIT13);
_a_buf2 = omc_Tpl_writeStr(threadData, _a_buf2, _i_c_name);
_a_buf2 = omc_Tpl_writeTok(threadData, _a_buf2, _OMC_LIT15);
_a_buf2 = omc_Tpl_writeTok(threadData, _a_buf2, _OMC_LIT7);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT17);
_txt = omc_Tpl_writeText(threadData, _txt, _l_omcname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT19);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT7);
tmpMeta[0+0] = _txt;
tmpMeta[0+1] = _a_buf1;
tmpMeta[0+2] = _a_buf2;
goto tmp3_done;
}
case 1: {
modelica_metatype tmpMeta9;
modelica_metatype tmpMeta10;
modelica_metatype tmpMeta11;
modelica_metatype tmpMeta12;
modelica_integer tmp13;
modelica_metatype tmpMeta14;
modelica_metatype tmpMeta15;
if (mmc__uniontype__metarecord__typedef__equal(tmp4_2,2,8) == 0) goto tmp3_end;
tmpMeta9 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 2));
tmpMeta10 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 6));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta10,17,5) == 0) goto tmp3_end;
tmpMeta11 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta10), 2));
tmpMeta12 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta10), 5));
tmp13 = mmc_unbox_integer(tmpMeta12);
if (1 != tmp13) goto tmp3_end;
tmpMeta14 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 7));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta14,0,8) == 0) goto tmp3_end;
tmpMeta15 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta14), 2));
_i_c_name = tmpMeta9;
_i_r_name = tmpMeta11;
_i_p_elementLst = tmpMeta15;
_txt = tmp4_1;
_a_buf1 = tmp4_3;
_a_buf2 = tmp4_4;
_a_pack = tmp4_5;
_l_fields1 = omc_Tpl_pushIter(threadData, _OMC_LIT0, _OMC_LIT23);
_l_fields1 = omc_Unparsing_lm__61(threadData, _l_fields1, _i_p_elementLst);
_l_fields1 = omc_Tpl_popIter(threadData, _l_fields1);
_l_fields2 = omc_Unparsing_lm__62(threadData, _OMC_LIT0, _i_p_elementLst);
_l_fieldsWithType = omc_Tpl_pushIter(threadData, _OMC_LIT0, _OMC_LIT23);
_l_fieldsWithType = omc_Unparsing_lm__63(threadData, _l_fieldsWithType, _i_p_elementLst);
_l_fieldsWithType = omc_Tpl_popIter(threadData, _l_fieldsWithType);
_l_funcName = omc_Tpl_writeStr(threadData, _OMC_LIT0, _a_pack);
_l_funcName = omc_Tpl_writeTok(threadData, _l_funcName, _OMC_LIT25);
_l_funcName = omc_Unparsing_pathString(threadData, _l_funcName, _i_r_name);
_l_omcname = omc_Tpl_writeStr(threadData, _OMC_LIT0, _a_pack);
_l_omcname = omc_Tpl_writeTok(threadData, _l_omcname, _OMC_LIT2);
_l_omcname = omc_Unparsing_pathString(threadData, _l_omcname, _i_r_name);
_l_omcname = omc_Tpl_writeTok(threadData, _l_omcname, _OMC_LIT2);
_ret_5 = omc_System_stringReplace(threadData, _i_c_name, _OMC_LIT1, _OMC_LIT26);
_l_omcname = omc_Tpl_writeStr(threadData, _l_omcname, _ret_5);
_l_fullname = omc_Tpl_writeStr(threadData, _OMC_LIT0, _a_pack);
_l_fullname = omc_Tpl_writeTok(threadData, _l_fullname, _OMC_LIT27);
_ret_7 = omc_System_stringReplace(threadData, _i_c_name, _OMC_LIT1, _OMC_LIT28);
_l_fullname = omc_Tpl_writeStr(threadData, _l_fullname, _ret_7);
_a_buf1 = omc_Tpl_writeTok(threadData, _a_buf1, _OMC_LIT30);
_a_buf1 = omc_Tpl_writeText(threadData, _a_buf1, _l_omcname);
_a_buf1 = omc_Tpl_writeTok(threadData, _a_buf1, _OMC_LIT33);
_a_buf1 = omc_Tpl_writeText(threadData, _a_buf1, _l_omcname);
_a_buf1 = omc_Tpl_writeTok(threadData, _a_buf1, _OMC_LIT35);
_a_buf1 = omc_Tpl_writeTok(threadData, _a_buf1, _OMC_LIT7);
_a_buf2 = omc_Tpl_writeTok(threadData, _a_buf2, _OMC_LIT9);
_a_buf2 = omc_Tpl_writeText(threadData, _a_buf2, _l_omcname);
_a_buf2 = omc_Tpl_writeTok(threadData, _a_buf2, _OMC_LIT37);
_a_buf2 = omc_Tpl_writeStr(threadData, _a_buf2, _a_pack);
_a_buf2 = omc_Tpl_writeTok(threadData, _a_buf2, _OMC_LIT39);
_a_buf2 = omc_Tpl_writeStr(threadData, _a_buf2, _i_c_name);
_a_buf2 = omc_Tpl_writeTok(threadData, _a_buf2, _OMC_LIT43);
_a_buf2 = omc_Tpl_writeText(threadData, _a_buf2, _l_omcname);
_a_buf2 = omc_Tpl_writeTok(threadData, _a_buf2, _OMC_LIT45);
_a_buf2 = omc_Tpl_writeStr(threadData, _a_buf2, _a_pack);
_a_buf2 = omc_Tpl_writeTok(threadData, _a_buf2, _OMC_LIT13);
_a_buf2 = omc_Tpl_writeStr(threadData, _a_buf2, _i_c_name);
_a_buf2 = omc_Tpl_writeTok(threadData, _a_buf2, _OMC_LIT15);
_a_buf2 = omc_Tpl_writeTok(threadData, _a_buf2, _OMC_LIT7);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT47);
_txt = omc_Tpl_writeText(threadData, _txt, _l_omcname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT51);
_txt = omc_Tpl_writeText(threadData, _txt, _l_omcname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT53);
_ret_8 = listLength(_i_p_elementLst);
_txt = omc_Unparsing_fun__64(threadData, _txt, _ret_8, _l_fields1, _l_fields2, _i_p_elementLst, _l_fieldsWithType, _l_omcname, _l_fullname);
_txt = omc_Tpl_softNewLine(threadData, _txt);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT7);
tmpMeta[0+0] = _txt;
tmpMeta[0+1] = _a_buf1;
tmpMeta[0+2] = _a_buf2;
goto tmp3_done;
}
case 2: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_2,2,8) == 0) goto tmp3_end;
_i_elt = tmp4_2;
_txt = tmp4_1;
_a_buf1 = tmp4_3;
_a_buf2 = tmp4_4;
_a_pack = tmp4_5;
tmpMeta[0+0] = omc_Unparsing_classExternalHeaderJuliaWork(threadData, _txt, _a_buf1, _a_buf2, _i_elt, _a_pack, &tmpMeta[0+1], &tmpMeta[0+2]);
goto tmp3_done;
}
case 3: {
_txt = tmp4_1;
_a_buf1 = tmp4_3;
_a_buf2 = tmp4_4;
tmpMeta[0+0] = _txt;
tmpMeta[0+1] = _a_buf1;
tmpMeta[0+2] = _a_buf2;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_out_txt = tmpMeta[0+0];
_out_a_buf1 = tmpMeta[0+1];
_out_a_buf2 = tmpMeta[0+2];
_return: OMC_LABEL_UNUSED
if (out_out_a_buf1) { *out_out_a_buf1 = _out_a_buf1; }
if (out_out_a_buf2) { *out_out_a_buf2 = _out_a_buf2; }
return _out_txt;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_fun__64(threadData_t *threadData, modelica_metatype _in_txt, modelica_integer _in_mArg, modelica_metatype _in_a_fields1, modelica_metatype _in_a_fields2, modelica_metatype _in_a_p_elementLst, modelica_metatype _in_a_fieldsWithType, modelica_metatype _in_a_omcname, modelica_metatype _in_a_fullname)
{
modelica_metatype _out_txt = NULL;
modelica_metatype tmpMeta1;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;modelica_integer tmp4_2;modelica_metatype tmp4_3;modelica_metatype tmp4_4;modelica_metatype tmp4_5;modelica_metatype tmp4_6;modelica_metatype tmp4_7;modelica_metatype tmp4_8;
tmp4_1 = _in_txt;
tmp4_2 = _in_mArg;
tmp4_3 = _in_a_fields1;
tmp4_4 = _in_a_fields2;
tmp4_5 = _in_a_p_elementLst;
tmp4_6 = _in_a_fieldsWithType;
tmp4_7 = _in_a_omcname;
tmp4_8 = _in_a_fullname;
{
modelica_metatype _txt = NULL;
modelica_metatype _a_fields1 = NULL;
modelica_metatype _a_fields2 = NULL;
modelica_metatype _a_p_elementLst = NULL;
modelica_metatype _a_fieldsWithType = NULL;
modelica_metatype _a_omcname = NULL;
modelica_metatype _a_fullname = NULL;
modelica_integer _ret_4;
modelica_integer _ret_3;
modelica_integer _ret_2;
modelica_integer _ret_1;
modelica_integer _ret_0;
int tmp4;
{
switch (MMC_SWITCH_CAST(tmp4_2)) {
case 0: {
if (0 != tmp4_2) goto tmp3_end;
_txt = tmp4_1;
_a_omcname = tmp4_7;
_a_fullname = tmp4_8;
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT55);
_txt = omc_Tpl_writeText(threadData, _txt, _a_fullname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT57);
_txt = omc_Tpl_writeText(threadData, _txt, _a_omcname);
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT59);
goto tmp3_done;
}
case 1: {
if (1 != tmp4_2) goto tmp3_end;
_txt = tmp4_1;
_a_fields2 = tmp4_4;
_a_p_elementLst = tmp4_5;
_a_fieldsWithType = tmp4_6;
_a_omcname = tmp4_7;
_a_fullname = tmp4_8;
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT61);
_txt = omc_Tpl_writeText(threadData, _txt, _a_fullname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT63);
_txt = omc_Tpl_writeText(threadData, _txt, _a_fieldsWithType);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT65);
_txt = omc_Tpl_pushBlock(threadData, _txt, _OMC_LIT66);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT68);
_ret_0 = listLength(_a_p_elementLst);
_txt = omc_Tpl_writeStr(threadData, _txt, intString(_ret_0));
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT63);
_txt = omc_Tpl_writeText(threadData, _txt, _a_omcname);
_txt = omc_Tpl_writeText(threadData, _txt, _a_fields2);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT70);
_txt = omc_Tpl_popBlock(threadData, _txt);
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT72);
goto tmp3_done;
}
case 2: {
if (2 != tmp4_2) goto tmp3_end;
_txt = tmp4_1;
_a_fields2 = tmp4_4;
_a_p_elementLst = tmp4_5;
_a_fieldsWithType = tmp4_6;
_a_omcname = tmp4_7;
_a_fullname = tmp4_8;
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT61);
_txt = omc_Tpl_writeText(threadData, _txt, _a_fullname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT63);
_txt = omc_Tpl_writeText(threadData, _txt, _a_fieldsWithType);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT65);
_txt = omc_Tpl_pushBlock(threadData, _txt, _OMC_LIT66);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT68);
_ret_1 = listLength(_a_p_elementLst);
_txt = omc_Tpl_writeStr(threadData, _txt, intString(_ret_1));
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT63);
_txt = omc_Tpl_writeText(threadData, _txt, _a_omcname);
_txt = omc_Tpl_writeText(threadData, _txt, _a_fields2);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT70);
_txt = omc_Tpl_popBlock(threadData, _txt);
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT72);
goto tmp3_done;
}
case 3: {
if (3 != tmp4_2) goto tmp3_end;
_txt = tmp4_1;
_a_fields2 = tmp4_4;
_a_p_elementLst = tmp4_5;
_a_fieldsWithType = tmp4_6;
_a_omcname = tmp4_7;
_a_fullname = tmp4_8;
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT61);
_txt = omc_Tpl_writeText(threadData, _txt, _a_fullname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT63);
_txt = omc_Tpl_writeText(threadData, _txt, _a_fieldsWithType);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT65);
_txt = omc_Tpl_pushBlock(threadData, _txt, _OMC_LIT66);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT68);
_ret_2 = listLength(_a_p_elementLst);
_txt = omc_Tpl_writeStr(threadData, _txt, intString(_ret_2));
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT63);
_txt = omc_Tpl_writeText(threadData, _txt, _a_omcname);
_txt = omc_Tpl_writeText(threadData, _txt, _a_fields2);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT70);
_txt = omc_Tpl_popBlock(threadData, _txt);
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT72);
goto tmp3_done;
}
default:
tmp3_default: OMC_LABEL_UNUSED; {
_txt = tmp4_1;
_a_fields1 = tmp4_3;
_a_p_elementLst = tmp4_5;
_a_fieldsWithType = tmp4_6;
_a_omcname = tmp4_7;
_a_fullname = tmp4_8;
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT61);
_txt = omc_Tpl_writeText(threadData, _txt, _a_fullname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT63);
_txt = omc_Tpl_writeText(threadData, _txt, _a_fieldsWithType);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT65);
_txt = omc_Tpl_pushBlock(threadData, _txt, _OMC_LIT66);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT74);
_ret_3 = listLength(_a_p_elementLst);
_txt = omc_Tpl_writeStr(threadData, _txt, intString(_ret_3));
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT76);
_txt = omc_Tpl_writeText(threadData, _txt, _a_fields1);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT81);
_txt = omc_Tpl_writeText(threadData, _txt, _a_omcname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT83);
_ret_4 = listLength(_a_p_elementLst);
_txt = omc_Tpl_writeStr(threadData, _txt, intString(_ret_4));
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT70);
_txt = omc_Tpl_popBlock(threadData, _txt);
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT72);
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_out_txt = tmpMeta1;
_return: OMC_LABEL_UNUSED
return _out_txt;
}
PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_Unparsing_fun__64(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_mArg, modelica_metatype _in_a_fields1, modelica_metatype _in_a_fields2, modelica_metatype _in_a_p_elementLst, modelica_metatype _in_a_fieldsWithType, modelica_metatype _in_a_omcname, modelica_metatype _in_a_fullname)
{
modelica_integer tmp1;
modelica_metatype _out_txt = NULL;
tmp1 = mmc_unbox_integer(_in_mArg);
_out_txt = omc_Unparsing_fun__64(threadData, _in_txt, tmp1, _in_a_fields1, _in_a_fields2, _in_a_p_elementLst, _in_a_fieldsWithType, _in_a_omcname, _in_a_fullname);
return _out_txt;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_lm__63(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items)
{
modelica_metatype _out_txt = NULL;
modelica_metatype tmpMeta1;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;modelica_metatype tmp4_2;
tmp4_1 = _in_txt;
tmp4_2 = _in_items;
{
modelica_metatype _txt = NULL;
modelica_metatype _rest = NULL;
modelica_string _i_name = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 3; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (!listEmpty(tmp4_2)) goto tmp3_end;
_txt = tmp4_1;
tmpMeta1 = _txt;
goto tmp3_done;
}
case 1: {
modelica_metatype tmpMeta6;
modelica_metatype tmpMeta7;
modelica_metatype tmpMeta8;
if (listEmpty(tmp4_2)) goto tmp3_end;
tmpMeta6 = MMC_CAR(tmp4_2);
tmpMeta7 = MMC_CDR(tmp4_2);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta6,3,8) == 0) goto tmp3_end;
tmpMeta8 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta6), 2));
_i_name = tmpMeta8;
_rest = tmpMeta7;
_txt = tmp4_1;
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT4);
_txt = omc_Tpl_writeStr(threadData, _txt, _i_name);
_txt = omc_Tpl_nextIter(threadData, _txt);
_in_txt = _txt;
_in_items = _rest;
goto _tailrecursive;
goto tmp3_done;
}
case 2: {
modelica_metatype tmpMeta9;
modelica_metatype tmpMeta10;
if (listEmpty(tmp4_2)) goto tmp3_end;
tmpMeta9 = MMC_CAR(tmp4_2);
tmpMeta10 = MMC_CDR(tmp4_2);
_rest = tmpMeta10;
_txt = tmp4_1;
_in_txt = _txt;
_in_items = _rest;
goto _tailrecursive;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_out_txt = tmpMeta1;
_return: OMC_LABEL_UNUSED
return _out_txt;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_lm__62(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items)
{
modelica_metatype _out_txt = NULL;
modelica_metatype tmpMeta1;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;modelica_metatype tmp4_2;
tmp4_1 = _in_txt;
tmp4_2 = _in_items;
{
modelica_metatype _txt = NULL;
modelica_metatype _rest = NULL;
modelica_string _i_name = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 3; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (!listEmpty(tmp4_2)) goto tmp3_end;
_txt = tmp4_1;
tmpMeta1 = _txt;
goto tmp3_done;
}
case 1: {
modelica_metatype tmpMeta6;
modelica_metatype tmpMeta7;
modelica_metatype tmpMeta8;
if (listEmpty(tmp4_2)) goto tmp3_end;
tmpMeta6 = MMC_CAR(tmp4_2);
tmpMeta7 = MMC_CDR(tmp4_2);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta6,3,8) == 0) goto tmp3_end;
tmpMeta8 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta6), 2));
_i_name = tmpMeta8;
_rest = tmpMeta7;
_txt = tmp4_1;
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT85);
_txt = omc_Tpl_writeStr(threadData, _txt, _i_name);
_in_txt = _txt;
_in_items = _rest;
goto _tailrecursive;
goto tmp3_done;
}
case 2: {
modelica_metatype tmpMeta9;
modelica_metatype tmpMeta10;
if (listEmpty(tmp4_2)) goto tmp3_end;
tmpMeta9 = MMC_CAR(tmp4_2);
tmpMeta10 = MMC_CDR(tmp4_2);
_rest = tmpMeta10;
_txt = tmp4_1;
_in_txt = _txt;
_in_items = _rest;
goto _tailrecursive;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_out_txt = tmpMeta1;
_return: OMC_LABEL_UNUSED
return _out_txt;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_lm__61(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items)
{
modelica_metatype _out_txt = NULL;
modelica_metatype tmpMeta1;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;modelica_metatype tmp4_2;
tmp4_1 = _in_txt;
tmp4_2 = _in_items;
{
modelica_metatype _txt = NULL;
modelica_metatype _rest = NULL;
modelica_string _i_name = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 3; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (!listEmpty(tmp4_2)) goto tmp3_end;
_txt = tmp4_1;
tmpMeta1 = _txt;
goto tmp3_done;
}
case 1: {
modelica_metatype tmpMeta6;
modelica_metatype tmpMeta7;
modelica_metatype tmpMeta8;
if (listEmpty(tmp4_2)) goto tmp3_end;
tmpMeta6 = MMC_CAR(tmp4_2);
tmpMeta7 = MMC_CDR(tmp4_2);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta6,3,8) == 0) goto tmp3_end;
tmpMeta8 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta6), 2));
_i_name = tmpMeta8;
_rest = tmpMeta7;
_txt = tmp4_1;
_txt = omc_Tpl_writeStr(threadData, _txt, _i_name);
_txt = omc_Tpl_nextIter(threadData, _txt);
_in_txt = _txt;
_in_items = _rest;
goto _tailrecursive;
goto tmp3_done;
}
case 2: {
modelica_metatype tmpMeta9;
modelica_metatype tmpMeta10;
if (listEmpty(tmp4_2)) goto tmp3_end;
tmpMeta9 = MMC_CAR(tmp4_2);
tmpMeta10 = MMC_CDR(tmp4_2);
_rest = tmpMeta10;
_txt = tmp4_1;
_in_txt = _txt;
_in_items = _rest;
goto _tailrecursive;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_out_txt = tmpMeta1;
_return: OMC_LABEL_UNUSED
return _out_txt;
}
DLLExport
modelica_metatype omc_Unparsing_classExternalHeaderJuliaWork(threadData_t *threadData, modelica_metatype _txt, modelica_metatype _a_buf1, modelica_metatype _a_buf2, modelica_metatype _a_cl, modelica_string _a_pack, modelica_metatype *out_out_a_buf1, modelica_metatype *out_out_a_buf2)
{
modelica_metatype _out_txt = NULL;
modelica_metatype _out_a_buf1 = NULL;
modelica_metatype _out_a_buf2 = NULL;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
_out_txt = omc_Unparsing_fun__59(threadData, _txt, _a_cl, _a_buf1, _a_buf2 ,&_out_a_buf1 ,&_out_a_buf2);
_return: OMC_LABEL_UNUSED
if (out_out_a_buf1) { *out_out_a_buf1 = _out_a_buf1; }
if (out_out_a_buf2) { *out_out_a_buf2 = _out_a_buf2; }
return _out_txt;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_fun__59(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_a_cl, modelica_metatype _in_a_buf1, modelica_metatype _in_a_buf2, modelica_metatype *out_out_a_buf1, modelica_metatype *out_out_a_buf2)
{
modelica_metatype _out_txt = NULL;
modelica_metatype _out_a_buf1 = NULL;
modelica_metatype _out_a_buf2 = NULL;
modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;modelica_metatype tmp4_2;modelica_metatype tmp4_3;modelica_metatype tmp4_4;
tmp4_1 = _in_txt;
tmp4_2 = _in_a_cl;
tmp4_3 = _in_a_buf1;
tmp4_4 = _in_a_buf2;
{
modelica_metatype _txt = NULL;
modelica_metatype _a_buf1 = NULL;
modelica_metatype _a_buf2 = NULL;
modelica_string _i_c_name = NULL;
modelica_metatype _i_p_elementLst = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
modelica_metatype tmpMeta6;
modelica_metatype tmpMeta7;
modelica_metatype tmpMeta8;
if (mmc__uniontype__metarecord__typedef__equal(tmp4_2,2,8) == 0) goto tmp3_end;
tmpMeta6 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 2));
tmpMeta7 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 7));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta7,0,8) == 0) goto tmp3_end;
tmpMeta8 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta7), 2));
_i_c_name = tmpMeta6;
_i_p_elementLst = tmpMeta8;
_txt = tmp4_1;
_a_buf1 = tmp4_3;
_a_buf2 = tmp4_4;
_txt = omc_Unparsing_lm__58(threadData, _txt, _i_p_elementLst, _i_c_name, _a_buf2, _a_buf1 ,&_a_buf2 ,&_a_buf1);
tmpMeta[0+0] = _txt;
tmpMeta[0+1] = _a_buf1;
tmpMeta[0+2] = _a_buf2;
goto tmp3_done;
}
case 1: {
_txt = tmp4_1;
_a_buf1 = tmp4_3;
_a_buf2 = tmp4_4;
tmpMeta[0+0] = _txt;
tmpMeta[0+1] = _a_buf1;
tmpMeta[0+2] = _a_buf2;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_out_txt = tmpMeta[0+0];
_out_a_buf1 = tmpMeta[0+1];
_out_a_buf2 = tmpMeta[0+2];
_return: OMC_LABEL_UNUSED
if (out_out_a_buf1) { *out_out_a_buf1 = _out_a_buf1; }
if (out_out_a_buf2) { *out_out_a_buf2 = _out_a_buf2; }
return _out_txt;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_lm__58(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items, modelica_string _in_a_c_name, modelica_metatype _in_a_buf2, modelica_metatype _in_a_buf1, modelica_metatype *out_out_a_buf2, modelica_metatype *out_out_a_buf1)
{
modelica_metatype _out_txt = NULL;
modelica_metatype _out_a_buf2 = NULL;
modelica_metatype _out_a_buf1 = NULL;
modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;modelica_metatype tmp4_2;modelica_string tmp4_3;modelica_metatype tmp4_4;modelica_metatype tmp4_5;
tmp4_1 = _in_txt;
tmp4_2 = _in_items;
tmp4_3 = _in_a_c_name;
tmp4_4 = _in_a_buf2;
tmp4_5 = _in_a_buf1;
{
modelica_metatype _txt = NULL;
modelica_metatype _rest = NULL;
modelica_string _a_c_name = NULL;
modelica_metatype _a_buf2 = NULL;
modelica_metatype _a_buf1 = NULL;
modelica_metatype _i_elt = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (!listEmpty(tmp4_2)) goto tmp3_end;
_txt = tmp4_1;
_a_buf2 = tmp4_4;
_a_buf1 = tmp4_5;
tmpMeta[0+0] = _txt;
tmpMeta[0+1] = _a_buf2;
tmpMeta[0+2] = _a_buf1;
goto tmp3_done;
}
case 1: {
modelica_metatype tmpMeta6;
modelica_metatype tmpMeta7;
if (listEmpty(tmp4_2)) goto tmp3_end;
tmpMeta6 = MMC_CAR(tmp4_2);
tmpMeta7 = MMC_CDR(tmp4_2);
_i_elt = tmpMeta6;
_rest = tmpMeta7;
_txt = tmp4_1;
_a_c_name = tmp4_3;
_a_buf2 = tmp4_4;
_a_buf1 = tmp4_5;
_txt = omc_Unparsing_elementExternalHeaderJulia(threadData, _txt, _a_buf1, _a_buf2, _i_elt, _a_c_name ,&_a_buf1 ,&_a_buf2);
_in_txt = _txt;
_in_items = _rest;
_in_a_c_name = _a_c_name;
_in_a_buf2 = _a_buf2;
_in_a_buf1 = _a_buf1;
goto _tailrecursive;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_out_txt = tmpMeta[0+0];
_out_a_buf2 = tmpMeta[0+1];
_out_a_buf1 = tmpMeta[0+2];
_return: OMC_LABEL_UNUSED
if (out_out_a_buf2) { *out_out_a_buf2 = _out_a_buf2; }
if (out_out_a_buf1) { *out_out_a_buf1 = _out_a_buf1; }
return _out_txt;
}
DLLExport
modelica_metatype omc_Unparsing_classExternalHeaderJulia(threadData_t *threadData, modelica_metatype _txt, modelica_metatype _a_buf1, modelica_metatype _a_buf2, modelica_metatype _a_cl, modelica_string _a_pack, modelica_metatype *out_out_a_buf1, modelica_metatype *out_out_a_buf2)
{
modelica_metatype _out_txt = NULL;
modelica_metatype _out_a_buf1 = NULL;
modelica_metatype _out_a_buf2 = NULL;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
_out_txt = omc_Unparsing_fun__56(threadData, _txt, _a_cl, _a_buf1, _a_buf2, _a_pack ,&_out_a_buf1 ,&_out_a_buf2);
_return: OMC_LABEL_UNUSED
if (out_out_a_buf1) { *out_out_a_buf1 = _out_a_buf1; }
if (out_out_a_buf2) { *out_out_a_buf2 = _out_a_buf2; }
return _out_txt;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_fun__56(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_a_cl, modelica_metatype _in_a_buf1, modelica_metatype _in_a_buf2, modelica_string _in_a_pack, modelica_metatype *out_out_a_buf1, modelica_metatype *out_out_a_buf2)
{
modelica_metatype _out_txt = NULL;
modelica_metatype _out_a_buf1 = NULL;
modelica_metatype _out_a_buf2 = NULL;
modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;modelica_metatype tmp4_2;modelica_metatype tmp4_3;modelica_metatype tmp4_4;modelica_string tmp4_5;
tmp4_1 = _in_txt;
tmp4_2 = _in_a_cl;
tmp4_3 = _in_a_buf1;
tmp4_4 = _in_a_buf2;
tmp4_5 = _in_a_pack;
{
modelica_metatype _txt = NULL;
modelica_metatype _a_buf1 = NULL;
modelica_metatype _a_buf2 = NULL;
modelica_string _a_pack = NULL;
modelica_metatype _i_c = NULL;
modelica_string _i_c_name = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
modelica_metatype tmpMeta6;
if (mmc__uniontype__metarecord__typedef__equal(tmp4_2,2,8) == 0) goto tmp3_end;
tmpMeta6 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 2));
_i_c = tmp4_2;
_i_c_name = tmpMeta6;
_txt = tmp4_1;
_a_buf1 = tmp4_3;
_a_buf2 = tmp4_4;
_a_pack = tmp4_5;
_a_buf2 = omc_Tpl_writeTok(threadData, _a_buf2, _OMC_LIT87);
_a_buf2 = omc_Tpl_writeStr(threadData, _a_buf2, _i_c_name);
_a_buf2 = omc_Tpl_writeTok(threadData, _a_buf2, _OMC_LIT92);
_a_buf2 = omc_Tpl_writeStr(threadData, _a_buf2, _i_c_name);
_a_buf2 = omc_Tpl_writeTok(threadData, _a_buf2, _OMC_LIT94);
_a_buf2 = omc_Tpl_writeStr(threadData, _a_buf2, _i_c_name);
_a_buf2 = omc_Tpl_writeTok(threadData, _a_buf2, _OMC_LIT98);
_a_buf2 = omc_Tpl_writeStr(threadData, _a_buf2, _i_c_name);
_a_buf2 = omc_Tpl_writeTok(threadData, _a_buf2, _OMC_LIT103);
_a_buf2 = omc_Tpl_pushBlock(threadData, _a_buf2, _OMC_LIT66);
_a_buf2 = omc_Tpl_writeTok(threadData, _a_buf2, _OMC_LIT105);
_a_buf2 = omc_Tpl_writeStr(threadData, _a_buf2, _i_c_name);
_a_buf2 = omc_Tpl_writeTok(threadData, _a_buf2, _OMC_LIT110);
_a_buf2 = omc_Tpl_popBlock(threadData, _a_buf2);
_a_buf2 = omc_Tpl_writeTok(threadData, _a_buf2, _OMC_LIT115);
_a_buf2 = omc_Tpl_writeStr(threadData, _a_buf2, _i_c_name);
_a_buf2 = omc_Tpl_writeTok(threadData, _a_buf2, _OMC_LIT117);
_a_buf2 = omc_Tpl_writeTok(threadData, _a_buf2, _OMC_LIT7);
tmpMeta[0+0] = omc_Unparsing_classExternalHeaderJuliaWork(threadData, _txt, _a_buf1, _a_buf2, _i_c, _a_pack, &tmpMeta[0+1], &tmpMeta[0+2]);
goto tmp3_done;
}
case 1: {
_txt = tmp4_1;
_a_buf1 = tmp4_3;
_a_buf2 = tmp4_4;
tmpMeta[0+0] = _txt;
tmpMeta[0+1] = _a_buf1;
tmpMeta[0+2] = _a_buf2;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_out_txt = tmpMeta[0+0];
_out_a_buf1 = tmpMeta[0+1];
_out_a_buf2 = tmpMeta[0+2];
_return: OMC_LABEL_UNUSED
if (out_out_a_buf1) { *out_out_a_buf1 = _out_a_buf1; }
if (out_out_a_buf2) { *out_out_a_buf2 = _out_a_buf2; }
return _out_txt;
}
DLLExport
modelica_metatype omc_Unparsing_programExternalHeaderJulia(threadData_t *threadData, modelica_metatype _txt, modelica_metatype _a_program)
{
modelica_metatype _out_txt = NULL;
modelica_metatype _l_res = NULL;
modelica_metatype _l_buf2 = NULL;
modelica_metatype _l_buf1 = NULL;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
_l_buf1 = _OMC_LIT0;
_l_buf2 = _OMC_LIT0;
_l_res = omc_Unparsing_lm__54(threadData, _OMC_LIT0, _a_program, _l_buf2, _l_buf1 ,&_l_buf2 ,&_l_buf1);
_out_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT132);
_out_txt = omc_Tpl_writeText(threadData, _out_txt, _l_buf1);
_out_txt = omc_Tpl_softNewLine(threadData, _out_txt);
_out_txt = omc_Tpl_writeTok(threadData, _out_txt, _OMC_LIT138);
_out_txt = omc_Tpl_pushBlock(threadData, _out_txt, _OMC_LIT66);
_out_txt = omc_Tpl_writeText(threadData, _out_txt, _l_buf2);
_out_txt = omc_Tpl_softNewLine(threadData, _out_txt);
_out_txt = omc_Tpl_popBlock(threadData, _out_txt);
_out_txt = omc_Tpl_writeTok(threadData, _out_txt, _OMC_LIT145);
_out_txt = omc_Tpl_writeText(threadData, _out_txt, _l_res);
_out_txt = omc_Tpl_softNewLine(threadData, _out_txt);
_out_txt = omc_Tpl_writeTok(threadData, _out_txt, _OMC_LIT151);
_return: OMC_LABEL_UNUSED
return _out_txt;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_lm__54(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items, modelica_metatype _in_a_buf2, modelica_metatype _in_a_buf1, modelica_metatype *out_out_a_buf2, modelica_metatype *out_out_a_buf1)
{
modelica_metatype _out_txt = NULL;
modelica_metatype _out_a_buf2 = NULL;
modelica_metatype _out_a_buf1 = NULL;
modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;modelica_metatype tmp4_2;modelica_metatype tmp4_3;modelica_metatype tmp4_4;
tmp4_1 = _in_txt;
tmp4_2 = _in_items;
tmp4_3 = _in_a_buf2;
tmp4_4 = _in_a_buf1;
{
modelica_metatype _txt = NULL;
modelica_metatype _rest = NULL;
modelica_metatype _a_buf2 = NULL;
modelica_metatype _a_buf1 = NULL;
modelica_metatype _i_cl = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (!listEmpty(tmp4_2)) goto tmp3_end;
_txt = tmp4_1;
_a_buf2 = tmp4_3;
_a_buf1 = tmp4_4;
tmpMeta[0+0] = _txt;
tmpMeta[0+1] = _a_buf2;
tmpMeta[0+2] = _a_buf1;
goto tmp3_done;
}
case 1: {
modelica_metatype tmpMeta6;
modelica_metatype tmpMeta7;
if (listEmpty(tmp4_2)) goto tmp3_end;
tmpMeta6 = MMC_CAR(tmp4_2);
tmpMeta7 = MMC_CDR(tmp4_2);
_i_cl = tmpMeta6;
_rest = tmpMeta7;
_txt = tmp4_1;
_a_buf2 = tmp4_3;
_a_buf1 = tmp4_4;
_txt = omc_Unparsing_classExternalHeaderJulia(threadData, _txt, _a_buf1, _a_buf2, _i_cl, _OMC_LIT152 ,&_a_buf1 ,&_a_buf2);
_in_txt = _txt;
_in_items = _rest;
_in_a_buf2 = _a_buf2;
_in_a_buf1 = _a_buf1;
goto _tailrecursive;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_out_txt = tmpMeta[0+0];
_out_a_buf2 = tmpMeta[0+1];
_out_a_buf1 = tmpMeta[0+2];
_return: OMC_LABEL_UNUSED
if (out_out_a_buf2) { *out_out_a_buf2 = _out_a_buf2; }
if (out_out_a_buf1) { *out_out_a_buf1 = _out_a_buf1; }
return _out_txt;
}
DLLExport
modelica_metatype omc_Unparsing_elementExternalHeader(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_a_elt, modelica_string _in_a_pack)
{
modelica_metatype _out_txt = NULL;
modelica_metatype tmpMeta1;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;modelica_metatype tmp4_2;modelica_string tmp4_3;
tmp4_1 = _in_txt;
tmp4_2 = _in_a_elt;
tmp4_3 = _in_a_pack;
{
modelica_metatype _txt = NULL;
modelica_string _a_pack = NULL;
modelica_metatype _i_elt = NULL;
modelica_integer _i_r_index;
modelica_string _i_c_name = NULL;
modelica_metatype _i_r_name = NULL;
modelica_metatype _i_p_elementLst = NULL;
modelica_string _str_11 = NULL;
modelica_metatype _l_fieldsDescription = NULL;
modelica_integer _ret_9;
modelica_metatype _l_ctor = NULL;
modelica_string _ret_7 = NULL;
modelica_metatype _l_fullname = NULL;
modelica_integer _ret_5;
modelica_metatype _l_nElts = NULL;
modelica_string _ret_3 = NULL;
modelica_metatype _l_omcname = NULL;
modelica_metatype _l_fieldsStr = NULL;
modelica_metatype _l_fields = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 3; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
modelica_metatype tmpMeta6;
modelica_metatype tmpMeta7;
modelica_metatype tmpMeta8;
modelica_metatype tmpMeta9;
modelica_integer tmp10;
modelica_metatype tmpMeta11;
modelica_integer tmp12;
modelica_metatype tmpMeta13;
modelica_metatype tmpMeta14;
if (mmc__uniontype__metarecord__typedef__equal(tmp4_2,2,8) == 0) goto tmp3_end;
tmpMeta6 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 2));
tmpMeta7 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 6));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta7,17,5) == 0) goto tmp3_end;
tmpMeta8 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta7), 2));
tmpMeta9 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta7), 3));
tmp10 = mmc_unbox_integer(tmpMeta9);
tmpMeta11 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta7), 5));
tmp12 = mmc_unbox_integer(tmpMeta11);
if (1 != tmp12) goto tmp3_end;
tmpMeta13 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 7));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta13,0,8) == 0) goto tmp3_end;
tmpMeta14 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta13), 2));
_i_c_name = tmpMeta6;
_i_r_name = tmpMeta8;
_i_r_index = tmp10;
_i_p_elementLst = tmpMeta14;
_txt = tmp4_1;
_a_pack = tmp4_3;
_l_fields = omc_Tpl_pushIter(threadData, _OMC_LIT0, _OMC_LIT23);
_l_fields = omc_Unparsing_lm__49(threadData, _l_fields, _i_p_elementLst);
_l_fields = omc_Tpl_popIter(threadData, _l_fields);
_l_fieldsStr = omc_Tpl_pushIter(threadData, _OMC_LIT0, _OMC_LIT23);
_l_fieldsStr = omc_Unparsing_lm__50(threadData, _l_fieldsStr, _i_p_elementLst);
_l_fieldsStr = omc_Tpl_popIter(threadData, _l_fieldsStr);
_l_omcname = omc_Tpl_writeStr(threadData, _OMC_LIT0, _a_pack);
_l_omcname = omc_Tpl_writeTok(threadData, _l_omcname, _OMC_LIT2);
_l_omcname = omc_Unparsing_pathString(threadData, _l_omcname, _i_r_name);
_l_omcname = omc_Tpl_writeTok(threadData, _l_omcname, _OMC_LIT2);
_ret_3 = omc_System_stringReplace(threadData, _i_c_name, _OMC_LIT1, _OMC_LIT26);
_l_omcname = omc_Tpl_writeStr(threadData, _l_omcname, _ret_3);
_ret_5 = listLength(_i_p_elementLst);
_l_nElts = omc_Tpl_writeStr(threadData, _OMC_LIT0, intString(_ret_5));
_l_fullname = omc_Tpl_writeStr(threadData, _OMC_LIT0, _a_pack);
_l_fullname = omc_Tpl_writeTok(threadData, _l_fullname, _OMC_LIT27);
_ret_7 = omc_System_stringReplace(threadData, _i_c_name, _OMC_LIT1, _OMC_LIT28);
_l_fullname = omc_Tpl_writeStr(threadData, _l_fullname, _ret_7);
_ret_9 = ((modelica_integer) 3) + _i_r_index;
_l_ctor = omc_Tpl_writeStr(threadData, _OMC_LIT0, intString(_ret_9));
_str_11 = omc_Tpl_textString(threadData, _l_nElts);
_l_fieldsDescription = omc_Unparsing_fun__51(threadData, _OMC_LIT0, _str_11, _l_fieldsStr, _l_nElts, _l_omcname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT156);
_txt = omc_Tpl_writeText(threadData, _txt, _l_omcname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT160);
_txt = omc_Tpl_writeText(threadData, _txt, _l_omcname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT161);
_txt = omc_Tpl_writeText(threadData, _txt, _l_fieldsDescription);
_txt = omc_Tpl_softNewLine(threadData, _txt);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT163);
_txt = omc_Tpl_writeText(threadData, _txt, _l_omcname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT165);
_txt = omc_Tpl_pushBlock(threadData, _txt, _OMC_LIT66);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT167);
_txt = omc_Tpl_writeText(threadData, _txt, _l_omcname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT171);
_txt = omc_Tpl_writeStr(threadData, _txt, _a_pack);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT25);
_txt = omc_Unparsing_pathString(threadData, _txt, _i_r_name);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT25);
_txt = omc_Tpl_writeStr(threadData, _txt, _i_c_name);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT172);
_txt = omc_Tpl_writeText(threadData, _txt, _l_omcname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT174);
_txt = omc_Tpl_popBlock(threadData, _txt);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT181);
_txt = omc_Tpl_writeText(threadData, _txt, _l_omcname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT185);
_txt = omc_Tpl_writeText(threadData, _txt, _l_fullname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT187);
_txt = omc_Tpl_writeText(threadData, _txt, _l_nElts);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT189);
_txt = omc_Tpl_writeText(threadData, _txt, _l_ctor);
_txt = omc_Tpl_softNewLine(threadData, _txt);
tmpMeta1 = omc_Unparsing_fun__52(threadData, _txt, _i_p_elementLst, _l_fields, _l_omcname, _l_ctor, _l_fullname);
goto tmp3_done;
}
case 1: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_2,2,8) == 0) goto tmp3_end;
_i_elt = tmp4_2;
_txt = tmp4_1;
_a_pack = tmp4_3;
tmpMeta1 = omc_Unparsing_classExternalHeader(threadData, _txt, _i_elt, _a_pack);
goto tmp3_done;
}
case 2: {
_txt = tmp4_1;
tmpMeta1 = _txt;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_out_txt = tmpMeta1;
_return: OMC_LABEL_UNUSED
return _out_txt;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_fun__52(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_a_p_elementLst, modelica_metatype _in_a_fields, modelica_metatype _in_a_omcname, modelica_metatype _in_a_ctor, modelica_metatype _in_a_fullname)
{
modelica_metatype _out_txt = NULL;
modelica_metatype tmpMeta1;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;modelica_metatype tmp4_2;modelica_metatype tmp4_3;modelica_metatype tmp4_4;modelica_metatype tmp4_5;modelica_metatype tmp4_6;
tmp4_1 = _in_txt;
tmp4_2 = _in_a_p_elementLst;
tmp4_3 = _in_a_fields;
tmp4_4 = _in_a_omcname;
tmp4_5 = _in_a_ctor;
tmp4_6 = _in_a_fullname;
{
modelica_metatype _txt = NULL;
modelica_metatype _a_fields = NULL;
modelica_metatype _a_omcname = NULL;
modelica_metatype _a_ctor = NULL;
modelica_metatype _a_fullname = NULL;
modelica_metatype _i_p_elementLst = NULL;
modelica_integer _ret_1;
modelica_integer _ret_0;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (!listEmpty(tmp4_2)) goto tmp3_end;
_txt = tmp4_1;
_a_omcname = tmp4_4;
_a_ctor = tmp4_5;
_a_fullname = tmp4_6;
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT191);
_txt = omc_Tpl_writeText(threadData, _txt, _a_fullname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT193);
_txt = omc_Tpl_writeText(threadData, _txt, _a_ctor);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT195);
_txt = omc_Tpl_writeText(threadData, _txt, _a_omcname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT200);
_txt = omc_Tpl_writeText(threadData, _txt, _a_fullname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT202);
_txt = omc_Tpl_writeText(threadData, _txt, _a_fullname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT204);
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT7);
goto tmp3_done;
}
case 1: {
_txt = tmp4_1;
_i_p_elementLst = tmp4_2;
_a_fields = tmp4_3;
_a_omcname = tmp4_4;
_a_ctor = tmp4_5;
_a_fullname = tmp4_6;
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT55);
_txt = omc_Tpl_writeText(threadData, _txt, _a_fullname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT63);
_txt = omc_Tpl_writeText(threadData, _txt, _a_fields);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT206);
_ret_0 = listLength(_i_p_elementLst);
_ret_1 = ((modelica_integer) 1) + _ret_0;
_txt = omc_Unparsing_metaHelperBoxStart(threadData, _txt, _ret_1);
_txt = omc_Tpl_writeText(threadData, _txt, _a_ctor);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT208);
_txt = omc_Tpl_writeText(threadData, _txt, _a_omcname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT210);
_txt = omc_Tpl_writeText(threadData, _txt, _a_fields);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT212);
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT7);
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_out_txt = tmpMeta1;
_return: OMC_LABEL_UNUSED
return _out_txt;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_fun__51(threadData_t *threadData, modelica_metatype _in_txt, modelica_string _in_mArg, modelica_metatype _in_a_fieldsStr, modelica_metatype _in_a_nElts, modelica_metatype _in_a_omcname)
{
modelica_metatype _out_txt = NULL;
modelica_metatype tmpMeta1;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;modelica_string tmp4_2;modelica_metatype tmp4_3;modelica_metatype tmp4_4;modelica_metatype tmp4_5;
tmp4_1 = _in_txt;
tmp4_2 = _in_mArg;
tmp4_3 = _in_a_fieldsStr;
tmp4_4 = _in_a_nElts;
tmp4_5 = _in_a_omcname;
{
modelica_metatype _txt = NULL;
modelica_metatype _a_fieldsStr = NULL;
modelica_metatype _a_nElts = NULL;
modelica_metatype _a_omcname = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (1 != MMC_STRLEN(tmp4_2) || strcmp(MMC_STRINGDATA(_OMC_LIT221), MMC_STRINGDATA(tmp4_2)) != 0) goto tmp3_end;
_txt = tmp4_1;
_a_omcname = tmp4_5;
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT214);
_txt = omc_Tpl_writeText(threadData, _txt, _a_omcname);
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT216);
goto tmp3_done;
}
case 1: {
_txt = tmp4_1;
_a_fieldsStr = tmp4_3;
_a_nElts = tmp4_4;
_a_omcname = tmp4_5;
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT214);
_txt = omc_Tpl_writeText(threadData, _txt, _a_omcname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT218);
_txt = omc_Tpl_writeText(threadData, _txt, _a_nElts);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT76);
_txt = omc_Tpl_writeText(threadData, _txt, _a_fieldsStr);
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT220);
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_out_txt = tmpMeta1;
_return: OMC_LABEL_UNUSED
return _out_txt;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_lm__50(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items)
{
modelica_metatype _out_txt = NULL;
modelica_metatype tmpMeta1;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;modelica_metatype tmp4_2;
tmp4_1 = _in_txt;
tmp4_2 = _in_items;
{
modelica_metatype _txt = NULL;
modelica_metatype _rest = NULL;
modelica_string _i_name = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 3; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (!listEmpty(tmp4_2)) goto tmp3_end;
_txt = tmp4_1;
tmpMeta1 = _txt;
goto tmp3_done;
}
case 1: {
modelica_metatype tmpMeta6;
modelica_metatype tmpMeta7;
modelica_metatype tmpMeta8;
if (listEmpty(tmp4_2)) goto tmp3_end;
tmpMeta6 = MMC_CAR(tmp4_2);
tmpMeta7 = MMC_CDR(tmp4_2);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta6,3,8) == 0) goto tmp3_end;
tmpMeta8 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta6), 2));
_i_name = tmpMeta8;
_rest = tmpMeta7;
_txt = tmp4_1;
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT167);
_txt = omc_Tpl_writeStr(threadData, _txt, _i_name);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT167);
_txt = omc_Tpl_nextIter(threadData, _txt);
_in_txt = _txt;
_in_items = _rest;
goto _tailrecursive;
goto tmp3_done;
}
case 2: {
modelica_metatype tmpMeta9;
modelica_metatype tmpMeta10;
if (listEmpty(tmp4_2)) goto tmp3_end;
tmpMeta9 = MMC_CAR(tmp4_2);
tmpMeta10 = MMC_CDR(tmp4_2);
_rest = tmpMeta10;
_txt = tmp4_1;
_in_txt = _txt;
_in_items = _rest;
goto _tailrecursive;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_out_txt = tmpMeta1;
_return: OMC_LABEL_UNUSED
return _out_txt;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_lm__49(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items)
{
modelica_metatype _out_txt = NULL;
modelica_metatype tmpMeta1;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;modelica_metatype tmp4_2;
tmp4_1 = _in_txt;
tmp4_2 = _in_items;
{
modelica_metatype _txt = NULL;
modelica_metatype _rest = NULL;
modelica_string _i_name = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 3; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (!listEmpty(tmp4_2)) goto tmp3_end;
_txt = tmp4_1;
tmpMeta1 = _txt;
goto tmp3_done;
}
case 1: {
modelica_metatype tmpMeta6;
modelica_metatype tmpMeta7;
modelica_metatype tmpMeta8;
if (listEmpty(tmp4_2)) goto tmp3_end;
tmpMeta6 = MMC_CAR(tmp4_2);
tmpMeta7 = MMC_CDR(tmp4_2);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta6,3,8) == 0) goto tmp3_end;
tmpMeta8 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta6), 2));
_i_name = tmpMeta8;
_rest = tmpMeta7;
_txt = tmp4_1;
_txt = omc_Tpl_writeStr(threadData, _txt, _i_name);
_txt = omc_Tpl_nextIter(threadData, _txt);
_in_txt = _txt;
_in_items = _rest;
goto _tailrecursive;
goto tmp3_done;
}
case 2: {
modelica_metatype tmpMeta9;
modelica_metatype tmpMeta10;
if (listEmpty(tmp4_2)) goto tmp3_end;
tmpMeta9 = MMC_CAR(tmp4_2);
tmpMeta10 = MMC_CDR(tmp4_2);
_rest = tmpMeta10;
_txt = tmp4_1;
_in_txt = _txt;
_in_items = _rest;
goto _tailrecursive;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_out_txt = tmpMeta1;
_return: OMC_LABEL_UNUSED
return _out_txt;
}
DLLExport
modelica_metatype omc_Unparsing_metaHelperBoxStart(threadData_t *threadData, modelica_metatype _in_txt, modelica_integer _in_a_numVariables)
{
modelica_metatype _out_txt = NULL;
modelica_metatype tmpMeta1;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;modelica_integer tmp4_2;
tmp4_1 = _in_txt;
tmp4_2 = _in_a_numVariables;
{
modelica_metatype _txt = NULL;
modelica_integer _i_numVariables;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 11; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (0 != tmp4_2) goto tmp3_end;
_i_numVariables = tmp4_2;
_txt = tmp4_1;
_txt = omc_Tpl_writeStr(threadData, _txt, intString(_i_numVariables));
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT63);
goto tmp3_done;
}
case 1: {
if (1 != tmp4_2) goto tmp3_end;
_i_numVariables = tmp4_2;
_txt = tmp4_1;
_txt = omc_Tpl_writeStr(threadData, _txt, intString(_i_numVariables));
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT63);
goto tmp3_done;
}
case 2: {
if (2 != tmp4_2) goto tmp3_end;
_i_numVariables = tmp4_2;
_txt = tmp4_1;
_txt = omc_Tpl_writeStr(threadData, _txt, intString(_i_numVariables));
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT63);
goto tmp3_done;
}
case 3: {
if (3 != tmp4_2) goto tmp3_end;
_i_numVariables = tmp4_2;
_txt = tmp4_1;
_txt = omc_Tpl_writeStr(threadData, _txt, intString(_i_numVariables));
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT63);
goto tmp3_done;
}
case 4: {
if (4 != tmp4_2) goto tmp3_end;
_i_numVariables = tmp4_2;
_txt = tmp4_1;
_txt = omc_Tpl_writeStr(threadData, _txt, intString(_i_numVariables));
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT63);
goto tmp3_done;
}
case 5: {
if (5 != tmp4_2) goto tmp3_end;
_i_numVariables = tmp4_2;
_txt = tmp4_1;
_txt = omc_Tpl_writeStr(threadData, _txt, intString(_i_numVariables));
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT63);
goto tmp3_done;
}
case 6: {
if (6 != tmp4_2) goto tmp3_end;
_i_numVariables = tmp4_2;
_txt = tmp4_1;
_txt = omc_Tpl_writeStr(threadData, _txt, intString(_i_numVariables));
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT63);
goto tmp3_done;
}
case 7: {
if (7 != tmp4_2) goto tmp3_end;
_i_numVariables = tmp4_2;
_txt = tmp4_1;
_txt = omc_Tpl_writeStr(threadData, _txt, intString(_i_numVariables));
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT63);
goto tmp3_done;
}
case 8: {
if (8 != tmp4_2) goto tmp3_end;
_i_numVariables = tmp4_2;
_txt = tmp4_1;
_txt = omc_Tpl_writeStr(threadData, _txt, intString(_i_numVariables));
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT63);
goto tmp3_done;
}
case 9: {
if (9 != tmp4_2) goto tmp3_end;
_i_numVariables = tmp4_2;
_txt = tmp4_1;
_txt = omc_Tpl_writeStr(threadData, _txt, intString(_i_numVariables));
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT63);
goto tmp3_done;
}
case 10: {
_txt = tmp4_1;
_i_numVariables = tmp4_2;
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT63);
_txt = omc_Tpl_writeStr(threadData, _txt, intString(_i_numVariables));
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT85);
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_out_txt = tmpMeta1;
_return: OMC_LABEL_UNUSED
return _out_txt;
}
modelica_metatype boxptr_Unparsing_metaHelperBoxStart(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_a_numVariables)
{
modelica_integer tmp1;
modelica_metatype _out_txt = NULL;
tmp1 = mmc_unbox_integer(_in_a_numVariables);
_out_txt = omc_Unparsing_metaHelperBoxStart(threadData, _in_txt, tmp1);
return _out_txt;
}
DLLExport
modelica_metatype omc_Unparsing_pathString(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_a_path)
{
modelica_metatype _out_txt = NULL;
modelica_metatype tmpMeta1;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;modelica_metatype tmp4_2;
tmp4_1 = _in_txt;
tmp4_2 = _in_a_path;
{
modelica_metatype _txt = NULL;
modelica_metatype _i_path = NULL;
modelica_string _i_name_1 = NULL;
modelica_string _i_name = NULL;
int tmp4;
{
switch (MMC_SWITCH_CAST(valueConstructor(tmp4_2))) {
case 4: {
modelica_metatype tmpMeta5;
if (mmc__uniontype__metarecord__typedef__equal(tmp4_2,1,1) == 0) goto tmp3_end;
tmpMeta5 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 2));
_i_name = tmpMeta5;
_txt = tmp4_1;
tmpMeta1 = omc_Tpl_writeStr(threadData, _txt, _i_name);
goto tmp3_done;
}
case 3: {
modelica_metatype tmpMeta6;
modelica_metatype tmpMeta7;
if (mmc__uniontype__metarecord__typedef__equal(tmp4_2,0,2) == 0) goto tmp3_end;
tmpMeta6 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 2));
tmpMeta7 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 3));
_i_name_1 = tmpMeta6;
_i_path = tmpMeta7;
_txt = tmp4_1;
_txt = omc_Tpl_writeStr(threadData, _txt, _i_name_1);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT25);
_in_txt = _txt;
_in_a_path = _i_path;
goto _tailrecursive;
goto tmp3_done;
}
case 5: {
modelica_metatype tmpMeta8;
if (mmc__uniontype__metarecord__typedef__equal(tmp4_2,2,1) == 0) goto tmp3_end;
tmpMeta8 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 2));
_i_path = tmpMeta8;
_txt = tmp4_1;
_in_txt = _txt;
_in_a_path = _i_path;
goto _tailrecursive;
goto tmp3_done;
}
default:
tmp3_default: OMC_LABEL_UNUSED; {
_txt = tmp4_1;
tmpMeta1 = _txt;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_out_txt = tmpMeta1;
_return: OMC_LABEL_UNUSED
return _out_txt;
}
DLLExport
modelica_metatype omc_Unparsing_classExternalHeader(threadData_t *threadData, modelica_metatype _txt, modelica_metatype _a_cl, modelica_string _a_pack)
{
modelica_metatype _out_txt = NULL;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
_out_txt = omc_Unparsing_fun__45(threadData, _txt, _a_cl);
_return: OMC_LABEL_UNUSED
return _out_txt;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_fun__45(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_a_cl)
{
modelica_metatype _out_txt = NULL;
modelica_metatype tmpMeta1;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;modelica_metatype tmp4_2;
tmp4_1 = _in_txt;
tmp4_2 = _in_a_cl;
{
modelica_metatype _txt = NULL;
modelica_string _i_c_name = NULL;
modelica_metatype _i_p_elementLst = NULL;
modelica_string _i_name = NULL;
modelica_metatype _i_c = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 3; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
modelica_metatype tmpMeta6;
modelica_metatype tmpMeta7;
modelica_metatype tmpMeta8;
modelica_metatype tmpMeta9;
modelica_integer tmp10;
if (mmc__uniontype__metarecord__typedef__equal(tmp4_2,2,8) == 0) goto tmp3_end;
tmpMeta6 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 6));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta6,17,5) == 0) goto tmp3_end;
tmpMeta7 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta6), 2));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta7,1,1) == 0) goto tmp3_end;
tmpMeta8 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta7), 2));
tmpMeta9 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta6), 5));
tmp10 = mmc_unbox_integer(tmpMeta9);
if (1 != tmp10) goto tmp3_end;
_i_c = tmp4_2;
_i_name = tmpMeta8;
_txt = tmp4_1;
tmpMeta1 = omc_Unparsing_elementExternalHeader(threadData, _txt, _i_c, _i_name);
goto tmp3_done;
}
case 1: {
modelica_metatype tmpMeta11;
modelica_metatype tmpMeta12;
modelica_metatype tmpMeta13;
if (mmc__uniontype__metarecord__typedef__equal(tmp4_2,2,8) == 0) goto tmp3_end;
tmpMeta11 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 2));
tmpMeta12 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_2), 7));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta12,0,8) == 0) goto tmp3_end;
tmpMeta13 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta12), 2));
_i_c_name = tmpMeta11;
_i_p_elementLst = tmpMeta13;
_txt = tmp4_1;
tmpMeta1 = omc_Unparsing_lm__44(threadData, _txt, _i_p_elementLst, _i_c_name);
goto tmp3_done;
}
case 2: {
_txt = tmp4_1;
tmpMeta1 = _txt;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_out_txt = tmpMeta1;
_return: OMC_LABEL_UNUSED
return _out_txt;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_lm__44(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items, modelica_string _in_a_c_name)
{
modelica_metatype _out_txt = NULL;
modelica_metatype tmpMeta1;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;modelica_metatype tmp4_2;modelica_string tmp4_3;
tmp4_1 = _in_txt;
tmp4_2 = _in_items;
tmp4_3 = _in_a_c_name;
{
modelica_metatype _txt = NULL;
modelica_metatype _rest = NULL;
modelica_string _a_c_name = NULL;
modelica_metatype _i_elt = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (!listEmpty(tmp4_2)) goto tmp3_end;
_txt = tmp4_1;
tmpMeta1 = _txt;
goto tmp3_done;
}
case 1: {
modelica_metatype tmpMeta6;
modelica_metatype tmpMeta7;
if (listEmpty(tmp4_2)) goto tmp3_end;
tmpMeta6 = MMC_CAR(tmp4_2);
tmpMeta7 = MMC_CDR(tmp4_2);
_i_elt = tmpMeta6;
_rest = tmpMeta7;
_txt = tmp4_1;
_a_c_name = tmp4_3;
_txt = omc_Unparsing_elementExternalHeader(threadData, _txt, _i_elt, _a_c_name);
_in_txt = _txt;
_in_items = _rest;
_in_a_c_name = _a_c_name;
goto _tailrecursive;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_out_txt = tmpMeta1;
_return: OMC_LABEL_UNUSED
return _out_txt;
}
DLLExport
modelica_metatype omc_Unparsing_programExternalHeaderFromTypes(threadData_t *threadData, modelica_metatype _txt, modelica_metatype _a_tys)
{
modelica_metatype _out_txt = NULL;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
_out_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT226);
_out_txt = omc_Tpl_pushIter(threadData, _out_txt, _OMC_LIT228);
_out_txt = omc_Unparsing_lm__42(threadData, _out_txt, _a_tys);
_out_txt = omc_Tpl_popIter(threadData, _out_txt);
_out_txt = omc_Tpl_softNewLine(threadData, _out_txt);
_out_txt = omc_Tpl_writeTok(threadData, _out_txt, _OMC_LIT151);
_return: OMC_LABEL_UNUSED
return _out_txt;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_lm__42(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items)
{
modelica_metatype _out_txt = NULL;
modelica_metatype tmpMeta1;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;modelica_metatype tmp4_2;
tmp4_1 = _in_txt;
tmp4_2 = _in_items;
{
modelica_metatype _txt = NULL;
modelica_metatype _rest = NULL;
modelica_metatype _i_path = NULL;
modelica_metatype _i_ty_fields = NULL;
modelica_string _ret_9 = NULL;
modelica_string _str_8 = NULL;
modelica_metatype _l_fieldsDescription = NULL;
modelica_integer _ret_6;
modelica_metatype _l_nElts = NULL;
modelica_string _ret_4 = NULL;
modelica_string _ret_3 = NULL;
modelica_string _ret_2 = NULL;
modelica_metatype _l_omcname = NULL;
modelica_metatype _l_fieldsStr = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 3; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (!listEmpty(tmp4_2)) goto tmp3_end;
_txt = tmp4_1;
tmpMeta1 = _txt;
goto tmp3_done;
}
case 1: {
modelica_metatype tmpMeta6;
modelica_metatype tmpMeta7;
modelica_metatype tmpMeta8;
modelica_metatype tmpMeta9;
if (listEmpty(tmp4_2)) goto tmp3_end;
tmpMeta6 = MMC_CAR(tmp4_2);
tmpMeta7 = MMC_CDR(tmp4_2);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta6,21,6) == 0) goto tmp3_end;
tmpMeta8 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta6), 2));
tmpMeta9 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta6), 6));
_i_path = tmpMeta8;
_i_ty_fields = tmpMeta9;
_rest = tmpMeta7;
_txt = tmp4_1;
_l_fieldsStr = omc_Tpl_pushIter(threadData, _OMC_LIT0, _OMC_LIT23);
_l_fieldsStr = omc_Unparsing_lm__40(threadData, _l_fieldsStr, _i_ty_fields);
_l_fieldsStr = omc_Tpl_popIter(threadData, _l_fieldsStr);
_ret_2 = omc_AbsynUtil_pathString(threadData, _i_path, _OMC_LIT229, 0, 0);
_ret_3 = omc_System_stringReplace(threadData, _ret_2, _OMC_LIT1, _OMC_LIT26);
_ret_4 = omc_System_stringReplace(threadData, _ret_3, _OMC_LIT229, _OMC_LIT1);
_l_omcname = omc_Tpl_writeStr(threadData, _OMC_LIT0, _ret_4);
_ret_6 = listLength(_i_ty_fields);
_l_nElts = omc_Tpl_writeStr(threadData, _OMC_LIT0, intString(_ret_6));
_str_8 = omc_Tpl_textString(threadData, _l_nElts);
_l_fieldsDescription = omc_Unparsing_fun__41(threadData, _OMC_LIT0, _str_8, _l_fieldsStr, _l_nElts, _l_omcname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT156);
_txt = omc_Tpl_writeText(threadData, _txt, _l_omcname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT160);
_txt = omc_Tpl_writeText(threadData, _txt, _l_omcname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT161);
_txt = omc_Tpl_writeText(threadData, _txt, _l_fieldsDescription);
_txt = omc_Tpl_softNewLine(threadData, _txt);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT163);
_txt = omc_Tpl_writeText(threadData, _txt, _l_omcname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT165);
_txt = omc_Tpl_pushBlock(threadData, _txt, _OMC_LIT66);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT167);
_txt = omc_Tpl_writeText(threadData, _txt, _l_omcname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT171);
_ret_9 = omc_AbsynUtil_pathString(threadData, _i_path, _OMC_LIT24, 0, 0);
_txt = omc_Tpl_writeStr(threadData, _txt, _ret_9);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT172);
_txt = omc_Tpl_writeText(threadData, _txt, _l_omcname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT174);
_txt = omc_Tpl_popBlock(threadData, _txt);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT181);
_txt = omc_Tpl_writeText(threadData, _txt, _l_omcname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT233);
_txt = omc_Tpl_nextIter(threadData, _txt);
_in_txt = _txt;
_in_items = _rest;
goto _tailrecursive;
goto tmp3_done;
}
case 2: {
modelica_metatype tmpMeta10;
modelica_metatype tmpMeta11;
if (listEmpty(tmp4_2)) goto tmp3_end;
tmpMeta10 = MMC_CAR(tmp4_2);
tmpMeta11 = MMC_CDR(tmp4_2);
_rest = tmpMeta11;
_txt = tmp4_1;
_in_txt = _txt;
_in_items = _rest;
goto _tailrecursive;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_out_txt = tmpMeta1;
_return: OMC_LABEL_UNUSED
return _out_txt;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_fun__41(threadData_t *threadData, modelica_metatype _in_txt, modelica_string _in_mArg, modelica_metatype _in_a_fieldsStr, modelica_metatype _in_a_nElts, modelica_metatype _in_a_omcname)
{
modelica_metatype _out_txt = NULL;
modelica_metatype tmpMeta1;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;modelica_string tmp4_2;modelica_metatype tmp4_3;modelica_metatype tmp4_4;modelica_metatype tmp4_5;
tmp4_1 = _in_txt;
tmp4_2 = _in_mArg;
tmp4_3 = _in_a_fieldsStr;
tmp4_4 = _in_a_nElts;
tmp4_5 = _in_a_omcname;
{
modelica_metatype _txt = NULL;
modelica_metatype _a_fieldsStr = NULL;
modelica_metatype _a_nElts = NULL;
modelica_metatype _a_omcname = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (1 != MMC_STRLEN(tmp4_2) || strcmp(MMC_STRINGDATA(_OMC_LIT221), MMC_STRINGDATA(tmp4_2)) != 0) goto tmp3_end;
_txt = tmp4_1;
_a_omcname = tmp4_5;
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT214);
_txt = omc_Tpl_writeText(threadData, _txt, _a_omcname);
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT216);
goto tmp3_done;
}
case 1: {
_txt = tmp4_1;
_a_fieldsStr = tmp4_3;
_a_nElts = tmp4_4;
_a_omcname = tmp4_5;
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT214);
_txt = omc_Tpl_writeText(threadData, _txt, _a_omcname);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT218);
_txt = omc_Tpl_writeText(threadData, _txt, _a_nElts);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT76);
_txt = omc_Tpl_writeText(threadData, _txt, _a_fieldsStr);
tmpMeta1 = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT220);
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_out_txt = tmpMeta1;
_return: OMC_LABEL_UNUSED
return _out_txt;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_lm__40(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items)
{
modelica_metatype _out_txt = NULL;
modelica_metatype tmpMeta1;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;modelica_metatype tmp4_2;
tmp4_1 = _in_txt;
tmp4_2 = _in_items;
{
modelica_metatype _txt = NULL;
modelica_metatype _rest = NULL;
modelica_string _i_var_name = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 3; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (!listEmpty(tmp4_2)) goto tmp3_end;
_txt = tmp4_1;
tmpMeta1 = _txt;
goto tmp3_done;
}
case 1: {
modelica_metatype tmpMeta6;
modelica_metatype tmpMeta7;
modelica_metatype tmpMeta8;
if (listEmpty(tmp4_2)) goto tmp3_end;
tmpMeta6 = MMC_CAR(tmp4_2);
tmpMeta7 = MMC_CDR(tmp4_2);
tmpMeta8 = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta6), 2));
_i_var_name = tmpMeta8;
_rest = tmpMeta7;
_txt = tmp4_1;
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT167);
_txt = omc_Tpl_writeStr(threadData, _txt, _i_var_name);
_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT167);
_txt = omc_Tpl_nextIter(threadData, _txt);
_in_txt = _txt;
_in_items = _rest;
goto _tailrecursive;
goto tmp3_done;
}
case 2: {
modelica_metatype tmpMeta9;
modelica_metatype tmpMeta10;
if (listEmpty(tmp4_2)) goto tmp3_end;
tmpMeta9 = MMC_CAR(tmp4_2);
tmpMeta10 = MMC_CDR(tmp4_2);
_rest = tmpMeta10;
_txt = tmp4_1;
_in_txt = _txt;
_in_items = _rest;
goto _tailrecursive;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_out_txt = tmpMeta1;
_return: OMC_LABEL_UNUSED
return _out_txt;
}
DLLExport
modelica_metatype omc_Unparsing_programExternalHeader(threadData_t *threadData, modelica_metatype _txt, modelica_metatype _a_program)
{
modelica_metatype _out_txt = NULL;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
_out_txt = omc_Tpl_writeTok(threadData, _txt, _OMC_LIT235);
_out_txt = omc_Unparsing_lm__38(threadData, _out_txt, _a_program);
_out_txt = omc_Tpl_softNewLine(threadData, _out_txt);
_out_txt = omc_Tpl_writeTok(threadData, _out_txt, _OMC_LIT151);
_return: OMC_LABEL_UNUSED
return _out_txt;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_Unparsing_lm__38(threadData_t *threadData, modelica_metatype _in_txt, modelica_metatype _in_items)
{
modelica_metatype _out_txt = NULL;
modelica_metatype tmpMeta1;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;modelica_metatype tmp4_2;
tmp4_1 = _in_txt;
tmp4_2 = _in_items;
{
modelica_metatype _txt = NULL;
modelica_metatype _rest = NULL;
modelica_metatype _i_cl = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (!listEmpty(tmp4_2)) goto tmp3_end;
_txt = tmp4_1;
tmpMeta1 = _txt;
goto tmp3_done;
}
case 1: {
modelica_metatype tmpMeta6;
modelica_metatype tmpMeta7;
if (listEmpty(tmp4_2)) goto tmp3_end;
tmpMeta6 = MMC_CAR(tmp4_2);
tmpMeta7 = MMC_CDR(tmp4_2);
_i_cl = tmpMeta6;
_rest = tmpMeta7;
_txt = tmp4_1;
_txt = omc_Unparsing_classExternalHeader(threadData, _txt, _i_cl, _OMC_LIT152);
_in_txt = _txt;
_in_items = _rest;
goto _tailrecursive;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_out_txt = tmpMeta1;
_return: OMC_LABEL_UNUSED
return _out_txt;
}
