#ifdef OMC_BASE_FILE
#define OMC_FILE OMC_BASE_FILE
#else
#define OMC_FILE "/home/mahge/dev/OpenModelica/OMCompiler/Compiler/boot/build/tmp/DAEDump.c"
#endif
#include "omc_simulation_settings.h"
#include "DAEDump.h"
#define _OMC_LIT0_data "VAR:  "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT0,6,_OMC_LIT0_data);
#define _OMC_LIT0 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT0)
#define _OMC_LIT1_data ";\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT1,2,_OMC_LIT1_data);
#define _OMC_LIT1 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT1)
#define _OMC_LIT2_data "  "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT2,2,_OMC_LIT2_data);
#define _OMC_LIT2 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT2)
#define _OMC_LIT3_data " = "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT3,3,_OMC_LIT3_data);
#define _OMC_LIT3 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT3)
#define _OMC_LIT4_data "EQUEQUATION  "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT4,13,_OMC_LIT4_data);
#define _OMC_LIT4 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT4)
#define _OMC_LIT5_data "ARRAY_EQUATION  "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT5,16,_OMC_LIT5_data);
#define _OMC_LIT5 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT5)
#define _OMC_LIT6_data "INITIAL_ARRAY_EQUATION  "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT6,24,_OMC_LIT6_data);
#define _OMC_LIT6 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT6)
#define _OMC_LIT7_data "COMPLEX_EQUATION  "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT7,18,_OMC_LIT7_data);
#define _OMC_LIT7 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT7)
#define _OMC_LIT8_data "INITIAL_COMPLEX_EQUATION  "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT8,26,_OMC_LIT8_data);
#define _OMC_LIT8 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT8)
#define _OMC_LIT9_data "WHEN_EQUATION:  "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT9,16,_OMC_LIT9_data);
#define _OMC_LIT9 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT9)
#define _OMC_LIT10_data "IF_EQUATION:  "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT10,14,_OMC_LIT10_data);
#define _OMC_LIT10 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT10)
#define _OMC_LIT11_data "INITIAL_IF_EQUATION:  "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT11,22,_OMC_LIT11_data);
#define _OMC_LIT11 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT11)
#define _OMC_LIT12_data "INITIALEQUATION  "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT12,17,_OMC_LIT12_data);
#define _OMC_LIT12 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT12)
#define _OMC_LIT13_data "ALGO  "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT13,6,_OMC_LIT13_data);
#define _OMC_LIT13 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT13)
#define _OMC_LIT14_data "INITIALALGORITHM  "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT14,18,_OMC_LIT14_data);
#define _OMC_LIT14 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT14)
#define _OMC_LIT15_data "\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT15,1,_OMC_LIT15_data);
#define _OMC_LIT15 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT15)
#define _OMC_LIT16_data "COMP  "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT16,6,_OMC_LIT16_data);
#define _OMC_LIT16 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT16)
#define _OMC_LIT17_data "."
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT17,1,_OMC_LIT17_data);
#define _OMC_LIT17 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT17)
#define _OMC_LIT18_data "EXTOBJ  "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT18,8,_OMC_LIT18_data);
#define _OMC_LIT18 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT18)
#define _OMC_LIT19_data "  assert("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT19,9,_OMC_LIT19_data);
#define _OMC_LIT19 MMC_REFSTRINGLIT(_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)
#define _OMC_LIT21_data ") "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT21,2,_OMC_LIT21_data);
#define _OMC_LIT21 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT21)
#define _OMC_LIT22_data "  /* initial */ assert("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT22,23,_OMC_LIT22_data);
#define _OMC_LIT22 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT22)
#define _OMC_LIT23_data "  terminate("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT23,12,_OMC_LIT23_data);
#define _OMC_LIT23 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT23)
#define _OMC_LIT24_data "  /* initial */ terminate("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT24,26,_OMC_LIT24_data);
#define _OMC_LIT24 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT24)
#define _OMC_LIT25_data "  reinit() "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT25,11,_OMC_LIT25_data);
#define _OMC_LIT25 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT25)
#define _OMC_LIT26_data "#UNKNOWN_EQUATION#"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT26,18,_OMC_LIT26_data);
#define _OMC_LIT26 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT26)
#define _OMC_LIT27_data "Inferred Clock"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT27,14,_OMC_LIT27_data);
#define _OMC_LIT27 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT27)
#define _OMC_LIT28_data "Integer Clock("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT28,14,_OMC_LIT28_data);
#define _OMC_LIT28 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT28)
#define _OMC_LIT29_data "; "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT29,2,_OMC_LIT29_data);
#define _OMC_LIT29 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT29)
#define _OMC_LIT30_data ")"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT30,1,_OMC_LIT30_data);
#define _OMC_LIT30 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT30)
#define _OMC_LIT31_data "Real Clock("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT31,11,_OMC_LIT31_data);
#define _OMC_LIT31 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT31)
#define _OMC_LIT32_data "Boolean Clock("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT32,14,_OMC_LIT32_data);
#define _OMC_LIT32 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT32)
#define _OMC_LIT33_data "Solver Clock("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT33,13,_OMC_LIT33_data);
#define _OMC_LIT33 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT33)
#define _OMC_LIT34_data ""
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT34,0,_OMC_LIT34_data);
#define _OMC_LIT34 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT34)
#define _OMC_LIT35_data " "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT35,1,_OMC_LIT35_data);
#define _OMC_LIT35 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT35)
#define _OMC_LIT36_data "TOP"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT36,3,_OMC_LIT36_data);
#define _OMC_LIT36 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT36)
#define _OMC_LIT37_data "connect("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT37,8,_OMC_LIT37_data);
#define _OMC_LIT37 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT37)
#define _OMC_LIT38_data "showEquationSource"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT38,18,_OMC_LIT38_data);
#define _OMC_LIT38 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT38)
#define _OMC_LIT39_data "Display the element source information in the dumped DAE for easier debugging."
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT39,78,_OMC_LIT39_data);
#define _OMC_LIT39 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT39)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT40,2,3) {&Gettext_TranslatableContent_gettext__desc,_OMC_LIT39}};
#define _OMC_LIT40 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT40)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT41,5,3) {&Flags_DebugFlag_DEBUG__FLAG__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(83)),_OMC_LIT38,MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),_OMC_LIT40}};
#define _OMC_LIT41 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT41)
#define _OMC_LIT42_data " /* models: {"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT42,13,_OMC_LIT42_data);
#define _OMC_LIT42 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT42)
#define _OMC_LIT43_data ", "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT43,2,_OMC_LIT43_data);
#define _OMC_LIT43 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT43)
#define _OMC_LIT44_data "}"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT44,1,_OMC_LIT44_data);
#define _OMC_LIT44 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT44)
#define _OMC_LIT45_data " connects: {"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT45,12,_OMC_LIT45_data);
#define _OMC_LIT45 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT45)
#define _OMC_LIT46_data "} */"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT46,4,_OMC_LIT46_data);
#define _OMC_LIT46 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT46)
#define _OMC_LIT47_data "inner"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT47,5,_OMC_LIT47_data);
#define _OMC_LIT47 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT47)
#define _OMC_LIT48_data "outer"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT48,5,_OMC_LIT48_data);
#define _OMC_LIT48 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT48)
#define _OMC_LIT49_data "inner outer"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT49,11,_OMC_LIT49_data);
#define _OMC_LIT49 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT49)
#define _OMC_LIT50_data "input"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT50,5,_OMC_LIT50_data);
#define _OMC_LIT50 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT50)
#define _OMC_LIT51_data "output"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT51,6,_OMC_LIT51_data);
#define _OMC_LIT51 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT51)
#define _OMC_LIT52_data "parameter"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT52,9,_OMC_LIT52_data);
#define _OMC_LIT52 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT52)
#define _OMC_LIT53_data "const"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT53,5,_OMC_LIT53_data);
#define _OMC_LIT53 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT53)
#define _OMC_LIT54_data "discrete"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT54,8,_OMC_LIT54_data);
#define _OMC_LIT54 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT54)
#define _OMC_LIT55_data "impure "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT55,7,_OMC_LIT55_data);
#define _OMC_LIT55 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT55)
#define _OMC_LIT56_data "function "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT56,9,_OMC_LIT56_data);
#define _OMC_LIT56 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT56)
#define _OMC_LIT57_data "end "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT57,4,_OMC_LIT57_data);
#define _OMC_LIT57 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT57)
#define _OMC_LIT58_data ";\n\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT58,3,_OMC_LIT58_data);
#define _OMC_LIT58 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT58)
#define _OMC_LIT59_data "\n  "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT59,3,_OMC_LIT59_data);
#define _OMC_LIT59 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT59)
#define _OMC_LIT60_data "disableRecordConstructorOutput"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT60,30,_OMC_LIT60_data);
#define _OMC_LIT60 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT60)
#define _OMC_LIT61_data "Disables output of record constructors in the flat code."
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT61,56,_OMC_LIT61_data);
#define _OMC_LIT61 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT61)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT62,2,3) {&Gettext_TranslatableContent_gettext__desc,_OMC_LIT61}};
#define _OMC_LIT62 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT62)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT63,5,3) {&Flags_DebugFlag_DEBUG__FLAG__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(99)),_OMC_LIT60,MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),_OMC_LIT62}};
#define _OMC_LIT63 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT63)
#define _OMC_LIT64_data " \"Automatically generated record constructor for "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT64,49,_OMC_LIT64_data);
#define _OMC_LIT64 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT64)
#define _OMC_LIT65_data "\"\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT65,2,_OMC_LIT65_data);
#define _OMC_LIT65 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT65)
#define _OMC_LIT66_data "  output "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT66,9,_OMC_LIT66_data);
#define _OMC_LIT66 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT66)
#define _OMC_LIT67_data " res;\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT67,6,_OMC_LIT67_data);
#define _OMC_LIT67 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT67)
#define _OMC_LIT68_data "builtin"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT68,7,_OMC_LIT68_data);
#define _OMC_LIT68 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT68)
#define _OMC_LIT69_data "\n========================================\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT69,42,_OMC_LIT69_data);
#define _OMC_LIT69 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT69)
#define _OMC_LIT70_data "initial algorithm\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT70,18,_OMC_LIT70_data);
#define _OMC_LIT70 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT70)
#define _OMC_LIT71_data "algorithm\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT71,10,_OMC_LIT71_data);
#define _OMC_LIT71 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT71)
#define _OMC_LIT72_data "final "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT72,6,_OMC_LIT72_data);
#define _OMC_LIT72 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT72)
#define _OMC_LIT73_data "Call attributes: \n----------------------\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT73,41,_OMC_LIT73_data);
#define _OMC_LIT73 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT73)
#define _OMC_LIT74_data "DAE-type: "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT74,10,_OMC_LIT74_data);
#define _OMC_LIT74 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT74)
#define _OMC_LIT75_data "DAE-type attributes :"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT75,21,_OMC_LIT75_data);
#define _OMC_LIT75 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT75)
#define _OMC_LIT76_data "tuple_: "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT76,8,_OMC_LIT76_data);
#define _OMC_LIT76 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT76)
#define _OMC_LIT77_data "true"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT77,4,_OMC_LIT77_data);
#define _OMC_LIT77 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT77)
#define _OMC_LIT78_data "false"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT78,5,_OMC_LIT78_data);
#define _OMC_LIT78 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT78)
#define _OMC_LIT79_data " builtin: "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT79,10,_OMC_LIT79_data);
#define _OMC_LIT79 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT79)
#define _OMC_LIT80_data " impure: "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT80,9,_OMC_LIT80_data);
#define _OMC_LIT80 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT80)
#define _OMC_LIT81_data " isFunctionPointerCall: "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT81,24,_OMC_LIT81_data);
#define _OMC_LIT81 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT81)
#define _OMC_LIT82_data "\n\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT82,2,_OMC_LIT82_data);
#define _OMC_LIT82 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT82)
#define _OMC_LIT83_data "("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT83,1,_OMC_LIT83_data);
#define _OMC_LIT83 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT83)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT84,1,4) {&IOStream_IOStreamType_LIST__desc,}};
#define _OMC_LIT84 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT84)
#define _OMC_LIT85_data ";\n  "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT85,4,_OMC_LIT85_data);
#define _OMC_LIT85 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT85)
#define _OMC_LIT86_data "  if "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT86,5,_OMC_LIT86_data);
#define _OMC_LIT86 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT86)
#define _OMC_LIT87_data " then\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT87,6,_OMC_LIT87_data);
#define _OMC_LIT87 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT87)
#define _OMC_LIT88_data "  else\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT88,7,_OMC_LIT88_data);
#define _OMC_LIT88 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT88)
#define _OMC_LIT89_data "  end if;\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT89,10,_OMC_LIT89_data);
#define _OMC_LIT89 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT89)
#define _OMC_LIT90_data "  elseif "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT90,9,_OMC_LIT90_data);
#define _OMC_LIT90 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT90)
#define _OMC_LIT91_data " /* array equation ["
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT91,20,_OMC_LIT91_data);
#define _OMC_LIT91 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT91)
#define _OMC_LIT92_data "] */"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT92,4,_OMC_LIT92_data);
#define _OMC_LIT92 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT92)
#define _OMC_LIT93_data "  for "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT93,6,_OMC_LIT93_data);
#define _OMC_LIT93 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT93)
#define _OMC_LIT94_data " in "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT94,4,_OMC_LIT94_data);
#define _OMC_LIT94 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT94)
#define _OMC_LIT95_data " loop\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT95,6,_OMC_LIT95_data);
#define _OMC_LIT95 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT95)
#define _OMC_LIT96_data "  end for;\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT96,11,_OMC_LIT96_data);
#define _OMC_LIT96 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT96)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT97,2,1) {_OMC_LIT96,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT97 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT97)
#define _OMC_LIT98_data "  end if"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT98,8,_OMC_LIT98_data);
#define _OMC_LIT98 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT98)
#define _OMC_LIT99_data "when "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT99,5,_OMC_LIT99_data);
#define _OMC_LIT99 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT99)
#define _OMC_LIT100_data " else"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT100,5,_OMC_LIT100_data);
#define _OMC_LIT100 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT100)
#define _OMC_LIT101_data "  when "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT101,7,_OMC_LIT101_data);
#define _OMC_LIT101 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT101)
#define _OMC_LIT102_data "  end when"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT102,10,_OMC_LIT102_data);
#define _OMC_LIT102 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT102)
#define _OMC_LIT103_data "  reinit("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT103,9,_OMC_LIT103_data);
#define _OMC_LIT103 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT103)
#define _OMC_LIT104_data "  /* unhandled equation in DAEDump.dumpEquationsStream FIXME! */\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT104,65,_OMC_LIT104_data);
#define _OMC_LIT104 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT104)
#define _OMC_LIT105_data " \""
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT105,2,_OMC_LIT105_data);
#define _OMC_LIT105 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT105)
#define _OMC_LIT106_data "\""
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT106,1,_OMC_LIT106_data);
#define _OMC_LIT106 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT106)
#define _OMC_LIT107_data "initial equation\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT107,17,_OMC_LIT107_data);
#define _OMC_LIT107 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT107)
#define _OMC_LIT108_data "equation\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT108,9,_OMC_LIT108_data);
#define _OMC_LIT108 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT108)
#define _OMC_LIT109_data "constraint\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT109,11,_OMC_LIT109_data);
#define _OMC_LIT109 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT109)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT110,10,3) {&SCodeDump_SCodeDumpOptions_OPTIONS__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),MMC_IMMEDIATE(MMC_TAGFIXNUM(1)),MMC_IMMEDIATE(MMC_TAGFIXNUM(1)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))}};
#define _OMC_LIT110 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT110)
#define _OMC_LIT111_data "class "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT111,6,_OMC_LIT111_data);
#define _OMC_LIT111 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT111)
#define _OMC_LIT112_data "__OpenModelica_builtin"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT112,22,_OMC_LIT112_data);
#define _OMC_LIT112 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT112)
#define _OMC_LIT113_data "OpenModelica"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT113,12,_OMC_LIT113_data);
#define _OMC_LIT113 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT113)
#define _OMC_LIT114_data "inlineFunctions"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT114,15,_OMC_LIT114_data);
#define _OMC_LIT114 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT114)
#define _OMC_LIT115_data "Controls if function inlining should be performed."
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT115,50,_OMC_LIT115_data);
#define _OMC_LIT115 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT115)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT116,2,3) {&Gettext_TranslatableContent_gettext__desc,_OMC_LIT115}};
#define _OMC_LIT116 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT116)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT117,5,3) {&Flags_DebugFlag_DEBUG__FLAG__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(89)),_OMC_LIT114,MMC_IMMEDIATE(MMC_TAGFIXNUM(1)),_OMC_LIT116}};
#define _OMC_LIT117 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT117)
#define _OMC_LIT118_data "constrs"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT118,7,_OMC_LIT118_data);
#define _OMC_LIT118 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT118)
#define _OMC_LIT119_data "algs"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT119,4,_OMC_LIT119_data);
#define _OMC_LIT119 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT119)
#define _OMC_LIT120_data "dae"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT120,3,_OMC_LIT120_data);
#define _OMC_LIT120 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT120)
#define _OMC_LIT121_data "["
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT121,1,_OMC_LIT121_data);
#define _OMC_LIT121 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT121)
#define _OMC_LIT122_data "]"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT122,1,_OMC_LIT122_data);
#define _OMC_LIT122 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT122)
#define _OMC_LIT123_data "VAR"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT123,3,_OMC_LIT123_data);
#define _OMC_LIT123 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT123)
#define _OMC_LIT124_data "= "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT124,2,_OMC_LIT124_data);
#define _OMC_LIT124 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT124)
#define _OMC_LIT125_data "DEFINE"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT125,6,_OMC_LIT125_data);
#define _OMC_LIT125 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT125)
#define _OMC_LIT126_data "EQUATION"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT126,8,_OMC_LIT126_data);
#define _OMC_LIT126 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT126)
#define _OMC_LIT127_data "="
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT127,1,_OMC_LIT127_data);
#define _OMC_LIT127 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT127)
#define _OMC_LIT128_data "EQUEQUATION"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT128,11,_OMC_LIT128_data);
#define _OMC_LIT128 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT128)
#define _OMC_LIT129_data "ALGORITHM"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT129,9,_OMC_LIT129_data);
#define _OMC_LIT129 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT129)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT130,4,3) {&Graphviz_Node_NODE__desc,_OMC_LIT129,MMC_REFSTRUCTLIT(mmc_nil),MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT130 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT130)
#define _OMC_LIT131_data "INITIALDEFINE"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT131,13,_OMC_LIT131_data);
#define _OMC_LIT131 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT131)
#define _OMC_LIT132_data "INITIALEQUATION"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT132,15,_OMC_LIT132_data);
#define _OMC_LIT132 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT132)
#define _OMC_LIT133_data "INITIALALGORITHM"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT133,16,_OMC_LIT133_data);
#define _OMC_LIT133 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT133)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT134,4,3) {&Graphviz_Node_NODE__desc,_OMC_LIT133,MMC_REFSTRUCTLIT(mmc_nil),MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT134 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT134)
#define _OMC_LIT135_data "COMP"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT135,4,_OMC_LIT135_data);
#define _OMC_LIT135 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT135)
#define _OMC_LIT136_data "\\\""
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT136,2,_OMC_LIT136_data);
#define _OMC_LIT136 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT136)
#define _OMC_LIT137_data "..."
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT137,3,_OMC_LIT137_data);
#define _OMC_LIT137 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT137)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT138,2,1) {_OMC_LIT137,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT138 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT138)
#define _OMC_LIT139_data "VARS"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT139,4,_OMC_LIT139_data);
#define _OMC_LIT139 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT139)
#define _OMC_LIT140_data "shape"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT140,5,_OMC_LIT140_data);
#define _OMC_LIT140 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT140)
#define _OMC_LIT141_data "box"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT141,3,_OMC_LIT141_data);
#define _OMC_LIT141 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT141)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT142,3,3) {&Graphviz_Attribute_ATTR__desc,_OMC_LIT140,_OMC_LIT141}};
#define _OMC_LIT142 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT142)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT143,2,1) {_OMC_LIT142,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT143 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT143)
#define _OMC_LIT144_data "DAE"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT144,3,_OMC_LIT144_data);
#define _OMC_LIT144 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT144)
#define _OMC_LIT145_data "flow"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT145,4,_OMC_LIT145_data);
#define _OMC_LIT145 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT145)
#define _OMC_LIT146_data "stream"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT146,6,_OMC_LIT146_data);
#define _OMC_LIT146 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT146)
#define _OMC_LIT147_data "effort"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT147,6,_OMC_LIT147_data);
#define _OMC_LIT147 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT147)
#define _OMC_LIT148_data "non_connector"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT148,13,_OMC_LIT148_data);
#define _OMC_LIT148 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT148)
#define _OMC_LIT149_data "VAR("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT149,4,_OMC_LIT149_data);
#define _OMC_LIT149 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT149)
#define _OMC_LIT150_data "  comment:"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT150,10,_OMC_LIT150_data);
#define _OMC_LIT150 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT150)
#define _OMC_LIT151_data ", binding: "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT151,11,_OMC_LIT151_data);
#define _OMC_LIT151 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT151)
#define _OMC_LIT152_data "DEFINE("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT152,7,_OMC_LIT152_data);
#define _OMC_LIT152 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT152)
#define _OMC_LIT153_data "INITIALDEFINE("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT153,14,_OMC_LIT153_data);
#define _OMC_LIT153 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT153)
#define _OMC_LIT154_data "EQUATION("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT154,9,_OMC_LIT154_data);
#define _OMC_LIT154 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT154)
#define _OMC_LIT155_data "INITIALEQUATION("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT155,16,_OMC_LIT155_data);
#define _OMC_LIT155 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT155)
#define _OMC_LIT156_data "ALGORITHM()"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT156,11,_OMC_LIT156_data);
#define _OMC_LIT156 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT156)
#define _OMC_LIT157_data "INITIALALGORITHM()"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT157,18,_OMC_LIT157_data);
#define _OMC_LIT157 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT157)
#define _OMC_LIT158_data "COMP("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT158,5,_OMC_LIT158_data);
#define _OMC_LIT158 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT158)
#define _OMC_LIT159_data "ARRAY_EQUATION("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT159,15,_OMC_LIT159_data);
#define _OMC_LIT159 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT159)
#define _OMC_LIT160_data "INITIAL_ARRAY_EQUATION("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT160,23,_OMC_LIT160_data);
#define _OMC_LIT160 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT160)
#define _OMC_LIT161_data "COMPLEX_EQUATION("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT161,17,_OMC_LIT161_data);
#define _OMC_LIT161 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT161)
#define _OMC_LIT162_data "INITIAL_COMPLEX_EQUATION("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT162,25,_OMC_LIT162_data);
#define _OMC_LIT162 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT162)
#define _OMC_LIT163_data "IF_EQUATION()"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT163,13,_OMC_LIT163_data);
#define _OMC_LIT163 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT163)
#define _OMC_LIT164_data "INITIAL_IF_EQUATION()"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT164,21,_OMC_LIT164_data);
#define _OMC_LIT164 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT164)
#define _OMC_LIT165_data "WHEN_EQUATION()"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT165,15,_OMC_LIT165_data);
#define _OMC_LIT165 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT165)
#define _OMC_LIT166_data "EXTOBJECTCLASS()"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT166,16,_OMC_LIT166_data);
#define _OMC_LIT166 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT166)
#define _OMC_LIT167_data "ASSERT("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT167,7,_OMC_LIT167_data);
#define _OMC_LIT167 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT167)
#define _OMC_LIT168_data "INITIAL_ASSERT("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT168,15,_OMC_LIT168_data);
#define _OMC_LIT168 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT168)
#define _OMC_LIT169_data "TERMINATE("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT169,10,_OMC_LIT169_data);
#define _OMC_LIT169 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT169)
#define _OMC_LIT170_data "INITIAL_TERMINATE("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT170,18,_OMC_LIT170_data);
#define _OMC_LIT170 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT170)
#define _OMC_LIT171_data "REINIT()"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT171,8,_OMC_LIT171_data);
#define _OMC_LIT171 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT171)
#define _OMC_LIT172_data "NORETCALL()"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT172,11,_OMC_LIT172_data);
#define _OMC_LIT172 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT172)
#define _OMC_LIT173_data "SM_COMP("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT173,8,_OMC_LIT173_data);
#define _OMC_LIT173 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT173)
#define _OMC_LIT174_data "FLAT_SM("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT174,8,_OMC_LIT174_data);
#define _OMC_LIT174 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT174)
#define _OMC_LIT175_data "UNKNOWN "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT175,8,_OMC_LIT175_data);
#define _OMC_LIT175 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT175)
#define _OMC_LIT176_data "DAE("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT176,4,_OMC_LIT176_data);
#define _OMC_LIT176 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT176)
#define _OMC_LIT177_data "elseif "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT177,7,_OMC_LIT177_data);
#define _OMC_LIT177 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT177)
#define _OMC_LIT178_data "else\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT178,5,_OMC_LIT178_data);
#define _OMC_LIT178 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT178)
#define _OMC_LIT179_data " := "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT179,4,_OMC_LIT179_data);
#define _OMC_LIT179 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT179)
#define _OMC_LIT180_data ") := "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT180,5,_OMC_LIT180_data);
#define _OMC_LIT180 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT180)
#define _OMC_LIT181_data "if "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT181,3,_OMC_LIT181_data);
#define _OMC_LIT181 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT181)
#define _OMC_LIT182_data "end if;\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT182,8,_OMC_LIT182_data);
#define _OMC_LIT182 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT182)
#define _OMC_LIT183_data "/* iter index "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT183,14,_OMC_LIT183_data);
#define _OMC_LIT183 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT183)
#define _OMC_LIT184_data " */"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT184,3,_OMC_LIT184_data);
#define _OMC_LIT184 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT184)
#define _OMC_LIT185_data "for "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT185,4,_OMC_LIT185_data);
#define _OMC_LIT185 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT185)
#define _OMC_LIT186_data "end for;\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT186,9,_OMC_LIT186_data);
#define _OMC_LIT186 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT186)
#define _OMC_LIT187_data "parfor "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT187,7,_OMC_LIT187_data);
#define _OMC_LIT187 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT187)
#define _OMC_LIT188_data "while "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT188,6,_OMC_LIT188_data);
#define _OMC_LIT188 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT188)
#define _OMC_LIT189_data "end while;\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT189,11,_OMC_LIT189_data);
#define _OMC_LIT189 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT189)
#define _OMC_LIT190_data "assert("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT190,7,_OMC_LIT190_data);
#define _OMC_LIT190 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT190)
#define _OMC_LIT191_data ");\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT191,3,_OMC_LIT191_data);
#define _OMC_LIT191 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT191)
#define _OMC_LIT192_data "terminate("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT192,10,_OMC_LIT192_data);
#define _OMC_LIT192 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT192)
#define _OMC_LIT193_data "return "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT193,7,_OMC_LIT193_data);
#define _OMC_LIT193 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT193)
#define _OMC_LIT194_data "return;\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT194,8,_OMC_LIT194_data);
#define _OMC_LIT194 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT194)
#define _OMC_LIT195_data "break;\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT195,7,_OMC_LIT195_data);
#define _OMC_LIT195 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT195)
#define _OMC_LIT196_data "reinit("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT196,7,_OMC_LIT196_data);
#define _OMC_LIT196 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT196)
#define _OMC_LIT197_data "failure(\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT197,9,_OMC_LIT197_data);
#define _OMC_LIT197 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT197)
#define _OMC_LIT198_data "arrayInit(\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT198,11,_OMC_LIT198_data);
#define _OMC_LIT198 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT198)
#define _OMC_LIT199_data "**ALGORITHM COULD NOT BE GENERATED(DAE.mo)**;\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT199,46,_OMC_LIT199_data);
#define _OMC_LIT199 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT199)
#define _OMC_LIT200_data "end when;\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT200,10,_OMC_LIT200_data);
#define _OMC_LIT200 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT200)
#define _OMC_LIT201_data "else"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT201,4,_OMC_LIT201_data);
#define _OMC_LIT201 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT201)
#define _OMC_LIT202_data " /* "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT202,4,_OMC_LIT202_data);
#define _OMC_LIT202 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT202)
#define _OMC_LIT203_data " /* iter index "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT203,15,_OMC_LIT203_data);
#define _OMC_LIT203 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT203)
#define _OMC_LIT204_data "end parfor;\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT204,12,_OMC_LIT204_data);
#define _OMC_LIT204 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT204)
#define _OMC_LIT205_data "begin failure\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT205,14,_OMC_LIT205_data);
#define _OMC_LIT205 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT205)
#define _OMC_LIT206_data "end try;\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT206,9,_OMC_LIT206_data);
#define _OMC_LIT206 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT206)
#define _OMC_LIT207_data "/* "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT207,3,_OMC_LIT207_data);
#define _OMC_LIT207 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT207)
#define _OMC_LIT208_data " := array_alloc("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT208,16,_OMC_LIT208_data);
#define _OMC_LIT208 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT208)
#define _OMC_LIT209_data ") */;\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT209,6,_OMC_LIT209_data);
#define _OMC_LIT209 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT209)
#define _OMC_LIT210_data "**ALGORITHM**;\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT210,15,_OMC_LIT210_data);
#define _OMC_LIT210 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT210)
#define _OMC_LIT211_data "protected "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT211,10,_OMC_LIT211_data);
#define _OMC_LIT211 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT211)
#define _OMC_LIT212_data "constant "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT212,9,_OMC_LIT212_data);
#define _OMC_LIT212 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT212)
#define _OMC_LIT213_data "input "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT213,6,_OMC_LIT213_data);
#define _OMC_LIT213 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT213)
#define _OMC_LIT214_data "\"Inline never\""
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT214,14,_OMC_LIT214_data);
#define _OMC_LIT214 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT214)
#define _OMC_LIT215_data " \"Inline after index reduction\""
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT215,31,_OMC_LIT215_data);
#define _OMC_LIT215 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT215)
#define _OMC_LIT216_data " \"Inline before index reduction\""
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT216,32,_OMC_LIT216_data);
#define _OMC_LIT216 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT216)
#define _OMC_LIT217_data "\"Inline if necessary\""
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT217,21,_OMC_LIT217_data);
#define _OMC_LIT217 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT217)
#define _OMC_LIT218_data "\"unknown\""
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT218,9,_OMC_LIT218_data);
#define _OMC_LIT218 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT218)
#define _OMC_LIT219_data "parallel "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT219,9,_OMC_LIT219_data);
#define _OMC_LIT219 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT219)
#define _OMC_LIT220_data "kernel "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT220,7,_OMC_LIT220_data);
#define _OMC_LIT220 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT220)
#define _OMC_LIT221_data "#dumpParallelismStr failed#"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT221,27,_OMC_LIT221_data);
#define _OMC_LIT221 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT221)
#define _OMC_LIT222_data "noDerivative("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT222,13,_OMC_LIT222_data);
#define _OMC_LIT222 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT222)
#define _OMC_LIT223_data "zeroDerivative"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT223,14,_OMC_LIT223_data);
#define _OMC_LIT223 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT223)
#define _OMC_LIT224_data "\n extends ExternalObject;\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT224,26,_OMC_LIT224_data);
#define _OMC_LIT224 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT224)
#define _OMC_LIT225_data " ::= "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT225,5,_OMC_LIT225_data);
#define _OMC_LIT225 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT225)
#define _OMC_LIT226_data "emptyStreamOfTypeList"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT226,21,_OMC_LIT226_data);
#define _OMC_LIT226 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT226)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT227,2,4) {&IOStream_IOStreamData_LIST__DATA__desc,MMC_REFSTRUCTLIT(mmc_nil)}};
#define _OMC_LIT227 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT227)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT228,4,3) {&IOStream_IOStream_IOSTREAM__desc,_OMC_LIT226,_OMC_LIT84,_OMC_LIT227}};
#define _OMC_LIT228 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT228)
#define _OMC_LIT229_data "/* FIXME: UNHANDLED_EQUATION in DAEDump.dumpEquation */;\n"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT229,57,_OMC_LIT229_data);
#define _OMC_LIT229 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT229)
#define _OMC_LIT230_data "Evaluate"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT230,8,_OMC_LIT230_data);
#define _OMC_LIT230 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT230)
#define _OMC_LIT231_data "Inline"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT231,6,_OMC_LIT231_data);
#define _OMC_LIT231 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT231)
#define _OMC_LIT232_data "LateInline"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT232,10,_OMC_LIT232_data);
#define _OMC_LIT232 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT232)
#define _OMC_LIT233_data "derivative"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT233,10,_OMC_LIT233_data);
#define _OMC_LIT233 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT233)
#define _OMC_LIT234_data "inverse"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT234,7,_OMC_LIT234_data);
#define _OMC_LIT234 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT234)
#define _OMC_LIT235_data "smoothOrder"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT235,11,_OMC_LIT235_data);
#define _OMC_LIT235 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT235)
#define _OMC_LIT236_data "InlineAfterIndexReduction"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT236,25,_OMC_LIT236_data);
#define _OMC_LIT236 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT236)
#define _OMC_LIT237_data "GenerateEvents"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT237,14,_OMC_LIT237_data);
#define _OMC_LIT237 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT237)
#define _OMC_LIT238_data "annotation"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT238,10,_OMC_LIT238_data);
#define _OMC_LIT238 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT238)
#define _OMC_LIT239_data "parglobal "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT239,10,_OMC_LIT239_data);
#define _OMC_LIT239 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT239)
#define _OMC_LIT240_data "parlocal "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT240,9,_OMC_LIT240_data);
#define _OMC_LIT240 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT240)
#define _OMC_LIT241_data "startOrigin = "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT241,14,_OMC_LIT241_data);
#define _OMC_LIT241 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT241)
#define _OMC_LIT242_data "showStartOrigin"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT242,15,_OMC_LIT242_data);
#define _OMC_LIT242 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT242)
#define _OMC_LIT243_data "Enables dumping of the DAE startOrigin attribute of the variables."
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT243,66,_OMC_LIT243_data);
#define _OMC_LIT243 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT243)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT244,2,3) {&Gettext_TranslatableContent_gettext__desc,_OMC_LIT243}};
#define _OMC_LIT244 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT244)
static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT245,5,3) {&Flags_DebugFlag_DEBUG__FLAG__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(75)),_OMC_LIT242,MMC_IMMEDIATE(MMC_TAGFIXNUM(0)),_OMC_LIT244}};
#define _OMC_LIT245 MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT245)
#define _OMC_LIT246_data "quantity = "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT246,11,_OMC_LIT246_data);
#define _OMC_LIT246 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT246)
#define _OMC_LIT247_data "unit = "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT247,7,_OMC_LIT247_data);
#define _OMC_LIT247 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT247)
#define _OMC_LIT248_data "displayUnit = "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT248,14,_OMC_LIT248_data);
#define _OMC_LIT248 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT248)
#define _OMC_LIT249_data "stateSelect = "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT249,14,_OMC_LIT249_data);
#define _OMC_LIT249 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT249)
#define _OMC_LIT250_data "min = "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT250,6,_OMC_LIT250_data);
#define _OMC_LIT250 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT250)
#define _OMC_LIT251_data "max = "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT251,6,_OMC_LIT251_data);
#define _OMC_LIT251 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT251)
#define _OMC_LIT252_data "nominal = "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT252,10,_OMC_LIT252_data);
#define _OMC_LIT252 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT252)
#define _OMC_LIT253_data "start = "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT253,8,_OMC_LIT253_data);
#define _OMC_LIT253 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT253)
#define _OMC_LIT254_data "fixed = "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT254,8,_OMC_LIT254_data);
#define _OMC_LIT254 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT254)
#define _OMC_LIT255_data "uncertainty = "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT255,14,_OMC_LIT255_data);
#define _OMC_LIT255 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT255)
#define _OMC_LIT256_data "distribution = "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT256,15,_OMC_LIT256_data);
#define _OMC_LIT256 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT256)
#define _OMC_LIT257_data "(unknown VariableAttributes)"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT257,28,_OMC_LIT257_data);
#define _OMC_LIT257 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT257)
#define _OMC_LIT258_data "Distribution(name = "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT258,20,_OMC_LIT258_data);
#define _OMC_LIT258 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT258)
#define _OMC_LIT259_data ", params = "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT259,11,_OMC_LIT259_data);
#define _OMC_LIT259 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT259)
#define _OMC_LIT260_data ", paramNames= "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT260,14,_OMC_LIT260_data);
#define _OMC_LIT260 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT260)
#define _OMC_LIT261_data "Uncertainty.given"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT261,17,_OMC_LIT261_data);
#define _OMC_LIT261 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT261)
#define _OMC_LIT262_data "Uncertainty.sought"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT262,18,_OMC_LIT262_data);
#define _OMC_LIT262 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT262)
#define _OMC_LIT263_data "Uncertainty.refine"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT263,18,_OMC_LIT263_data);
#define _OMC_LIT263 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT263)
#define _OMC_LIT264_data "StateSelect.never"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT264,17,_OMC_LIT264_data);
#define _OMC_LIT264 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT264)
#define _OMC_LIT265_data "StateSelect.avoid"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT265,17,_OMC_LIT265_data);
#define _OMC_LIT265 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT265)
#define _OMC_LIT266_data "StateSelect.prefer"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT266,18,_OMC_LIT266_data);
#define _OMC_LIT266 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT266)
#define _OMC_LIT267_data "StateSelect.always"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT267,18,_OMC_LIT267_data);
#define _OMC_LIT267 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT267)
#define _OMC_LIT268_data "StateSelect.default"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT268,19,_OMC_LIT268_data);
#define _OMC_LIT268 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT268)
#define _OMC_LIT269_data "output "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT269,7,_OMC_LIT269_data);
#define _OMC_LIT269 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT269)
#define _OMC_LIT270_data "        "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT270,8,_OMC_LIT270_data);
#define _OMC_LIT270 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT270)
#define _OMC_LIT271_data " parglobal "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT271,11,_OMC_LIT271_data);
#define _OMC_LIT271 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT271)
#define _OMC_LIT272_data " parlocal "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT272,10,_OMC_LIT272_data);
#define _OMC_LIT272 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT272)
#define _OMC_LIT273_data " input  "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT273,8,_OMC_LIT273_data);
#define _OMC_LIT273 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT273)
#define _OMC_LIT274_data " output "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT274,8,_OMC_LIT274_data);
#define _OMC_LIT274 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT274)
#define _OMC_LIT275_data "parameter "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT275,10,_OMC_LIT275_data);
#define _OMC_LIT275 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT275)
#define _OMC_LIT276_data "discrete "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT276,9,_OMC_LIT276_data);
#define _OMC_LIT276 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT276)
#define _OMC_LIT277_data " constant  "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT277,11,_OMC_LIT277_data);
#define _OMC_LIT277 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT277)
#define _OMC_LIT278_data " parameter "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT278,11,_OMC_LIT278_data);
#define _OMC_LIT278 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT278)
#define _OMC_LIT279_data " discrete  "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT279,11,_OMC_LIT279_data);
#define _OMC_LIT279 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT279)
#define _OMC_LIT280_data "           "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT280,11,_OMC_LIT280_data);
#define _OMC_LIT280 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT280)
#define _OMC_LIT281_data "size("
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT281,5,_OMC_LIT281_data);
#define _OMC_LIT281 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT281)
#define _OMC_LIT282_data "external \""
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT282,10,_OMC_LIT282_data);
#define _OMC_LIT282 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT282)
#define _OMC_LIT283_data "\" "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT283,2,_OMC_LIT283_data);
#define _OMC_LIT283 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT283)
#define _OMC_LIT284_data ");"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT284,2,_OMC_LIT284_data);
#define _OMC_LIT284 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT284)
#define _OMC_LIT285_data "(start="
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT285,7,_OMC_LIT285_data);
#define _OMC_LIT285 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT285)
#define _OMC_LIT286_data " + "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT286,3,_OMC_LIT286_data);
#define _OMC_LIT286 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT286)
#define _OMC_LIT287_data " - "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT287,3,_OMC_LIT287_data);
#define _OMC_LIT287 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT287)
#define _OMC_LIT288_data " .* "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT288,4,_OMC_LIT288_data);
#define _OMC_LIT288 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT288)
#define _OMC_LIT289_data " / "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT289,3,_OMC_LIT289_data);
#define _OMC_LIT289 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT289)
#define _OMC_LIT290_data " ^ "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT290,3,_OMC_LIT290_data);
#define _OMC_LIT290 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT290)
#define _OMC_LIT291_data " ./ "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT291,4,_OMC_LIT291_data);
#define _OMC_LIT291 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT291)
#define _OMC_LIT292_data " * "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT292,3,_OMC_LIT292_data);
#define _OMC_LIT292 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT292)
#define _OMC_LIT293_data " .+ "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT293,4,_OMC_LIT293_data);
#define _OMC_LIT293 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT293)
#define _OMC_LIT294_data " .- "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT294,4,_OMC_LIT294_data);
#define _OMC_LIT294 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT294)
#define _OMC_LIT295_data " .^ "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT295,4,_OMC_LIT295_data);
#define _OMC_LIT295 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT295)
#define _OMC_LIT296_data " or "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT296,4,_OMC_LIT296_data);
#define _OMC_LIT296 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT296)
#define _OMC_LIT297_data " and "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT297,5,_OMC_LIT297_data);
#define _OMC_LIT297 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT297)
#define _OMC_LIT298_data " not "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT298,5,_OMC_LIT298_data);
#define _OMC_LIT298 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT298)
#define _OMC_LIT299_data " <= "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT299,4,_OMC_LIT299_data);
#define _OMC_LIT299 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT299)
#define _OMC_LIT300_data " > "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT300,3,_OMC_LIT300_data);
#define _OMC_LIT300 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT300)
#define _OMC_LIT301_data " >= "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT301,4,_OMC_LIT301_data);
#define _OMC_LIT301 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT301)
#define _OMC_LIT302_data " < "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT302,3,_OMC_LIT302_data);
#define _OMC_LIT302 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT302)
#define _OMC_LIT303_data " == "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT303,4,_OMC_LIT303_data);
#define _OMC_LIT303 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT303)
#define _OMC_LIT304_data " <> "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT304,4,_OMC_LIT304_data);
#define _OMC_LIT304 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT304)
#define _OMC_LIT305_data " Userdefined:"
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT305,13,_OMC_LIT305_data);
#define _OMC_LIT305 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT305)
#define _OMC_LIT306_data " --UNDEFINED-- "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT306,15,_OMC_LIT306_data);
#define _OMC_LIT306 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT306)
#define _OMC_LIT307_data " ADD "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT307,5,_OMC_LIT307_data);
#define _OMC_LIT307 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT307)
#define _OMC_LIT308_data " SUB "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT308,5,_OMC_LIT308_data);
#define _OMC_LIT308 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT308)
#define _OMC_LIT309_data " MUL "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT309,5,_OMC_LIT309_data);
#define _OMC_LIT309 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT309)
#define _OMC_LIT310_data " DIV "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT310,5,_OMC_LIT310_data);
#define _OMC_LIT310 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT310)
#define _OMC_LIT311_data " POW "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT311,5,_OMC_LIT311_data);
#define _OMC_LIT311 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT311)
#define _OMC_LIT312_data " UMINUS "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT312,8,_OMC_LIT312_data);
#define _OMC_LIT312 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT312)
#define _OMC_LIT313_data " UMINUS_ARR "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT313,12,_OMC_LIT313_data);
#define _OMC_LIT313 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT313)
#define _OMC_LIT314_data " ADD_ARR "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT314,9,_OMC_LIT314_data);
#define _OMC_LIT314 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT314)
#define _OMC_LIT315_data " SUB_ARR "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT315,9,_OMC_LIT315_data);
#define _OMC_LIT315 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT315)
#define _OMC_LIT316_data " MUL_ARR "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT316,9,_OMC_LIT316_data);
#define _OMC_LIT316 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT316)
#define _OMC_LIT317_data " DIV_ARR "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT317,9,_OMC_LIT317_data);
#define _OMC_LIT317 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT317)
#define _OMC_LIT318_data " MUL_ARRAY_SCALAR "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT318,18,_OMC_LIT318_data);
#define _OMC_LIT318 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT318)
#define _OMC_LIT319_data " ADD_ARRAY_SCALAR "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT319,18,_OMC_LIT319_data);
#define _OMC_LIT319 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT319)
#define _OMC_LIT320_data " SUB_SCALAR_ARRAY "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT320,18,_OMC_LIT320_data);
#define _OMC_LIT320 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT320)
#define _OMC_LIT321_data " MUL_SCALAR_PRODUCT "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT321,20,_OMC_LIT321_data);
#define _OMC_LIT321 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT321)
#define _OMC_LIT322_data " MUL_MATRIX_PRODUCT "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT322,20,_OMC_LIT322_data);
#define _OMC_LIT322 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT322)
#define _OMC_LIT323_data " DIV_ARRAY_SCALAR "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT323,18,_OMC_LIT323_data);
#define _OMC_LIT323 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT323)
#define _OMC_LIT324_data " DIV_SCALAR_ARRAY "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT324,18,_OMC_LIT324_data);
#define _OMC_LIT324 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT324)
#define _OMC_LIT325_data " POW_ARRAY_SCALAR "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT325,18,_OMC_LIT325_data);
#define _OMC_LIT325 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT325)
#define _OMC_LIT326_data " POW_SCALAR_ARRAY "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT326,18,_OMC_LIT326_data);
#define _OMC_LIT326 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT326)
#define _OMC_LIT327_data " POW_ARR "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT327,9,_OMC_LIT327_data);
#define _OMC_LIT327 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT327)
#define _OMC_LIT328_data " POW_ARR2 "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT328,10,_OMC_LIT328_data);
#define _OMC_LIT328 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT328)
#define _OMC_LIT329_data " OR "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT329,4,_OMC_LIT329_data);
#define _OMC_LIT329 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT329)
#define _OMC_LIT330_data " AND "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT330,5,_OMC_LIT330_data);
#define _OMC_LIT330 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT330)
#define _OMC_LIT331_data " NOT "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT331,5,_OMC_LIT331_data);
#define _OMC_LIT331 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT331)
#define _OMC_LIT332_data " LESSEQ "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT332,8,_OMC_LIT332_data);
#define _OMC_LIT332 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT332)
#define _OMC_LIT333_data " GREATER "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT333,9,_OMC_LIT333_data);
#define _OMC_LIT333 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT333)
#define _OMC_LIT334_data " GREATEREQ "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT334,11,_OMC_LIT334_data);
#define _OMC_LIT334 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT334)
#define _OMC_LIT335_data " LESS "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT335,6,_OMC_LIT335_data);
#define _OMC_LIT335 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT335)
#define _OMC_LIT336_data " EQUAL "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT336,7,_OMC_LIT336_data);
#define _OMC_LIT336 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT336)
#define _OMC_LIT337_data " NEQUAL "
static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT337,8,_OMC_LIT337_data);
#define _OMC_LIT337 MMC_REFSTRINGLIT(_OMC_LIT_STRUCT337)
#include "util/modelica.h"
#include "DAEDump_includes.h"
#if !defined(PROTECTED_FUNCTION_STATIC)
#define PROTECTED_FUNCTION_STATIC
#endif
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_withinString(threadData_t *threadData, modelica_metatype _w);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_withinString,2,0) {(void*) boxptr_DAEDump_withinString,0}};
#define boxvar_DAEDump_withinString MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_withinString)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_DAEDump_connectsStr(threadData_t *threadData, modelica_metatype _inLst);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_connectsStr,2,0) {(void*) boxptr_DAEDump_connectsStr,0}};
#define boxvar_DAEDump_connectsStr MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_connectsStr)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_DAEDump_dumpFunctionStream(threadData_t *threadData, modelica_metatype _inElement, modelica_metatype _inStream);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpFunctionStream,2,0) {(void*) boxptr_DAEDump_dumpFunctionStream,0}};
#define boxvar_DAEDump_dumpFunctionStream MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpFunctionStream)
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_dumpExtObjClassStr(threadData_t *threadData, modelica_metatype _inElement);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpExtObjClassStr,2,0) {(void*) boxptr_DAEDump_dumpExtObjClassStr,0}};
#define boxvar_DAEDump_dumpExtObjClassStr MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpExtObjClassStr)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_DAEDump_dumpVarStream(threadData_t *threadData, modelica_metatype _inElement, modelica_boolean _printTypeDimension, modelica_metatype _inStream);
PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_DAEDump_dumpVarStream(threadData_t *threadData, modelica_metatype _inElement, modelica_metatype _printTypeDimension, modelica_metatype _inStream);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpVarStream,2,0) {(void*) boxptr_DAEDump_dumpVarStream,0}};
#define boxvar_DAEDump_dumpVarStream MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpVarStream)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_DAEDump_dumpInitialEquationsStream(threadData_t *threadData, modelica_metatype _inElementLst, modelica_metatype _inStream);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpInitialEquationsStream,2,0) {(void*) boxptr_DAEDump_dumpInitialEquationsStream,0}};
#define boxvar_DAEDump_dumpInitialEquationsStream MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpInitialEquationsStream)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_DAEDump_dumpIfEquationsStream(threadData_t *threadData, modelica_metatype _iconds, modelica_metatype _itbs, modelica_metatype _inStream);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpIfEquationsStream,2,0) {(void*) boxptr_DAEDump_dumpIfEquationsStream,0}};
#define boxvar_DAEDump_dumpIfEquationsStream MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpIfEquationsStream)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_DAEDump_dumpEquationsStream(threadData_t *threadData, modelica_metatype _inElementLst, modelica_metatype _inStream);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpEquationsStream,2,0) {(void*) boxptr_DAEDump_dumpEquationsStream,0}};
#define boxvar_DAEDump_dumpEquationsStream MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpEquationsStream)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_DAEDump_dumpInitialAlgorithmsStream(threadData_t *threadData, modelica_metatype _inElementLst, modelica_metatype _inStream);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpInitialAlgorithmsStream,2,0) {(void*) boxptr_DAEDump_dumpInitialAlgorithmsStream,0}};
#define boxvar_DAEDump_dumpInitialAlgorithmsStream MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpInitialAlgorithmsStream)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_DAEDump_dumpCompElementStream(threadData_t *threadData, modelica_metatype _inElement, modelica_metatype _inStream);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpCompElementStream,2,0) {(void*) boxptr_DAEDump_dumpCompElementStream,0}};
#define boxvar_DAEDump_dumpCompElementStream MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpCompElementStream)
PROTECTED_FUNCTION_STATIC modelica_boolean omc_DAEDump_isVisibleFunction(threadData_t *threadData, modelica_metatype _inFunc, modelica_boolean _inHideRecordCons, modelica_boolean _inInliningEnabled);
PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_DAEDump_isVisibleFunction(threadData_t *threadData, modelica_metatype _inFunc, modelica_metatype _inHideRecordCons, modelica_metatype _inInliningEnabled);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_isVisibleFunction,2,0) {(void*) boxptr_DAEDump_isVisibleFunction,0}};
#define boxvar_DAEDump_isVisibleFunction MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_isVisibleFunction)
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_unparseType(threadData_t *threadData, modelica_metatype _tp);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_unparseType,2,0) {(void*) boxptr_DAEDump_unparseType,0}};
#define boxvar_DAEDump_unparseType MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_unparseType)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_DAEDump_buildGrElement(threadData_t *threadData, modelica_metatype _inElement);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_buildGrElement,2,0) {(void*) boxptr_DAEDump_buildGrElement,0}};
#define boxvar_DAEDump_buildGrElement MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_buildGrElement)
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_printExpStrSpecial(threadData_t *threadData, modelica_metatype _inExp);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_printExpStrSpecial,2,0) {(void*) boxptr_DAEDump_printExpStrSpecial,0}};
#define boxvar_DAEDump_printExpStrSpecial MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_printExpStrSpecial)
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_buildGrVarStr(threadData_t *threadData, modelica_metatype _inElement);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_buildGrVarStr,2,0) {(void*) boxptr_DAEDump_buildGrVarStr,0}};
#define boxvar_DAEDump_buildGrVarStr MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_buildGrVarStr)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_DAEDump_buildGrVars(threadData_t *threadData, modelica_metatype _inElementLst);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_buildGrVars,2,0) {(void*) boxptr_DAEDump_buildGrVars,0}};
#define boxvar_DAEDump_buildGrVars MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_buildGrVars)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_DAEDump_buildGrList(threadData_t *threadData, modelica_metatype _inElementLst);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_buildGrList,2,0) {(void*) boxptr_DAEDump_buildGrList,0}};
#define boxvar_DAEDump_buildGrList MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_buildGrList)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_DAEDump_buildGraphviz(threadData_t *threadData, modelica_metatype _inDAElist);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_buildGraphviz,2,0) {(void*) boxptr_DAEDump_buildGraphviz,0}};
#define boxvar_DAEDump_buildGraphviz MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_buildGraphviz)
PROTECTED_FUNCTION_STATIC void omc_DAEDump_dumpDebugElist(threadData_t *threadData, modelica_metatype _inElementLst);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpDebugElist,2,0) {(void*) boxptr_DAEDump_dumpDebugElist,0}};
#define boxvar_DAEDump_dumpDebugElist MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpDebugElist)
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_indentStr(threadData_t *threadData, modelica_integer _inInteger);
PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_DAEDump_indentStr(threadData_t *threadData, modelica_metatype _inInteger);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_indentStr,2,0) {(void*) boxptr_DAEDump_indentStr,0}};
#define boxvar_DAEDump_indentStr MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_indentStr)
PROTECTED_FUNCTION_STATIC void omc_DAEDump_indent(threadData_t *threadData, modelica_integer _inInteger);
PROTECTED_FUNCTION_STATIC void boxptr_DAEDump_indent(threadData_t *threadData, modelica_metatype _inInteger);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_indent,2,0) {(void*) boxptr_DAEDump_indent,0}};
#define boxvar_DAEDump_indent MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_indent)
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_ppElseStr(threadData_t *threadData, modelica_metatype _inElse, modelica_integer _inInteger);
PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_DAEDump_ppElseStr(threadData_t *threadData, modelica_metatype _inElse, modelica_metatype _inInteger);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_ppElseStr,2,0) {(void*) boxptr_DAEDump_ppElseStr,0}};
#define boxvar_DAEDump_ppElseStr MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_ppElseStr)
PROTECTED_FUNCTION_STATIC void omc_DAEDump_ppElse(threadData_t *threadData, modelica_metatype _inElse, modelica_integer _inInteger);
PROTECTED_FUNCTION_STATIC void boxptr_DAEDump_ppElse(threadData_t *threadData, modelica_metatype _inElse, modelica_metatype _inInteger);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_ppElse,2,0) {(void*) boxptr_DAEDump_ppElse,0}};
#define boxvar_DAEDump_ppElse MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_ppElse)
PROTECTED_FUNCTION_STATIC void omc_DAEDump_ppStmtList(threadData_t *threadData, modelica_metatype _inAlgorithmStatementLst, modelica_integer _inInteger);
PROTECTED_FUNCTION_STATIC void boxptr_DAEDump_ppStmtList(threadData_t *threadData, modelica_metatype _inAlgorithmStatementLst, modelica_metatype _inInteger);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_ppStmtList,2,0) {(void*) boxptr_DAEDump_ppStmtList,0}};
#define boxvar_DAEDump_ppStmtList MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_ppStmtList)
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_ppWhenStmtStr(threadData_t *threadData, modelica_metatype _inStatement, modelica_integer _inInteger);
PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_DAEDump_ppWhenStmtStr(threadData_t *threadData, modelica_metatype _inStatement, modelica_metatype _inInteger);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_ppWhenStmtStr,2,0) {(void*) boxptr_DAEDump_ppWhenStmtStr,0}};
#define boxvar_DAEDump_ppWhenStmtStr MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_ppWhenStmtStr)
PROTECTED_FUNCTION_STATIC void omc_DAEDump_ppStmt(threadData_t *threadData, modelica_metatype _inStatement, modelica_integer _inInteger);
PROTECTED_FUNCTION_STATIC void boxptr_DAEDump_ppStmt(threadData_t *threadData, modelica_metatype _inStatement, modelica_metatype _inInteger);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_ppStmt,2,0) {(void*) boxptr_DAEDump_ppStmt,0}};
#define boxvar_DAEDump_ppStmt MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_ppStmt)
PROTECTED_FUNCTION_STATIC void omc_DAEDump_ppStatement(threadData_t *threadData, modelica_metatype _alg);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_ppStatement,2,0) {(void*) boxptr_DAEDump_ppStatement,0}};
#define boxvar_DAEDump_ppStatement MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_ppStatement)
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_printRecordConstructorBinding(threadData_t *threadData, modelica_metatype _binding);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_printRecordConstructorBinding,2,0) {(void*) boxptr_DAEDump_printRecordConstructorBinding,0}};
#define boxvar_DAEDump_printRecordConstructorBinding MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_printRecordConstructorBinding)
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_printRecordConstructorInputAttrStr(threadData_t *threadData, modelica_metatype _inAttributes);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_printRecordConstructorInputAttrStr,2,0) {(void*) boxptr_DAEDump_printRecordConstructorInputAttrStr,0}};
#define boxvar_DAEDump_printRecordConstructorInputAttrStr MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_printRecordConstructorInputAttrStr)
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_printRecordConstructorInputStr(threadData_t *threadData, modelica_metatype _inVar);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_printRecordConstructorInputStr,2,0) {(void*) boxptr_DAEDump_printRecordConstructorInputStr,0}};
#define boxvar_DAEDump_printRecordConstructorInputStr MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_printRecordConstructorInputStr)
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_printRecordConstructorInputsStr(threadData_t *threadData, modelica_metatype _itp);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_printRecordConstructorInputsStr,2,0) {(void*) boxptr_DAEDump_printRecordConstructorInputsStr,0}};
#define boxvar_DAEDump_printRecordConstructorInputsStr MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_printRecordConstructorInputsStr)
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_dumpParallelismStr(threadData_t *threadData, modelica_metatype _inType);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpParallelismStr,2,0) {(void*) boxptr_DAEDump_dumpParallelismStr,0}};
#define boxvar_DAEDump_dumpParallelismStr MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpParallelismStr)
PROTECTED_FUNCTION_STATIC void omc_DAEDump_dumpFunction(threadData_t *threadData, modelica_metatype _inElement);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpFunction,2,0) {(void*) boxptr_DAEDump_dumpFunction,0}};
#define boxvar_DAEDump_dumpFunction MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpFunction)
PROTECTED_FUNCTION_STATIC void omc_DAEDump_dumpExtObjectClass(threadData_t *threadData, modelica_metatype _inElement);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpExtObjectClass,2,0) {(void*) boxptr_DAEDump_dumpExtObjectClass,0}};
#define boxvar_DAEDump_dumpExtObjectClass MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpExtObjectClass)
PROTECTED_FUNCTION_STATIC void omc_DAEDump_dumpInitialAlgorithm(threadData_t *threadData, modelica_metatype _inElement);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpInitialAlgorithm,2,0) {(void*) boxptr_DAEDump_dumpInitialAlgorithm,0}};
#define boxvar_DAEDump_dumpInitialAlgorithm MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpInitialAlgorithm)
PROTECTED_FUNCTION_STATIC void omc_DAEDump_dumpInitialEquation(threadData_t *threadData, modelica_metatype _inElement);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpInitialEquation,2,0) {(void*) boxptr_DAEDump_dumpInitialEquation,0}};
#define boxvar_DAEDump_dumpInitialEquation MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpInitialEquation)
PROTECTED_FUNCTION_STATIC void omc_DAEDump_dumpEquation(threadData_t *threadData, modelica_metatype _inElement);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpEquation,2,0) {(void*) boxptr_DAEDump_dumpEquation,0}};
#define boxvar_DAEDump_dumpEquation MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpEquation)
PROTECTED_FUNCTION_STATIC void omc_DAEDump_dumpCommentOption(threadData_t *threadData, modelica_metatype _comment);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpCommentOption,2,0) {(void*) boxptr_DAEDump_dumpCommentOption,0}};
#define boxvar_DAEDump_dumpCommentOption MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpCommentOption)
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_dumpAnnotationStr(threadData_t *threadData, modelica_metatype _inComment, modelica_string _inPrefix, modelica_string _inSuffix);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpAnnotationStr,2,0) {(void*) boxptr_DAEDump_dumpAnnotationStr,0}};
#define boxvar_DAEDump_dumpAnnotationStr MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpAnnotationStr)
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_dumpCompAnnotationStr(threadData_t *threadData, modelica_metatype _inComment);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpCompAnnotationStr,2,0) {(void*) boxptr_DAEDump_dumpCompAnnotationStr,0}};
#define boxvar_DAEDump_dumpCompAnnotationStr MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpCompAnnotationStr)
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_dumpClassAnnotationStr(threadData_t *threadData, modelica_metatype _inComment);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpClassAnnotationStr,2,0) {(void*) boxptr_DAEDump_dumpClassAnnotationStr,0}};
#define boxvar_DAEDump_dumpClassAnnotationStr MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpClassAnnotationStr)
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_dumpCommentStr(threadData_t *threadData, modelica_metatype _inComment);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpCommentStr,2,0) {(void*) boxptr_DAEDump_dumpCommentStr,0}};
#define boxvar_DAEDump_dumpCommentStr MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpCommentStr)
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_dumpVarVisibilityStr(threadData_t *threadData, modelica_metatype _prot);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpVarVisibilityStr,2,0) {(void*) boxptr_DAEDump_dumpVarVisibilityStr,0}};
#define boxvar_DAEDump_dumpVarVisibilityStr MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpVarVisibilityStr)
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_getStartOrigin(threadData_t *threadData, modelica_metatype _inStartOrigin);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_getStartOrigin,2,0) {(void*) boxptr_DAEDump_getStartOrigin,0}};
#define boxvar_DAEDump_getStartOrigin MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_getStartOrigin)
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_dumpDistributionStr(threadData_t *threadData, modelica_metatype _distribution);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpDistributionStr,2,0) {(void*) boxptr_DAEDump_dumpDistributionStr,0}};
#define boxvar_DAEDump_dumpDistributionStr MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpDistributionStr)
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_dumpUncertaintyStr(threadData_t *threadData, modelica_metatype _uncertainty);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpUncertaintyStr,2,0) {(void*) boxptr_DAEDump_dumpUncertaintyStr,0}};
#define boxvar_DAEDump_dumpUncertaintyStr MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpUncertaintyStr)
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_dumpStateSelectStr(threadData_t *threadData, modelica_metatype _inStateSelect);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpStateSelectStr,2,0) {(void*) boxptr_DAEDump_dumpStateSelectStr,0}};
#define boxvar_DAEDump_dumpStateSelectStr MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpStateSelectStr)
PROTECTED_FUNCTION_STATIC void omc_DAEDump_dumpParallelism(threadData_t *threadData, modelica_metatype _inVarParallelism);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpParallelism,2,0) {(void*) boxptr_DAEDump_dumpParallelism,0}};
#define boxvar_DAEDump_dumpParallelism MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpParallelism)
PROTECTED_FUNCTION_STATIC void omc_DAEDump_dumpDirection(threadData_t *threadData, modelica_metatype _inVarDirection);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpDirection,2,0) {(void*) boxptr_DAEDump_dumpDirection,0}};
#define boxvar_DAEDump_dumpDirection MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpDirection)
PROTECTED_FUNCTION_STATIC void omc_DAEDump_dumpKind(threadData_t *threadData, modelica_metatype _inVarKind);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpKind,2,0) {(void*) boxptr_DAEDump_dumpKind,0}};
#define boxvar_DAEDump_dumpKind MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpKind)
PROTECTED_FUNCTION_STATIC void omc_DAEDump_dumpVars(threadData_t *threadData, modelica_metatype _lst, modelica_boolean _printTypeDimension);
PROTECTED_FUNCTION_STATIC void boxptr_DAEDump_dumpVars(threadData_t *threadData, modelica_metatype _lst, modelica_metatype _printTypeDimension);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpVars,2,0) {(void*) boxptr_DAEDump_dumpVars,0}};
#define boxvar_DAEDump_dumpVars MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpVars)
PROTECTED_FUNCTION_STATIC void omc_DAEDump_dumpCompElement(threadData_t *threadData, modelica_metatype _inElement);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpCompElement,2,0) {(void*) boxptr_DAEDump_dumpCompElement,0}};
#define boxvar_DAEDump_dumpCompElement MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpCompElement)
PROTECTED_FUNCTION_STATIC void omc_DAEDump_dumpStartValue(threadData_t *threadData, modelica_metatype _inStartValue);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_dumpStartValue,2,0) {(void*) boxptr_DAEDump_dumpStartValue,0}};
#define boxvar_DAEDump_dumpStartValue MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_dumpStartValue)
PROTECTED_FUNCTION_STATIC modelica_boolean omc_DAEDump_funcGreaterThan(threadData_t *threadData, modelica_metatype _func1, modelica_metatype _func2);
PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_DAEDump_funcGreaterThan(threadData_t *threadData, modelica_metatype _func1, modelica_metatype _func2);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_funcGreaterThan,2,0) {(void*) boxptr_DAEDump_funcGreaterThan,0}};
#define boxvar_DAEDump_funcGreaterThan MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_funcGreaterThan)
PROTECTED_FUNCTION_STATIC modelica_metatype omc_DAEDump_sortFunctions(threadData_t *threadData, modelica_metatype _funcs);
static const MMC_DEFSTRUCTLIT(boxvar_lit_DAEDump_sortFunctions,2,0) {(void*) boxptr_DAEDump_sortFunctions,0}};
#define boxvar_DAEDump_sortFunctions MMC_REFSTRUCTLIT(boxvar_lit_DAEDump_sortFunctions)
DLLExport
modelica_string omc_DAEDump_dumpDebugElementStr(threadData_t *threadData, modelica_metatype _inElement)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[5] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp4_1;
tmp4_1 = _inElement;
{
modelica_metatype _path = NULL;
modelica_string _s1 = NULL;
modelica_string _s2 = NULL;
modelica_string _sourceStr = NULL;
modelica_metatype _e1 = NULL;
modelica_metatype _e2 = NULL;
modelica_metatype _c = NULL;
modelica_metatype _cr1 = NULL;
modelica_metatype _cr2 = NULL;
modelica_metatype _elst = NULL;
modelica_metatype _src = NULL;
modelica_metatype _cmt = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp3_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp4 < 24; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,0,13) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
_c = tmpMeta[0];
tmp4 += 22;
_s1 = omc_ComponentReference_printComponentRefStr(threadData, _c);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT0, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 1: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,1,3) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
_c = tmpMeta[0];
_src = tmpMeta[1];
tmp4 += 21;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = omc_ComponentReference_printComponentRefStr(threadData, _c);
tmpMeta[0] = stringAppend(_sourceStr,_OMC_LIT1);
tmpMeta[1] = stringAppend(_s1,tmpMeta[0]);
tmp1 = tmpMeta[1];
goto tmp3_done;
}
case 2: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,2,3) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
_c = tmpMeta[0];
_src = tmpMeta[1];
tmp4 += 20;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = omc_ComponentReference_printComponentRefStr(threadData, _c);
tmpMeta[0] = stringAppend(_sourceStr,_OMC_LIT1);
tmpMeta[1] = stringAppend(_s1,tmpMeta[0]);
tmp1 = tmpMeta[1];
goto tmp3_done;
}
case 3: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,3,3) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
_src = tmpMeta[2];
tmp4 += 19;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e2);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT2, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT3, mmc_mk_cons(_s2, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil)))))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 4: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,4,3) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
_cr1 = tmpMeta[0];
_cr2 = tmpMeta[1];
_src = tmpMeta[2];
tmp4 += 18;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = omc_ComponentReference_printComponentRefStr(threadData, _cr1);
_s2 = omc_ComponentReference_printComponentRefStr(threadData, _cr2);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT4, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT3, mmc_mk_cons(_s2, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil)))))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 5: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,5,4) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 5));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
_src = tmpMeta[2];
tmp4 += 17;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e2);
tmpMeta[0] = stringAppend(_OMC_LIT5,_s1);
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT3);
tmpMeta[2] = stringAppend(tmpMeta[1],_s2);
tmpMeta[3] = stringAppend(tmpMeta[2],_sourceStr);
tmpMeta[4] = stringAppend(tmpMeta[3],_OMC_LIT1);
tmp1 = tmpMeta[4];
goto tmp3_done;
}
case 6: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,6,4) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 5));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
_src = tmpMeta[2];
tmp4 += 16;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e2);
tmpMeta[0] = stringAppend(_OMC_LIT6,_s1);
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT3);
tmpMeta[2] = stringAppend(tmpMeta[1],_s2);
tmpMeta[3] = stringAppend(tmpMeta[2],_sourceStr);
tmpMeta[4] = stringAppend(tmpMeta[3],_OMC_LIT1);
tmp1 = tmpMeta[4];
goto tmp3_done;
}
case 7: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,8,3) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
_src = tmpMeta[2];
tmp4 += 15;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e2);
tmpMeta[0] = stringAppend(_OMC_LIT7,_s1);
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT3);
tmpMeta[2] = stringAppend(tmpMeta[1],_s2);
tmpMeta[3] = stringAppend(tmpMeta[2],_sourceStr);
tmpMeta[4] = stringAppend(tmpMeta[3],_OMC_LIT1);
tmp1 = tmpMeta[4];
goto tmp3_done;
}
case 8: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,9,3) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
_src = tmpMeta[2];
tmp4 += 14;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e2);
tmpMeta[0] = stringAppend(_OMC_LIT8,_s1);
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT3);
tmpMeta[2] = stringAppend(tmpMeta[1],_s2);
tmpMeta[3] = stringAppend(tmpMeta[2],_sourceStr);
tmpMeta[4] = stringAppend(tmpMeta[3],_OMC_LIT1);
tmp1 = tmpMeta[4];
goto tmp3_done;
}
case 9: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,10,4) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 5));
_e1 = tmpMeta[0];
_src = tmpMeta[1];
tmp4 += 13;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT9, mmc_mk_cons(_s1, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil)))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 10: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,12,4) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 5));
_src = tmpMeta[0];
tmp4 += 12;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT10, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 11: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,13,4) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 5));
_src = tmpMeta[0];
tmp4 += 11;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT11, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 12: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,14,3) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
_src = tmpMeta[2];
tmp4 += 10;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e2);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT12, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT3, mmc_mk_cons(_s2, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil)))))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 13: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,15,2) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
_src = tmpMeta[0];
tmp4 += 9;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT13, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 14: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,16,2) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
_src = tmpMeta[0];
tmp4 += 8;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT14, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 15: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,17,4) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
_elst = tmpMeta[0];
_src = tmpMeta[1];
tmp4 += 7;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = stringDelimitList(omc_List_map(threadData, _elst, boxvar_DAEDump_dumpDebugElementStr), _OMC_LIT15);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT16, mmc_mk_cons(_s1, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil)))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 16: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,18,2) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
_path = tmpMeta[0];
_src = tmpMeta[1];
tmp4 += 6;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = omc_AbsynUtil_pathString(threadData, _path, _OMC_LIT17, 1, 0);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT18, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT2, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 17: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,19,4) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 5));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
_src = tmpMeta[2];
tmp4 += 5;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e2);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT19, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT20, mmc_mk_cons(_s2, mmc_mk_cons(_OMC_LIT21, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))))))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 18: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,20,4) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 5));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
_src = tmpMeta[2];
tmp4 += 4;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e2);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT22, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT20, mmc_mk_cons(_s2, mmc_mk_cons(_OMC_LIT21, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))))))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 19: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,21,2) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
_e1 = tmpMeta[0];
_src = tmpMeta[1];
tmp4 += 3;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT23, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT21, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 20: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,22,2) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
_e1 = tmpMeta[0];
_src = tmpMeta[1];
tmp4 += 2;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT24, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT21, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 21: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,23,3) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
_src = tmpMeta[0];
tmp4 += 1;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT25, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 22: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,24,2) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
_e1 = tmpMeta[0];
_src = tmpMeta[1];
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT2, mmc_mk_cons(_s1, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil)))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 23: {
tmp1 = _OMC_LIT26;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
tmp3_done:
(void)tmp4;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp3_done2;
goto_2:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp4 < 24) {
goto tmp3_top;
}
MMC_THROW_INTERNAL();
tmp3_done2:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
DLLExport
modelica_string omc_DAEDump_clockKindString(threadData_t *threadData, modelica_metatype _cK)
{
modelica_string _sOut = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[4] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _cK;
{
modelica_metatype _e1 = NULL;
modelica_metatype _e2 = NULL;
int tmp4;
{
switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))) {
case 3: {
tmp1 = _OMC_LIT27;
goto tmp3_done;
}
case 4: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,1,2) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
tmpMeta[0] = stringAppend(_OMC_LIT28,omc_ExpressionDump_printExpStr(threadData, _e1));
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT29);
tmpMeta[2] = stringAppend(tmpMeta[1],omc_ExpressionDump_printExpStr(threadData, _e2));
tmpMeta[3] = stringAppend(tmpMeta[2],_OMC_LIT30);
tmp1 = tmpMeta[3];
goto tmp3_done;
}
case 5: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,2,1) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
_e1 = tmpMeta[0];
tmpMeta[0] = stringAppend(_OMC_LIT31,omc_ExpressionDump_printExpStr(threadData, _e1));
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT30);
tmp1 = tmpMeta[1];
goto tmp3_done;
}
case 6: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,3,2) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
tmpMeta[0] = stringAppend(_OMC_LIT32,omc_ExpressionDump_printExpStr(threadData, _e1));
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT29);
tmpMeta[2] = stringAppend(tmpMeta[1],omc_ExpressionDump_printExpStr(threadData, _e2));
tmpMeta[3] = stringAppend(tmpMeta[2],_OMC_LIT30);
tmp1 = tmpMeta[3];
goto tmp3_done;
}
case 7: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,4,2) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
tmpMeta[0] = stringAppend(_OMC_LIT33,omc_ExpressionDump_printExpStr(threadData, _e1));
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT29);
tmpMeta[2] = stringAppend(tmpMeta[1],omc_ExpressionDump_printExpStr(threadData, _e2));
tmpMeta[3] = stringAppend(tmpMeta[2],_OMC_LIT30);
tmp1 = tmpMeta[3];
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_sOut = tmp1;
_return: OMC_LABEL_UNUSED
return _sOut;
}
DLLExport
modelica_string omc_DAEDump_cmtListToString(threadData_t *threadData, modelica_metatype _inCmtLst)
{
modelica_string _outStr = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp4_1;
tmp4_1 = _inCmtLst;
{
modelica_metatype _c = NULL;
modelica_metatype _rest = NULL;
modelica_string _str = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp3_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp4 < 4; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (!listEmpty(tmp4_1)) goto tmp3_end;
tmp4 += 2;
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
case 1: {
if (listEmpty(tmp4_1)) goto tmp3_end;
tmpMeta[0] = MMC_CAR(tmp4_1);
tmpMeta[1] = MMC_CDR(tmp4_1);
if (!listEmpty(tmpMeta[1])) goto tmp3_end;
_c = tmpMeta[0];
tmp1 = omc_DAEDump_dumpCommentAnnotationStr(threadData, mmc_mk_some(_c));
goto tmp3_done;
}
case 2: {
if (listEmpty(tmp4_1)) goto tmp3_end;
tmpMeta[0] = MMC_CAR(tmp4_1);
tmpMeta[1] = MMC_CDR(tmp4_1);
_c = tmpMeta[0];
_rest = tmpMeta[1];
_str = omc_DAEDump_dumpCommentAnnotationStr(threadData, mmc_mk_some(_c));
tmpMeta[0] = stringAppend(_str,_OMC_LIT35);
tmpMeta[1] = stringAppend(tmpMeta[0],omc_DAEDump_cmtListToString(threadData, _rest));
tmp1 = tmpMeta[1];
goto tmp3_done;
}
case 3: {
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
tmp3_done:
(void)tmp4;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp3_done2;
goto_2:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp4 < 4) {
goto tmp3_top;
}
MMC_THROW_INTERNAL();
tmp3_done2:;
}
}
_outStr = tmp1;
_return: OMC_LABEL_UNUSED
return _outStr;
}
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_withinString(threadData_t *threadData, modelica_metatype _w)
{
modelica_string _str = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _w;
{
modelica_metatype _p1 = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,1,0) == 0) goto tmp3_end;
tmp1 = _OMC_LIT36;
goto tmp3_done;
}
case 1: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,0,1) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
_p1 = tmpMeta[0];
tmp1 = omc_AbsynUtil_pathString(threadData, _p1, _OMC_LIT17, 1, 0);
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_str = tmp1;
_return: OMC_LABEL_UNUSED
return _str;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_DAEDump_connectsStr(threadData_t *threadData, modelica_metatype _inLst)
{
modelica_metatype _outStr = NULL;
modelica_metatype tmpMeta[5] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp3_1;
tmp3_1 = _inLst;
{
modelica_metatype _rest = NULL;
modelica_metatype _slst = NULL;
modelica_string _str = NULL;
modelica_metatype _c1 = NULL;
modelica_metatype _c2 = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp2_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp3 < 3; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (!listEmpty(tmp3_1)) goto tmp2_end;
tmp3 += 2;
tmpMeta[1] = MMC_REFSTRUCTLIT(mmc_nil);
tmpMeta[0] = tmpMeta[1];
goto tmp2_done;
}
case 1: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 1));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
if (!listEmpty(tmpMeta[2])) goto tmp2_end;
_c1 = tmpMeta[3];
_c2 = tmpMeta[4];
tmpMeta[1] = stringAppend(omc_ComponentReference_printComponentRefStr(threadData, _c1),_OMC_LIT20);
tmpMeta[2] = stringAppend(tmpMeta[1],omc_ComponentReference_printComponentRefStr(threadData, _c2));
_str = tmpMeta[2];
tmpMeta[1] = stringAppend(_OMC_LIT37,_str);
tmpMeta[2] = stringAppend(tmpMeta[1],_OMC_LIT30);
_str = tmpMeta[2];
tmpMeta[1] = mmc_mk_cons(_str, MMC_REFSTRUCTLIT(mmc_nil));
tmpMeta[0] = tmpMeta[1];
goto tmp2_done;
}
case 2: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 1));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
_c1 = tmpMeta[3];
_c2 = tmpMeta[4];
_rest = tmpMeta[2];
tmpMeta[1] = stringAppend(omc_ComponentReference_printComponentRefStr(threadData, _c1),_OMC_LIT20);
tmpMeta[2] = stringAppend(tmpMeta[1],omc_ComponentReference_printComponentRefStr(threadData, _c2));
_str = tmpMeta[2];
tmpMeta[1] = stringAppend(_OMC_LIT37,_str);
tmpMeta[2] = stringAppend(tmpMeta[1],_OMC_LIT30);
_str = tmpMeta[2];
_slst = omc_DAEDump_connectsStr(threadData, _rest);
tmpMeta[1] = mmc_mk_cons(_str, _slst);
tmpMeta[0] = tmpMeta[1];
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
tmp2_done:
(void)tmp3;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp2_done2;
goto_1:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp3 < 3) {
goto tmp2_top;
}
MMC_THROW_INTERNAL();
tmp2_done2:;
}
}
_outStr = tmpMeta[0];
_return: OMC_LABEL_UNUSED
return _outStr;
}
DLLExport
modelica_string omc_DAEDump_getSourceInformationStr(threadData_t *threadData, modelica_metatype _inSource)
{
modelica_string _outStr = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[6] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp4_1;
tmp4_1 = _inSource;
{
modelica_metatype _po = NULL;
modelica_metatype _ceol = NULL;
modelica_metatype _cmt = NULL;
modelica_string _str = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp3_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
modelica_boolean tmp6;
tmp6 = omc_Flags_isSet(threadData, _OMC_LIT41);
if (0 != tmp6) goto goto_2;
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
case 1: {
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 5));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 8));
_po = tmpMeta[0];
_ceol = tmpMeta[1];
_cmt = tmpMeta[2];
_str = omc_DAEDump_cmtListToString(threadData, _cmt);
tmpMeta[0] = stringAppend(_str,_OMC_LIT42);
tmpMeta[1] = stringAppend(tmpMeta[0],stringDelimitList(omc_List_map(threadData, _po, boxvar_DAEDump_withinString), _OMC_LIT43));
tmpMeta[2] = stringAppend(tmpMeta[1],_OMC_LIT44);
tmpMeta[3] = stringAppend(tmpMeta[2],_OMC_LIT45);
tmpMeta[4] = stringAppend(tmpMeta[3],stringDelimitList(omc_DAEDump_connectsStr(threadData, _ceol), _OMC_LIT43));
tmpMeta[5] = stringAppend(tmpMeta[4],_OMC_LIT46);
tmp1 = tmpMeta[5];
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
tmp3_done:
(void)tmp4;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp3_done2;
goto_2:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp4 < 2) {
goto tmp3_top;
}
MMC_THROW_INTERNAL();
tmp3_done2:;
}
}
_outStr = tmp1;
_return: OMC_LABEL_UNUSED
return _outStr;
}
DLLExport
modelica_string omc_DAEDump_unparseVarInnerOuter(threadData_t *threadData, modelica_metatype _io)
{
modelica_string _str = NULL;
modelica_string tmp1 = 0;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _io;
{
int tmp4;
{
switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))) {
case 3: {
tmp1 = _OMC_LIT47;
goto tmp3_done;
}
case 4: {
tmp1 = _OMC_LIT48;
goto tmp3_done;
}
case 5: {
tmp1 = _OMC_LIT49;
goto tmp3_done;
}
default:
tmp3_default: OMC_LABEL_UNUSED; {
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_str = tmp1;
_return: OMC_LABEL_UNUSED
return _str;
}
DLLExport
modelica_string omc_DAEDump_unparseVarDirection(threadData_t *threadData, modelica_metatype _inVarDirection)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _inVarDirection;
{
int tmp4;
{
switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))) {
case 5: {
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
case 3: {
tmp1 = _OMC_LIT50;
goto tmp3_done;
}
case 4: {
tmp1 = _OMC_LIT51;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
DLLExport
modelica_string omc_DAEDump_unparseVarKind(threadData_t *threadData, modelica_metatype _inVarKind)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _inVarKind;
{
int tmp4;
{
switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))) {
case 3: {
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
case 5: {
tmp1 = _OMC_LIT52;
goto tmp3_done;
}
case 6: {
tmp1 = _OMC_LIT53;
goto tmp3_done;
}
case 4: {
tmp1 = _OMC_LIT54;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
DLLExport
modelica_metatype omc_DAEDump_dumpFunctionElementsStream(threadData_t *threadData, modelica_metatype _l, modelica_metatype _inStream)
{
modelica_metatype _outStream = NULL;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
_outStream = omc_DAEDump_dumpVarsStream(threadData, _l, 1, _inStream);
_outStream = omc_List_fold(threadData, _l, boxvar_DAEDump_dumpAlgorithmStream, _outStream);
_return: OMC_LABEL_UNUSED
return _outStream;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_DAEDump_dumpFunctionStream(threadData_t *threadData, modelica_metatype _inElement, modelica_metatype _inStream)
{
modelica_metatype _outStream = NULL;
modelica_metatype tmpMeta[10] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp3_1;volatile modelica_metatype tmp3_2;
tmp3_1 = _inElement;
tmp3_2 = _inStream;
{
modelica_string _fstr = NULL;
modelica_string _ext_decl_str = NULL;
modelica_string _impureStr = NULL;
modelica_string _ann_str = NULL;
modelica_metatype _fpath = NULL;
modelica_metatype _daeElts = NULL;
modelica_metatype _t = NULL;
modelica_metatype _tp = NULL;
modelica_metatype _inlineType = NULL;
modelica_metatype _str = NULL;
modelica_metatype _c = NULL;
modelica_metatype _ext_decl = NULL;
modelica_boolean _isImpure;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp2_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp3 < 5; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
modelica_integer tmp5;
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,0,10) == 0) goto tmp2_end;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
if (listEmpty(tmpMeta[2])) goto tmp2_end;
tmpMeta[3] = MMC_CAR(tmpMeta[2]);
tmpMeta[4] = MMC_CDR(tmpMeta[2]);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[3],0,1) == 0) goto tmp2_end;
tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 2));
tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4));
tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 7));
tmp5 = mmc_unbox_integer(tmpMeta[7]);
tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 8));
tmpMeta[9] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 11));
_fpath = tmpMeta[1];
_daeElts = tmpMeta[5];
_t = tmpMeta[6];
_isImpure = tmp5;
_inlineType = tmpMeta[8];
_c = tmpMeta[9];
_str = tmp3_2;
tmp3 += 3;
_str = omc_IOStream_append(threadData, _str, omc_DAEDump_dumpParallelismStr(threadData, _t));
_fstr = omc_AbsynUtil_pathStringNoQual(threadData, _fpath, _OMC_LIT17, 0, 0);
_impureStr = (_isImpure?_OMC_LIT55:_OMC_LIT34);
_str = omc_IOStream_append(threadData, _str, _impureStr);
_str = omc_IOStream_append(threadData, _str, _OMC_LIT56);
_str = omc_IOStream_append(threadData, _str, _fstr);
_str = omc_IOStream_append(threadData, _str, omc_DAEDump_dumpInlineTypeStr(threadData, _inlineType));
_str = omc_IOStream_append(threadData, _str, omc_DAEDump_dumpCommentStr(threadData, _c));
_str = omc_IOStream_append(threadData, _str, _OMC_LIT15);
_str = omc_DAEDump_dumpFunctionElementsStream(threadData, _daeElts, _str);
_str = omc_IOStream_append(threadData, _str, omc_DAEDump_dumpClassAnnotationStr(threadData, _c));
_str = omc_IOStream_append(threadData, _str, _OMC_LIT57);
_str = omc_IOStream_append(threadData, _str, _fstr);
tmpMeta[0] = omc_IOStream_append(threadData, _str, _OMC_LIT58);
goto tmp2_done;
}
case 1: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,0,10) == 0) goto tmp2_end;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
if (listEmpty(tmpMeta[1])) goto tmp2_end;
tmpMeta[2] = MMC_CAR(tmpMeta[1]);
tmpMeta[3] = MMC_CDR(tmpMeta[1]);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[2],1,2) == 0) goto tmp2_end;
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 3));
tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 5));
if (7 != MMC_STRLEN(tmpMeta[5]) || strcmp(MMC_STRINGDATA(_OMC_LIT68), MMC_STRINGDATA(tmpMeta[5])) != 0) goto tmp2_end;
_str = tmp3_2;
tmpMeta[0] = _str;
goto tmp2_done;
}
case 2: {
modelica_integer tmp6;
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,0,10) == 0) goto tmp2_end;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
if (listEmpty(tmpMeta[2])) goto tmp2_end;
tmpMeta[3] = MMC_CAR(tmpMeta[2]);
tmpMeta[4] = MMC_CDR(tmpMeta[2]);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[3],1,2) == 0) goto tmp2_end;
tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 2));
tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 3));
tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 7));
tmp6 = mmc_unbox_integer(tmpMeta[7]);
tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 8));
tmpMeta[9] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 11));
_fpath = tmpMeta[1];
_daeElts = tmpMeta[5];
_ext_decl = tmpMeta[6];
_isImpure = tmp6;
_inlineType = tmpMeta[8];
_c = tmpMeta[9];
_str = tmp3_2;
tmp3 += 1;
_fstr = omc_AbsynUtil_pathStringNoQual(threadData, _fpath, _OMC_LIT17, 0, 0);
_impureStr = (_isImpure?_OMC_LIT55:_OMC_LIT34);
_str = omc_IOStream_append(threadData, _str, _impureStr);
_str = omc_IOStream_append(threadData, _str, _OMC_LIT56);
_str = omc_IOStream_append(threadData, _str, _fstr);
_str = omc_IOStream_append(threadData, _str, omc_DAEDump_dumpInlineTypeStr(threadData, _inlineType));
_str = omc_IOStream_append(threadData, _str, omc_DAEDump_dumpCommentStr(threadData, _c));
_str = omc_IOStream_append(threadData, _str, _OMC_LIT15);
_str = omc_DAEDump_dumpFunctionElementsStream(threadData, _daeElts, _str);
_ext_decl_str = omc_DAEDump_dumpExtDeclStr(threadData, _ext_decl);
_ann_str = omc_DAEDump_dumpClassAnnotationStr(threadData, _c);
tmpMeta[1] = mmc_mk_cons(_OMC_LIT59, mmc_mk_cons(_ext_decl_str, mmc_mk_cons(_OMC_LIT15, mmc_mk_cons(_ann_str, mmc_mk_cons(_OMC_LIT57, mmc_mk_cons(_fstr, mmc_mk_cons(_OMC_LIT58, MMC_REFSTRUCTLIT(mmc_nil))))))));
tmpMeta[0] = omc_IOStream_appendList(threadData, _str, tmpMeta[1]);
goto tmp2_done;
}
case 3: {
modelica_boolean tmp7;
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,1,3) == 0) goto tmp2_end;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_fpath = tmpMeta[1];
_tp = tmpMeta[2];
_str = tmp3_2;
tmp7 = omc_Flags_isSet(threadData, _OMC_LIT63);
if (0 != tmp7) goto goto_1;
_fstr = omc_AbsynUtil_pathStringNoQual(threadData, _fpath, _OMC_LIT17, 0, 0);
_str = omc_IOStream_append(threadData, _str, _OMC_LIT56);
_str = omc_IOStream_append(threadData, _str, _fstr);
tmpMeta[1] = stringAppend(_OMC_LIT64,_fstr);
tmpMeta[2] = stringAppend(tmpMeta[1],_OMC_LIT65);
_str = omc_IOStream_append(threadData, _str, tmpMeta[2]);
_str = omc_IOStream_append(threadData, _str, omc_DAEDump_printRecordConstructorInputsStr(threadData, _tp));
tmpMeta[1] = stringAppend(_OMC_LIT66,omc_AbsynUtil_pathLastIdent(threadData, _fpath));
tmpMeta[2] = stringAppend(tmpMeta[1],_OMC_LIT67);
_str = omc_IOStream_append(threadData, _str, tmpMeta[2]);
_str = omc_IOStream_append(threadData, _str, _OMC_LIT57);
_str = omc_IOStream_append(threadData, _str, _fstr);
tmpMeta[0] = omc_IOStream_append(threadData, _str, _OMC_LIT58);
goto tmp2_done;
}
case 4: {
_str = tmp3_2;
tmpMeta[0] = _str;
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
tmp2_done:
(void)tmp3;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp2_done2;
goto_1:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp3 < 5) {
goto tmp2_top;
}
MMC_THROW_INTERNAL();
tmp2_done2:;
}
}
_outStream = tmpMeta[0];
_return: OMC_LABEL_UNUSED
return _outStream;
}
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_dumpExtObjClassStr(threadData_t *threadData, modelica_metatype _inElement)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp4_1;
tmp4_1 = _inElement;
{
modelica_string _s = NULL;
modelica_integer _hnd;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp3_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,18,2) == 0) goto tmp3_end;
_hnd = omc_Print_saveAndClearBuf(threadData);
omc_DAEDump_dumpExtObjectClass(threadData, _inElement);
_s = omc_Print_getString(threadData);
omc_Print_restoreBuf(threadData, _hnd);
tmp1 = _s;
goto tmp3_done;
}
case 1: {
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
tmp3_done:
(void)tmp4;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp3_done2;
goto_2:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp4 < 2) {
goto tmp3_top;
}
MMC_THROW_INTERNAL();
tmp3_done2:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
DLLExport
modelica_string omc_DAEDump_dumpFunctionStr(threadData_t *threadData, modelica_metatype _inElement)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
{
modelica_string _s = NULL;
modelica_integer _hnd;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp3_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
_hnd = omc_Print_saveAndClearBuf(threadData);
omc_DAEDump_dumpFunction(threadData, _inElement);
_s = omc_Print_getString(threadData);
omc_Print_restoreBuf(threadData, _hnd);
tmp1 = _s;
goto tmp3_done;
}
case 1: {
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
tmp3_done:
(void)tmp4;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp3_done2;
goto_2:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp4 < 2) {
goto tmp3_top;
}
MMC_THROW_INTERNAL();
tmp3_done2:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
DLLExport
void omc_DAEDump_dumpFunctionTree(threadData_t *threadData, modelica_metatype _inFunctionTree, modelica_string _inHeading)
{
modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
tmpMeta[0] = stringAppend(_OMC_LIT15,_inHeading);
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT69);
fputs(MMC_STRINGDATA(tmpMeta[1]),stdout);
{
modelica_metatype _fnc;
for (tmpMeta[0] = omc_DAEDump_sortFunctions(threadData, omc_DAEUtil_getFunctionList(threadData, _inFunctionTree, 0)); !listEmpty(tmpMeta[0]); tmpMeta[0]=MMC_CDR(tmpMeta[0]))
{
_fnc = MMC_CAR(tmpMeta[0]);
fputs(MMC_STRINGDATA(omc_DAEDump_dumpFunctionStr(threadData, _fnc)),stdout);
}
}
_return: OMC_LABEL_UNUSED
return;
}
DLLExport
modelica_metatype omc_DAEDump_ppStatementStream(threadData_t *threadData, modelica_metatype _alg, modelica_metatype _inStream)
{
modelica_metatype _outStream = NULL;
modelica_string _tmp = NULL;
modelica_integer _hnd;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
_hnd = omc_Print_saveAndClearBuf(threadData);
omc_DAEDump_ppStatement(threadData, _alg);
_outStream = omc_IOStream_append(threadData, _inStream, omc_Print_getString(threadData));
omc_Print_restoreBuf(threadData, _hnd);
_return: OMC_LABEL_UNUSED
return _outStream;
}
DLLExport
modelica_metatype omc_DAEDump_dumpInitialAlgorithmStream(threadData_t *threadData, modelica_metatype _inElement, modelica_metatype _inStream)
{
modelica_metatype _outStream = NULL;
modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp3_1;volatile modelica_metatype tmp3_2;
tmp3_1 = _inElement;
tmp3_2 = _inStream;
{
modelica_metatype _str = NULL;
modelica_metatype _stmts = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp2_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp3 < 2; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,16,2) == 0) goto tmp2_end;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
_stmts = tmpMeta[2];
_str = tmp3_2;
_str = omc_IOStream_append(threadData, _str, _OMC_LIT70);
tmpMeta[0] = omc_List_fold(threadData, _stmts, boxvar_DAEDump_ppStatementStream, _str);
goto tmp2_done;
}
case 1: {
_str = tmp3_2;
tmpMeta[0] = _str;
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
tmp2_done:
(void)tmp3;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp2_done2;
goto_1:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp3 < 2) {
goto tmp2_top;
}
MMC_THROW_INTERNAL();
tmp2_done2:;
}
}
_outStream = tmpMeta[0];
_return: OMC_LABEL_UNUSED
return _outStream;
}
DLLExport
modelica_metatype omc_DAEDump_dumpAlgorithmStream(threadData_t *threadData, modelica_metatype _inElement, modelica_metatype _inStream)
{
modelica_metatype _outStream = NULL;
modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp3_1;volatile modelica_metatype tmp3_2;
tmp3_1 = _inElement;
tmp3_2 = _inStream;
{
modelica_metatype _str = NULL;
modelica_metatype _stmts = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp2_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp3 < 2; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,15,2) == 0) goto tmp2_end;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
_stmts = tmpMeta[2];
_str = tmp3_2;
_str = omc_IOStream_append(threadData, _str, _OMC_LIT71);
tmpMeta[0] = omc_List_fold(threadData, _stmts, boxvar_DAEDump_ppStatementStream, _str);
goto tmp2_done;
}
case 1: {
_str = tmp3_2;
tmpMeta[0] = _str;
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
tmp2_done:
(void)tmp3;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp2_done2;
goto_1:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp3 < 2) {
goto tmp2_top;
}
MMC_THROW_INTERNAL();
tmp2_done2:;
}
}
_outStream = tmpMeta[0];
_return: OMC_LABEL_UNUSED
return _outStream;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_DAEDump_dumpVarStream(threadData_t *threadData, modelica_metatype _inElement, modelica_boolean _printTypeDimension, modelica_metatype _inStream)
{
modelica_metatype _outStream = NULL;
modelica_metatype tmpMeta[11] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp3_1;volatile modelica_metatype tmp3_2;
tmp3_1 = _inElement;
tmp3_2 = _inStream;
{
modelica_string _final_str = NULL;
modelica_string _kind_str = NULL;
modelica_string _dir_str = NULL;
modelica_string _ty_str = NULL;
modelica_string _ty_vars_str = NULL;
modelica_string _dim_str = NULL;
modelica_string _name_str = NULL;
modelica_string _vis_str = NULL;
modelica_string _par_str = NULL;
modelica_string _cmt_str = NULL;
modelica_string _attr_str = NULL;
modelica_string _binding_str = NULL;
modelica_metatype _id = NULL;
modelica_metatype _kind = NULL;
modelica_metatype _dir = NULL;
modelica_metatype _prl = NULL;
modelica_metatype _vis = NULL;
modelica_metatype _ty = NULL;
modelica_metatype _attr = NULL;
modelica_metatype _cmt = NULL;
modelica_metatype _binding = NULL;
modelica_metatype _dims = NULL;
modelica_metatype _str = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp2_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp3 < 2; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,0,13) == 0) goto tmp2_end;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 5));
tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 6));
tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 7));
tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 8));
tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 9));
tmpMeta[9] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 12));
tmpMeta[10] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 13));
_id = tmpMeta[1];
_kind = tmpMeta[2];
_dir = tmpMeta[3];
_prl = tmpMeta[4];
_vis = tmpMeta[5];
_ty = tmpMeta[6];
_binding = tmpMeta[7];
_dims = tmpMeta[8];
_attr = tmpMeta[9];
_cmt = tmpMeta[10];
_str = tmp3_2;
_final_str = (omc_DAEUtil_getFinalAttr(threadData, _attr)?_OMC_LIT72:_OMC_LIT34);
_kind_str = omc_DAEDump_dumpKindStr(threadData, _kind);
_dir_str = omc_DAEDump_dumpDirectionStr(threadData, _dir);
_ty_str = omc_DAEDump_printTypeStr(threadData, _ty ,&_ty_vars_str);
_dim_str = omc_DAEDump_unparseDimensions(threadData, _dims, _printTypeDimension);
_name_str = omc_ComponentReference_printComponentRefStr(threadData, _id);
_vis_str = omc_DAEDump_dumpVarVisibilityStr(threadData, _vis);
_par_str = omc_DAEDump_dumpVarParallelismStr(threadData, _prl);
_cmt_str = omc_DAEDump_dumpCommentAnnotationStr(threadData, _cmt);
_attr_str = omc_DAEDump_dumpVariableAttributesStr(threadData, _attr);
_binding_str = omc_DAEDump_dumpVarBindingStr(threadData, _binding);
tmpMeta[1] = mmc_mk_cons(_OMC_LIT2, mmc_mk_cons(_vis_str, mmc_mk_cons(_final_str, mmc_mk_cons(_par_str, mmc_mk_cons(_kind_str, mmc_mk_cons(_dir_str, mmc_mk_cons(_ty_str, mmc_mk_cons(_dim_str, mmc_mk_cons(_OMC_LIT35, mmc_mk_cons(_name_str, mmc_mk_cons(_ty_vars_str, mmc_mk_cons(_attr_str, mmc_mk_cons(_binding_str, mmc_mk_cons(_cmt_str, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))))))))))))))));
tmpMeta[0] = omc_IOStream_appendList(threadData, _str, tmpMeta[1]);
goto tmp2_done;
}
case 1: {
tmpMeta[0] = _inStream;
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
tmp2_done:
(void)tmp3;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp2_done2;
goto_1:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp3 < 2) {
goto tmp2_top;
}
MMC_THROW_INTERNAL();
tmp2_done2:;
}
}
_outStream = tmpMeta[0];
_return: OMC_LABEL_UNUSED
return _outStream;
}
PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_DAEDump_dumpVarStream(threadData_t *threadData, modelica_metatype _inElement, modelica_metatype _printTypeDimension, modelica_metatype _inStream)
{
modelica_integer tmp1;
modelica_metatype _outStream = NULL;
tmp1 = mmc_unbox_integer(_printTypeDimension);
_outStream = omc_DAEDump_dumpVarStream(threadData, _inElement, tmp1, _inStream);
return _outStream;
}
DLLExport
modelica_string omc_DAEDump_dumpVarBindingStr(threadData_t *threadData, modelica_metatype _inBinding)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _inBinding;
{
modelica_metatype _exp = NULL;
modelica_string _bind_str = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (optionNone(tmp4_1)) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 1));
_exp = tmpMeta[0];
_bind_str = omc_ExpressionDump_printExpStr(threadData, _exp);
tmpMeta[0] = stringAppend(_OMC_LIT3,_bind_str);
tmp1 = tmpMeta[0];
goto tmp3_done;
}
case 1: {
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
DLLExport
void omc_DAEDump_dumpCallAttr(threadData_t *threadData, modelica_metatype _ca)
{
modelica_boolean _tpl;
modelica_boolean _bi;
modelica_boolean _impure_;
modelica_boolean _isFunc;
modelica_metatype _iType = NULL;
modelica_metatype _ty = NULL;
modelica_metatype _tailCall = NULL;
modelica_string _s1 = NULL;
modelica_string _s2 = NULL;
modelica_integer tmp1;
modelica_integer tmp2;
modelica_integer tmp3;
modelica_integer tmp4;
modelica_metatype tmpMeta[8] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
tmpMeta[0] = _ca;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 2));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 3));
tmp1 = mmc_unbox_integer(tmpMeta[2]);
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 4));
tmp2 = mmc_unbox_integer(tmpMeta[3]);
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 5));
tmp3 = mmc_unbox_integer(tmpMeta[4]);
tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 6));
tmp4 = mmc_unbox_integer(tmpMeta[5]);
tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 7));
tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 8));
_ty = tmpMeta[1];
_tpl = tmp1;
_bi = tmp2;
_impure_ = tmp3;
_isFunc = tmp4;
_iType = tmpMeta[6];
_tailCall = tmpMeta[7];
fputs(MMC_STRINGDATA(_OMC_LIT73),stdout);
_s1 = omc_DAEDump_printTypeStr(threadData, _ty ,&_s2);
tmpMeta[0] = stringAppend(_OMC_LIT74,_s1);
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT15);
fputs(MMC_STRINGDATA(tmpMeta[1]),stdout);
tmpMeta[0] = stringAppend(_OMC_LIT75,_s2);
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT15);
fputs(MMC_STRINGDATA(tmpMeta[1]),stdout);
tmpMeta[0] = stringAppend(_OMC_LIT76,(_tpl?_OMC_LIT77:_OMC_LIT78));
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT79);
tmpMeta[2] = stringAppend(tmpMeta[1],(_bi?_OMC_LIT77:_OMC_LIT78));
tmpMeta[3] = stringAppend(tmpMeta[2],_OMC_LIT80);
tmpMeta[4] = stringAppend(tmpMeta[3],(_impure_?_OMC_LIT77:_OMC_LIT78));
tmpMeta[5] = stringAppend(tmpMeta[4],_OMC_LIT81);
tmpMeta[6] = stringAppend(tmpMeta[5],(_isFunc?_OMC_LIT77:_OMC_LIT78));
tmpMeta[7] = stringAppend(tmpMeta[6],_OMC_LIT82);
fputs(MMC_STRINGDATA(tmpMeta[7]),stdout);
_return: OMC_LABEL_UNUSED
return;
}
DLLExport
modelica_string omc_DAEDump_printTypeStr(threadData_t *threadData, modelica_metatype _inType, modelica_string *out_outTypeAttrStr)
{
modelica_string _outTypeStr = NULL;
modelica_string _outTypeAttrStr = NULL;
modelica_metatype _ty = NULL;
modelica_metatype _ty_vars = NULL;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
_ty = omc_Types_stripTypeVars(threadData, _inType ,&_ty_vars);
_outTypeStr = omc_DAEDump_unparseType(threadData, _ty);
_outTypeAttrStr = omc_List_toString(threadData, _ty_vars, boxvar_Types_unparseVarAttr, _OMC_LIT34, _OMC_LIT83, _OMC_LIT43, _OMC_LIT30, 0);
_return: OMC_LABEL_UNUSED
if (out_outTypeAttrStr) { *out_outTypeAttrStr = _outTypeAttrStr; }
return _outTypeStr;
}
DLLExport
modelica_string omc_DAEDump_daeTypeStr(threadData_t *threadData, modelica_metatype _inType)
{
modelica_string _outTypeStr = NULL;
modelica_string _typeAttrStr = NULL;
modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
_outTypeStr = omc_DAEDump_printTypeStr(threadData, _inType ,&_typeAttrStr);
if((!stringEqual(_typeAttrStr, _OMC_LIT34)))
{
tmpMeta[0] = stringAppend(_outTypeStr,_OMC_LIT35);
tmpMeta[1] = stringAppend(tmpMeta[0],_typeAttrStr);
_outTypeStr = tmpMeta[1];
}
_return: OMC_LABEL_UNUSED
return _outTypeStr;
}
DLLExport
modelica_metatype omc_DAEDump_dumpVarsStream(threadData_t *threadData, modelica_metatype _inElementLst, modelica_boolean _printTypeDimension, modelica_metatype _inStream)
{
modelica_metatype _outStream = NULL;
modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp3_1;modelica_metatype tmp3_2;
tmp3_1 = _inElementLst;
tmp3_2 = _inStream;
{
modelica_metatype _str = NULL;
modelica_metatype _first = NULL;
modelica_metatype _rest = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
for (; tmp3 < 2; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (!listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[0] = _inStream;
goto tmp2_done;
}
case 1: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
_first = tmpMeta[1];
_rest = tmpMeta[2];
_str = tmp3_2;
_str = omc_DAEDump_dumpVarStream(threadData, _first, _printTypeDimension, _str);
_inElementLst = _rest;
_inStream = _str;
goto _tailrecursive;
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
goto_1:;
MMC_THROW_INTERNAL();
goto tmp2_done;
tmp2_done:;
}
}
_outStream = tmpMeta[0];
_return: OMC_LABEL_UNUSED
return _outStream;
}
modelica_metatype boxptr_DAEDump_dumpVarsStream(threadData_t *threadData, modelica_metatype _inElementLst, modelica_metatype _printTypeDimension, modelica_metatype _inStream)
{
modelica_integer tmp1;
modelica_metatype _outStream = NULL;
tmp1 = mmc_unbox_integer(_printTypeDimension);
_outStream = omc_DAEDump_dumpVarsStream(threadData, _inElementLst, tmp1, _inStream);
return _outStream;
}
DLLExport
modelica_string omc_DAEDump_dumpDAEElementsStr(threadData_t *threadData, modelica_metatype _d)
{
modelica_string _str = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _d;
{
modelica_metatype _l = NULL;
modelica_metatype _myStream = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 1; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
_l = tmpMeta[0];
_myStream = omc_IOStream_create(threadData, _OMC_LIT34, _OMC_LIT84);
_myStream = omc_DAEDump_dumpElementsStream(threadData, _l, _myStream);
tmp1 = omc_IOStream_string(threadData, _myStream);
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_str = tmp1;
_return: OMC_LABEL_UNUSED
return _str;
}
DLLExport
modelica_metatype omc_DAEDump_dumpConstraintStream(threadData_t *threadData, modelica_metatype _inElementLst, modelica_metatype _inStream)
{
modelica_metatype _outStream = NULL;
modelica_metatype tmpMeta[5] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp3_1;volatile modelica_metatype tmp3_2;
tmp3_1 = _inElementLst;
tmp3_2 = _inStream;
{
modelica_metatype _str = NULL;
modelica_metatype _exps = NULL;
modelica_metatype _xs = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp2_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp3 < 3; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (!listEmpty(tmp3_1)) goto tmp2_end;
_str = tmp3_2;
tmp3 += 2;
tmpMeta[0] = _str;
goto tmp2_done;
}
case 1: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],26,2) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[3],0,1) == 0) goto tmp2_end;
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 2));
_exps = tmpMeta[4];
_xs = tmpMeta[2];
_str = tmp3_2;
_str = omc_IOStream_append(threadData, _str, _OMC_LIT2);
_str = omc_IOStream_append(threadData, _str, stringDelimitList(omc_List_map(threadData, _exps, boxvar_ExpressionDump_printExpStr), _OMC_LIT85));
_str = omc_IOStream_append(threadData, _str, _OMC_LIT1);
tmpMeta[0] = omc_DAEDump_dumpConstraintStream(threadData, _xs, _str);
goto tmp2_done;
}
case 2: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
_xs = tmpMeta[2];
_str = tmp3_2;
tmpMeta[0] = omc_DAEDump_dumpConstraintStream(threadData, _xs, _str);
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
tmp2_done:
(void)tmp3;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp2_done2;
goto_1:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp3 < 3) {
goto tmp2_top;
}
MMC_THROW_INTERNAL();
tmp2_done2:;
}
}
_outStream = tmpMeta[0];
_return: OMC_LABEL_UNUSED
return _outStream;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_DAEDump_dumpInitialEquationsStream(threadData_t *threadData, modelica_metatype _inElementLst, modelica_metatype _inStream)
{
modelica_metatype _outStream = NULL;
modelica_metatype tmpMeta[10] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp3_1;volatile modelica_metatype tmp3_2;
tmp3_1 = _inElementLst;
tmp3_2 = _inStream;
{
modelica_string _s1 = NULL;
modelica_string _s2 = NULL;
modelica_string _sourceStr = NULL;
modelica_metatype _e1 = NULL;
modelica_metatype _e2 = NULL;
modelica_metatype _e = NULL;
modelica_metatype _xs = NULL;
modelica_metatype _xs1 = NULL;
modelica_metatype _xs2 = NULL;
modelica_metatype _trueBranches = NULL;
modelica_metatype _c = NULL;
modelica_metatype _str = NULL;
modelica_metatype _conds = NULL;
modelica_metatype _src = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp2_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp3 < 10; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (!listEmpty(tmp3_1)) goto tmp2_end;
_str = tmp3_2;
tmp3 += 9;
tmpMeta[0] = _str;
goto tmp2_done;
}
case 1: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],14,3) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3));
_e1 = tmpMeta[3];
_e2 = tmpMeta[4];
_xs = tmpMeta[2];
_str = tmp3_2;
tmp3 += 7;
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e2);
tmpMeta[1] = mmc_mk_cons(_OMC_LIT2, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT3, mmc_mk_cons(_s2, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))))));
_str = omc_IOStream_appendList(threadData, _str, tmpMeta[1]);
tmpMeta[0] = omc_DAEDump_dumpInitialEquationsStream(threadData, _xs, _str);
goto tmp2_done;
}
case 2: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],6,4) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 4));
_e1 = tmpMeta[3];
_e2 = tmpMeta[4];
_xs = tmpMeta[2];
_str = tmp3_2;
tmp3 += 6;
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e2);
tmpMeta[1] = mmc_mk_cons(_OMC_LIT2, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT3, mmc_mk_cons(_s2, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))))));
_str = omc_IOStream_appendList(threadData, _str, tmpMeta[1]);
tmpMeta[0] = omc_DAEDump_dumpInitialEquationsStream(threadData, _xs, _str);
goto tmp2_done;
}
case 3: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],9,3) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3));
_e1 = tmpMeta[3];
_e2 = tmpMeta[4];
_xs = tmpMeta[2];
_str = tmp3_2;
tmp3 += 5;
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e2);
tmpMeta[1] = mmc_mk_cons(_OMC_LIT2, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT3, mmc_mk_cons(_s2, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))))));
_str = omc_IOStream_appendList(threadData, _str, tmpMeta[1]);
tmpMeta[0] = omc_DAEDump_dumpInitialEquationsStream(threadData, _xs, _str);
goto tmp2_done;
}
case 4: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],2,3) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3));
_c = tmpMeta[3];
_e = tmpMeta[4];
_xs = tmpMeta[2];
_str = tmp3_2;
tmp3 += 4;
_s1 = omc_ComponentReference_printComponentRefStr(threadData, _c);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e);
tmpMeta[1] = mmc_mk_cons(_OMC_LIT2, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT3, mmc_mk_cons(_s2, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))))));
_str = omc_IOStream_appendList(threadData, _str, tmpMeta[1]);
tmpMeta[0] = omc_DAEDump_dumpInitialEquationsStream(threadData, _xs, _str);
goto tmp2_done;
}
case 5: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],13,4) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
if (listEmpty(tmpMeta[3])) goto tmp2_end;
tmpMeta[4] = MMC_CAR(tmpMeta[3]);
tmpMeta[5] = MMC_CDR(tmpMeta[3]);
tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3));
if (listEmpty(tmpMeta[6])) goto tmp2_end;
tmpMeta[7] = MMC_CAR(tmpMeta[6]);
tmpMeta[8] = MMC_CDR(tmpMeta[6]);
tmpMeta[9] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 4));
_e = tmpMeta[4];
_conds = tmpMeta[5];
_xs1 = tmpMeta[7];
_trueBranches = tmpMeta[8];
_xs2 = tmpMeta[9];
_xs = tmpMeta[2];
_str = tmp3_2;
tmp3 += 3;
_str = omc_IOStream_append(threadData, _str, _OMC_LIT86);
_str = omc_IOStream_append(threadData, _str, omc_ExpressionDump_printExpStr(threadData, _e));
_str = omc_IOStream_append(threadData, _str, _OMC_LIT87);
_str = omc_DAEDump_dumpInitialEquationsStream(threadData, _xs1, _str);
_str = omc_DAEDump_dumpIfEquationsStream(threadData, _conds, _trueBranches, _str);
_str = omc_IOStream_append(threadData, _str, _OMC_LIT88);
_str = omc_DAEDump_dumpInitialEquationsStream(threadData, _xs2, _str);
_str = omc_IOStream_append(threadData, _str, _OMC_LIT89);
tmpMeta[0] = omc_DAEDump_dumpInitialEquationsStream(threadData, _xs, _str);
goto tmp2_done;
}
case 6: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],25,2) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
_e = tmpMeta[3];
_xs = tmpMeta[2];
_str = tmp3_2;
tmp3 += 2;
_s1 = omc_ExpressionDump_printExpStr(threadData, _e);
tmpMeta[1] = mmc_mk_cons(_OMC_LIT2, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))));
_str = omc_IOStream_appendList(threadData, _str, tmpMeta[1]);
tmpMeta[0] = omc_DAEDump_dumpInitialEquationsStream(threadData, _xs, _str);
goto tmp2_done;
}
case 7: {
modelica_integer tmp5;
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],20,4) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3));
tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 4));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[5],5,2) == 0) goto tmp2_end;
tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[5]), 3));
tmp5 = mmc_unbox_integer(tmpMeta[6]);
if (1 != tmp5) goto tmp2_end;
tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 5));
_e1 = tmpMeta[3];
_e2 = tmpMeta[4];
_src = tmpMeta[7];
_xs = tmpMeta[2];
_str = tmp3_2;
tmp3 += 1;
_sourceStr = omc_DAEDump_getSourceInformationStr(threadData, _src);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e2);
tmpMeta[1] = mmc_mk_cons(_OMC_LIT19, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT20, mmc_mk_cons(_s2, mmc_mk_cons(_OMC_LIT30, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))))))));
_str = omc_IOStream_appendList(threadData, _str, tmpMeta[1]);
tmpMeta[0] = omc_DAEDump_dumpEquationsStream(threadData, _xs, _str);
goto tmp2_done;
}
case 8: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],22,2) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3));
_e1 = tmpMeta[3];
_src = tmpMeta[4];
_xs = tmpMeta[2];
_str = tmp3_2;
_sourceStr = omc_DAEDump_getSourceInformationStr(threadData, _src);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
tmpMeta[1] = mmc_mk_cons(_OMC_LIT23, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT30, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))))));
_str = omc_IOStream_appendList(threadData, _str, tmpMeta[1]);
tmpMeta[0] = omc_DAEDump_dumpEquationsStream(threadData, _xs, _str);
goto tmp2_done;
}
case 9: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
_xs = tmpMeta[2];
_str = tmp3_2;
tmpMeta[0] = omc_DAEDump_dumpInitialEquationsStream(threadData, _xs, _str);
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
tmp2_done:
(void)tmp3;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp2_done2;
goto_1:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp3 < 10) {
goto tmp2_top;
}
MMC_THROW_INTERNAL();
tmp2_done2:;
}
}
_outStream = tmpMeta[0];
_return: OMC_LABEL_UNUSED
return _outStream;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_DAEDump_dumpIfEquationsStream(threadData_t *threadData, modelica_metatype _iconds, modelica_metatype _itbs, modelica_metatype _inStream)
{
modelica_metatype _outStream = NULL;
modelica_metatype tmpMeta[5] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp3_1;modelica_metatype tmp3_2;modelica_metatype tmp3_3;
tmp3_1 = _iconds;
tmp3_2 = _itbs;
tmp3_3 = _inStream;
{
modelica_metatype _c = NULL;
modelica_metatype _tb = NULL;
modelica_metatype _str = NULL;
modelica_metatype _conds = NULL;
modelica_metatype _tbs = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
for (; tmp3 < 2; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (!listEmpty(tmp3_1)) goto tmp2_end;
if (!listEmpty(tmp3_2)) goto tmp2_end;
_str = tmp3_3;
tmpMeta[0] = _str;
goto tmp2_done;
}
case 1: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (listEmpty(tmp3_2)) goto tmp2_end;
tmpMeta[3] = MMC_CAR(tmp3_2);
tmpMeta[4] = MMC_CDR(tmp3_2);
_c = tmpMeta[1];
_conds = tmpMeta[2];
_tb = tmpMeta[3];
_tbs = tmpMeta[4];
_str = tmp3_3;
_str = omc_IOStream_append(threadData, _str, _OMC_LIT90);
_str = omc_IOStream_append(threadData, _str, omc_ExpressionDump_printExpStr(threadData, _c));
_str = omc_IOStream_append(threadData, _str, _OMC_LIT87);
_str = omc_DAEDump_dumpEquationsStream(threadData, _tb, _str);
_iconds = _conds;
_itbs = _tbs;
_inStream = _str;
goto _tailrecursive;
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
goto_1:;
MMC_THROW_INTERNAL();
goto tmp2_done;
tmp2_done:;
}
}
_outStream = tmpMeta[0];
_return: OMC_LABEL_UNUSED
return _outStream;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_DAEDump_dumpEquationsStream(threadData_t *threadData, modelica_metatype _inElementLst, modelica_metatype _inStream)
{
modelica_metatype _outStream = NULL;
modelica_metatype tmpMeta[11] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp3_1;modelica_metatype tmp3_2;
tmp3_1 = _inElementLst;
tmp3_2 = _inStream;
{
modelica_string _s1 = NULL;
modelica_string _s2 = NULL;
modelica_string _s3 = NULL;
modelica_string _s = NULL;
modelica_string _sourceStr = NULL;
modelica_metatype _e1 = NULL;
modelica_metatype _e2 = NULL;
modelica_metatype _e = NULL;
modelica_metatype _conds = NULL;
modelica_metatype _xs = NULL;
modelica_metatype _xs1 = NULL;
modelica_metatype _xs2 = NULL;
modelica_metatype _tb = NULL;
modelica_metatype _c = NULL;
modelica_metatype _cr = NULL;
modelica_metatype _cr1 = NULL;
modelica_metatype _cr2 = NULL;
modelica_metatype _str = NULL;
modelica_metatype _el = NULL;
modelica_metatype _dims = NULL;
modelica_metatype _src = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
for (; tmp3 < 17; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (!listEmpty(tmp3_1)) goto tmp2_end;
_str = tmp3_2;
tmpMeta[0] = _str;
goto tmp2_done;
}
case 1: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],3,3) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3));
tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 4));
_e1 = tmpMeta[3];
_e2 = tmpMeta[4];
_src = tmpMeta[5];
_xs = tmpMeta[2];
_str = tmp3_2;
_sourceStr = omc_DAEDump_getSourceInformationStr(threadData, _src);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e2);
tmpMeta[1] = mmc_mk_cons(_OMC_LIT2, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT3, mmc_mk_cons(_s2, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil)))))));
_str = omc_IOStream_appendList(threadData, _str, tmpMeta[1]);
_inElementLst = _xs;
_inStream = _str;
goto _tailrecursive;
goto tmp2_done;
}
case 2: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],4,3) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3));
tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 4));
_cr1 = tmpMeta[3];
_cr2 = tmpMeta[4];
_src = tmpMeta[5];
_xs = tmpMeta[2];
_str = tmp3_2;
_sourceStr = omc_DAEDump_getSourceInformationStr(threadData, _src);
tmpMeta[1] = stringAppend(_OMC_LIT2,omc_ComponentReference_printComponentRefStr(threadData, _cr1));
tmpMeta[2] = stringAppend(tmpMeta[1],_OMC_LIT3);
tmpMeta[3] = stringAppend(tmpMeta[2],omc_ComponentReference_printComponentRefStr(threadData, _cr2));
tmpMeta[4] = stringAppend(tmpMeta[3],_sourceStr);
tmpMeta[5] = stringAppend(tmpMeta[4],_OMC_LIT1);
_str = omc_IOStream_append(threadData, _str, tmpMeta[5]);
_inElementLst = _xs;
_inStream = _str;
goto _tailrecursive;
goto tmp2_done;
}
case 3: {
modelica_boolean tmp5;
modelica_string tmp6;
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],5,4) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3));
tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 4));
tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 5));
_dims = tmpMeta[3];
_e1 = tmpMeta[4];
_e2 = tmpMeta[5];
_src = tmpMeta[6];
_xs = tmpMeta[2];
_str = tmp3_2;
_sourceStr = omc_DAEDump_getSourceInformationStr(threadData, _src);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e2);
_s3 = (omc_Config_typeinfo(threadData)?omc_Types_printDimensionsStr(threadData, _dims):_OMC_LIT34);
tmp5 = (modelica_boolean)omc_Config_typeinfo(threadData);
if(tmp5)
{
tmpMeta[1] = stringAppend(_OMC_LIT91,_s3);
tmpMeta[2] = stringAppend(tmpMeta[1],_OMC_LIT92);
tmp6 = tmpMeta[2];
}
else
{
tmp6 = _OMC_LIT34;
}
_s3 = tmp6;
tmpMeta[1] = mmc_mk_cons(_OMC_LIT2, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT3, mmc_mk_cons(_s2, mmc_mk_cons(_s3, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))))))));
_str = omc_IOStream_appendList(threadData, _str, tmpMeta[1]);
_inElementLst = _xs;
_inStream = _str;
goto _tailrecursive;
goto tmp2_done;
}
case 4: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],8,3) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3));
tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 4));
_e1 = tmpMeta[3];
_e2 = tmpMeta[4];
_src = tmpMeta[5];
_xs = tmpMeta[2];
_str = tmp3_2;
_sourceStr = omc_DAEDump_getSourceInformationStr(threadData, _src);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e2);
tmpMeta[1] = mmc_mk_cons(_OMC_LIT2, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT3, mmc_mk_cons(_s2, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil)))))));
_str = omc_IOStream_appendList(threadData, _str, tmpMeta[1]);
_inElementLst = _xs;
_inStream = _str;
goto _tailrecursive;
goto tmp2_done;
}
case 5: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],1,3) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3));
tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 4));
_c = tmpMeta[3];
_e = tmpMeta[4];
_src = tmpMeta[5];
_xs = tmpMeta[2];
_str = tmp3_2;
_sourceStr = omc_DAEDump_getSourceInformationStr(threadData, _src);
_s1 = omc_ComponentReference_printComponentRefStr(threadData, _c);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e);
tmpMeta[1] = mmc_mk_cons(_OMC_LIT2, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT3, mmc_mk_cons(_s2, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil)))))));
_str = omc_IOStream_appendList(threadData, _str, tmpMeta[1]);
_inElementLst = _xs;
_inStream = _str;
goto _tailrecursive;
goto tmp2_done;
}
case 6: {
modelica_integer tmp7;
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],19,4) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3));
tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 4));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[5],5,2) == 0) goto tmp2_end;
tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[5]), 3));
tmp7 = mmc_unbox_integer(tmpMeta[6]);
if (1 != tmp7) goto tmp2_end;
tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 5));
_e1 = tmpMeta[3];
_e2 = tmpMeta[4];
_src = tmpMeta[7];
_xs = tmpMeta[2];
_str = tmp3_2;
_sourceStr = omc_DAEDump_getSourceInformationStr(threadData, _src);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e2);
tmpMeta[1] = mmc_mk_cons(_OMC_LIT19, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT20, mmc_mk_cons(_s2, mmc_mk_cons(_OMC_LIT30, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))))))));
_str = omc_IOStream_appendList(threadData, _str, tmpMeta[1]);
_inElementLst = _xs;
_inStream = _str;
goto _tailrecursive;
goto tmp2_done;
}
case 7: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],21,2) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3));
_e1 = tmpMeta[3];
_src = tmpMeta[4];
_xs = tmpMeta[2];
_str = tmp3_2;
_sourceStr = omc_DAEDump_getSourceInformationStr(threadData, _src);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
tmpMeta[1] = mmc_mk_cons(_OMC_LIT23, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT30, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))))));
_str = omc_IOStream_appendList(threadData, _str, tmpMeta[1]);
_inElementLst = _xs;
_inStream = _str;
goto _tailrecursive;
goto tmp2_done;
}
case 8: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],11,7) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 4));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 6));
tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 7));
tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 8));
_s = tmpMeta[3];
_e1 = tmpMeta[4];
_xs1 = tmpMeta[5];
_src = tmpMeta[6];
_xs = tmpMeta[2];
_str = tmp3_2;
omc_DAEDump_getSourceInformationStr(threadData, _src);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
tmpMeta[1] = mmc_mk_cons(_OMC_LIT93, mmc_mk_cons(_s, mmc_mk_cons(_OMC_LIT94, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT95, MMC_REFSTRUCTLIT(mmc_nil))))));
_str = omc_IOStream_appendList(threadData, _str, tmpMeta[1]);
_str = omc_DAEDump_dumpEquationsStream(threadData, _xs1, _str);
_str = omc_IOStream_appendList(threadData, _str, _OMC_LIT97);
_inElementLst = _xs;
_inStream = _str;
goto _tailrecursive;
goto tmp2_done;
}
case 9: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],12,4) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
if (!listEmpty(tmpMeta[3])) goto tmp2_end;
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3));
if (!listEmpty(tmpMeta[4])) goto tmp2_end;
tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 4));
if (!listEmpty(tmpMeta[5])) goto tmp2_end;
_str = tmp3_2;
tmpMeta[0] = _str;
goto tmp2_done;
}
case 10: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],12,4) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
if (listEmpty(tmpMeta[3])) goto tmp2_end;
tmpMeta[4] = MMC_CAR(tmpMeta[3]);
tmpMeta[5] = MMC_CDR(tmpMeta[3]);
tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3));
if (listEmpty(tmpMeta[6])) goto tmp2_end;
tmpMeta[7] = MMC_CAR(tmpMeta[6]);
tmpMeta[8] = MMC_CDR(tmpMeta[6]);
tmpMeta[9] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 4));
if (!listEmpty(tmpMeta[9])) goto tmp2_end;
tmpMeta[10] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 5));
_e = tmpMeta[4];
_conds = tmpMeta[5];
_xs1 = tmpMeta[7];
_tb = tmpMeta[8];
_src = tmpMeta[10];
_xs = tmpMeta[2];
_str = tmp3_2;
_sourceStr = omc_DAEDump_getSourceInformationStr(threadData, _src);
_str = omc_IOStream_append(threadData, _str, _OMC_LIT86);
_str = omc_IOStream_append(threadData, _str, omc_ExpressionDump_printExpStr(threadData, _e));
_str = omc_IOStream_append(threadData, _str, _OMC_LIT87);
_str = omc_DAEDump_dumpEquationsStream(threadData, _xs1, _str);
_str = omc_DAEDump_dumpIfEquationsStream(threadData, _conds, _tb, _str);
_str = omc_IOStream_append(threadData, _str, _OMC_LIT98);
tmpMeta[1] = stringAppend(_sourceStr,_OMC_LIT1);
_str = omc_IOStream_append(threadData, _str, tmpMeta[1]);
_inElementLst = _xs;
_inStream = _str;
goto _tailrecursive;
goto tmp2_done;
}
case 11: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],12,4) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
if (listEmpty(tmpMeta[3])) goto tmp2_end;
tmpMeta[4] = MMC_CAR(tmpMeta[3]);
tmpMeta[5] = MMC_CDR(tmpMeta[3]);
tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3));
if (listEmpty(tmpMeta[6])) goto tmp2_end;
tmpMeta[7] = MMC_CAR(tmpMeta[6]);
tmpMeta[8] = MMC_CDR(tmpMeta[6]);
tmpMeta[9] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 4));
tmpMeta[10] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 5));
_e = tmpMeta[4];
_conds = tmpMeta[5];
_xs1 = tmpMeta[7];
_tb = tmpMeta[8];
_xs2 = tmpMeta[9];
_src = tmpMeta[10];
_xs = tmpMeta[2];
_str = tmp3_2;
_sourceStr = omc_DAEDump_getSourceInformationStr(threadData, _src);
_str = omc_IOStream_append(threadData, _str, _OMC_LIT86);
_str = omc_IOStream_append(threadData, _str, omc_ExpressionDump_printExpStr(threadData, _e));
_str = omc_IOStream_append(threadData, _str, _OMC_LIT87);
_str = omc_DAEDump_dumpEquationsStream(threadData, _xs1, _str);
_str = omc_DAEDump_dumpIfEquationsStream(threadData, _conds, _tb, _str);
_str = omc_IOStream_append(threadData, _str, _OMC_LIT88);
_str = omc_DAEDump_dumpEquationsStream(threadData, _xs2, _str);
tmpMeta[1] = stringAppend(_OMC_LIT98,_sourceStr);
tmpMeta[2] = stringAppend(tmpMeta[1],_OMC_LIT1);
_str = omc_IOStream_append(threadData, _str, tmpMeta[2]);
_inElementLst = _xs;
_inStream = _str;
goto _tailrecursive;
goto tmp2_done;
}
case 12: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],10,4) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3));
tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 4));
if (optionNone(tmpMeta[5])) goto tmp2_end;
tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[5]), 1));
tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 5));
_e = tmpMeta[3];
_xs1 = tmpMeta[4];
_el = tmpMeta[6];
_src = tmpMeta[7];
_xs = tmpMeta[2];
_str = tmp3_2;
omc_DAEDump_getSourceInformationStr(threadData, _src);
_str = omc_IOStream_append(threadData, _str, _OMC_LIT99);
_str = omc_IOStream_append(threadData, _str, omc_ExpressionDump_printExpStr(threadData, _e));
_str = omc_IOStream_append(threadData, _str, _OMC_LIT87);
_str = omc_DAEDump_dumpEquationsStream(threadData, _xs1, _str);
_str = omc_IOStream_append(threadData, _str, _OMC_LIT100);
tmpMeta[1] = mmc_mk_cons(_el, _xs);
_inElementLst = tmpMeta[1];
_inStream = _str;
goto _tailrecursive;
goto tmp2_done;
}
case 13: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],10,4) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3));
tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 4));
if (!optionNone(tmpMeta[5])) goto tmp2_end;
tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 5));
_e = tmpMeta[3];
_xs1 = tmpMeta[4];
_src = tmpMeta[6];
_xs = tmpMeta[2];
_str = tmp3_2;
_sourceStr = omc_DAEDump_getSourceInformationStr(threadData, _src);
_str = omc_IOStream_append(threadData, _str, _OMC_LIT101);
_str = omc_IOStream_append(threadData, _str, omc_ExpressionDump_printExpStr(threadData, _e));
_str = omc_IOStream_append(threadData, _str, _OMC_LIT87);
_str = omc_DAEDump_dumpEquationsStream(threadData, _xs1, _str);
tmpMeta[1] = stringAppend(_OMC_LIT102,_sourceStr);
tmpMeta[2] = stringAppend(tmpMeta[1],_OMC_LIT1);
_str = omc_IOStream_append(threadData, _str, tmpMeta[2]);
_inElementLst = _xs;
_inStream = _str;
goto _tailrecursive;
goto tmp2_done;
}
case 14: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],23,3) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3));
tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 4));
_cr = tmpMeta[3];
_e = tmpMeta[4];
_src = tmpMeta[5];
_xs = tmpMeta[2];
_str = tmp3_2;
_sourceStr = omc_DAEDump_getSourceInformationStr(threadData, _src);
_s = omc_ComponentReference_printComponentRefStr(threadData, _cr);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e);
tmpMeta[1] = mmc_mk_cons(_OMC_LIT103, mmc_mk_cons(_s, mmc_mk_cons(_OMC_LIT20, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT30, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))))))));
_str = omc_IOStream_appendList(threadData, _str, tmpMeta[1]);
_inElementLst = _xs;
_inStream = _str;
goto _tailrecursive;
goto tmp2_done;
}
case 15: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],24,2) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3));
_e = tmpMeta[3];
_src = tmpMeta[4];
_xs = tmpMeta[2];
_str = tmp3_2;
_sourceStr = omc_DAEDump_getSourceInformationStr(threadData, _src);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e);
tmpMeta[1] = mmc_mk_cons(_OMC_LIT2, mmc_mk_cons(_s1, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil)))));
_str = omc_IOStream_appendList(threadData, _str, tmpMeta[1]);
_inElementLst = _xs;
_inStream = _str;
goto _tailrecursive;
goto tmp2_done;
}
case 16: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
_xs = tmpMeta[2];
_str = tmp3_2;
_str = omc_IOStream_append(threadData, _str, _OMC_LIT104);
_inElementLst = _xs;
_inStream = _str;
goto _tailrecursive;
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
goto_1:;
MMC_THROW_INTERNAL();
goto tmp2_done;
tmp2_done:;
}
}
_outStream = tmpMeta[0];
_return: OMC_LABEL_UNUSED
return _outStream;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_DAEDump_dumpInitialAlgorithmsStream(threadData_t *threadData, modelica_metatype _inElementLst, modelica_metatype _inStream)
{
modelica_metatype _outStream = NULL;
modelica_metatype tmpMeta[5] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp3_1;volatile modelica_metatype tmp3_2;
tmp3_1 = _inElementLst;
tmp3_2 = _inStream;
{
modelica_metatype _str = NULL;
modelica_metatype _stmts = NULL;
modelica_metatype _xs = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp2_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp3 < 3; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (!listEmpty(tmp3_1)) goto tmp2_end;
_str = tmp3_2;
tmp3 += 2;
tmpMeta[0] = _str;
goto tmp2_done;
}
case 1: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],16,2) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 2));
_stmts = tmpMeta[4];
_xs = tmpMeta[2];
_str = tmp3_2;
_str = omc_IOStream_append(threadData, _str, _OMC_LIT70);
_str = omc_IOStream_appendList(threadData, _str, omc_List_map(threadData, _stmts, boxvar_DAEDump_ppStatementStr));
tmpMeta[0] = omc_DAEDump_dumpInitialAlgorithmsStream(threadData, _xs, _str);
goto tmp2_done;
}
case 2: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
_xs = tmpMeta[2];
_str = tmp3_2;
tmpMeta[0] = omc_DAEDump_dumpInitialAlgorithmsStream(threadData, _xs, _str);
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
tmp2_done:
(void)tmp3;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp2_done2;
goto_1:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp3 < 3) {
goto tmp2_top;
}
MMC_THROW_INTERNAL();
tmp2_done2:;
}
}
_outStream = tmpMeta[0];
_return: OMC_LABEL_UNUSED
return _outStream;
}
DLLExport
modelica_metatype omc_DAEDump_dumpAlgorithmsStream(threadData_t *threadData, modelica_metatype _inElementLst, modelica_metatype _inStream)
{
modelica_metatype _outStream = NULL;
modelica_metatype tmpMeta[5] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp3_1;volatile modelica_metatype tmp3_2;
tmp3_1 = _inElementLst;
tmp3_2 = _inStream;
{
modelica_metatype _str = NULL;
modelica_metatype _stmts = NULL;
modelica_metatype _xs = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp2_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp3 < 3; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (!listEmpty(tmp3_1)) goto tmp2_end;
_str = tmp3_2;
tmp3 += 2;
tmpMeta[0] = _str;
goto tmp2_done;
}
case 1: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],15,2) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 2));
_stmts = tmpMeta[4];
_xs = tmpMeta[2];
_str = tmp3_2;
_str = omc_IOStream_append(threadData, _str, _OMC_LIT71);
_str = omc_IOStream_appendList(threadData, _str, omc_List_map(threadData, _stmts, boxvar_DAEDump_ppStatementStr));
tmpMeta[0] = omc_DAEDump_dumpAlgorithmsStream(threadData, _xs, _str);
goto tmp2_done;
}
case 2: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
_xs = tmpMeta[2];
_str = tmp3_2;
tmpMeta[0] = omc_DAEDump_dumpAlgorithmsStream(threadData, _xs, _str);
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
tmp2_done:
(void)tmp3;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp2_done2;
goto_1:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp3 < 3) {
goto tmp2_top;
}
MMC_THROW_INTERNAL();
tmp2_done2:;
}
}
_outStream = tmpMeta[0];
_return: OMC_LABEL_UNUSED
return _outStream;
}
DLLExport
modelica_metatype omc_DAEDump_dumpCompWithSplitElementsStream(threadData_t *threadData, modelica_metatype _inCompLst, modelica_metatype _inStream)
{
modelica_metatype _outStream = NULL;
modelica_metatype tmpMeta[9] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp3_1;modelica_metatype tmp3_2;
tmp3_1 = _inCompLst;
tmp3_2 = _inStream;
{
modelica_string _name = NULL;
modelica_metatype _spltElems = NULL;
modelica_metatype _comment = NULL;
modelica_string _cstr = NULL;
modelica_metatype _str = NULL;
modelica_metatype _xs = NULL;
modelica_metatype _v = NULL;
modelica_metatype _ie = NULL;
modelica_metatype _ia = NULL;
modelica_metatype _e = NULL;
modelica_metatype _a = NULL;
modelica_metatype _co = NULL;
modelica_metatype _sm = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
for (; tmp3 < 2; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (!listEmpty(tmp3_1)) goto tmp2_end;
_str = tmp3_2;
tmpMeta[0] = _str;
goto tmp2_done;
}
case 1: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3));
tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 4));
_name = tmpMeta[3];
_spltElems = tmpMeta[4];
_comment = tmpMeta[5];
_xs = tmpMeta[2];
_str = tmp3_2;
{
{
volatile mmc_switch_type tmp7;
int tmp8;
tmp7 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp6_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp7 < 2; tmp7++) {
switch (MMC_SWITCH_CAST(tmp7)) {
case 0: {
tmpMeta[1] = _comment;
if (optionNone(tmpMeta[1])) goto goto_5;
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 1));
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 3));
if (optionNone(tmpMeta[3])) goto goto_5;
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 1));
_cstr = tmpMeta[4];
tmpMeta[1] = stringAppend(_OMC_LIT105,_cstr);
tmpMeta[2] = stringAppend(tmpMeta[1],_OMC_LIT106);
_cstr = tmpMeta[2];
goto tmp6_done;
}
case 1: {
_cstr = _OMC_LIT34;
goto tmp6_done;
}
}
goto tmp6_end;
tmp6_end: ;
}
goto goto_5;
tmp6_done:
(void)tmp7;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp6_done2;
goto_5:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp7 < 2) {
goto tmp6_top;
}
goto goto_1;
tmp6_done2:;
}
}
;
tmpMeta[1] = _spltElems;
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 4));
tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 5));
tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 6));
tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 7));
tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 10));
_v = tmpMeta[2];
_ie = tmpMeta[3];
_ia = tmpMeta[4];
_e = tmpMeta[5];
_a = tmpMeta[6];
_co = tmpMeta[7];
_sm = tmpMeta[8];
tmpMeta[1] = stringAppend(_name,_cstr);
tmpMeta[2] = stringAppend(tmpMeta[1],_OMC_LIT15);
_str = omc_IOStream_append(threadData, _str, tmpMeta[2]);
_str = omc_DAEDump_dumpCompWithSplitElementsStream(threadData, _sm, _str);
_str = omc_DAEDump_dumpVarsStream(threadData, _v, 0, _str);
_str = omc_IOStream_append(threadData, _str, (listEmpty(_ie)?_OMC_LIT34:_OMC_LIT107));
_str = omc_DAEDump_dumpInitialEquationsStream(threadData, _ie, _str);
_str = omc_DAEDump_dumpInitialAlgorithmsStream(threadData, _ia, _str);
_str = omc_IOStream_append(threadData, _str, (listEmpty(_e)?_OMC_LIT34:_OMC_LIT108));
_str = omc_DAEDump_dumpEquationsStream(threadData, _e, _str);
_str = omc_DAEDump_dumpAlgorithmsStream(threadData, _a, _str);
_str = omc_IOStream_append(threadData, _str, (listEmpty(_co)?_OMC_LIT34:_OMC_LIT109));
_str = omc_DAEDump_dumpConstraintStream(threadData, _co, _str);
tmpMeta[1] = stringAppend(_OMC_LIT57,_name);
tmpMeta[2] = stringAppend(tmpMeta[1],_cstr);
tmpMeta[3] = stringAppend(tmpMeta[2],_OMC_LIT1);
_str = omc_IOStream_append(threadData, _str, tmpMeta[3]);
_inCompLst = _xs;
_inStream = _str;
goto _tailrecursive;
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
goto_1:;
MMC_THROW_INTERNAL();
goto tmp2_done;
tmp2_done:;
}
}
_outStream = tmpMeta[0];
_return: OMC_LABEL_UNUSED
return _outStream;
}
DLLExport
modelica_metatype omc_DAEDump_dumpElementsStream(threadData_t *threadData, modelica_metatype _l, modelica_metatype _inStream)
{
modelica_metatype _outStream = NULL;
modelica_metatype tmpMeta[5] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp3_1;
tmp3_1 = _inStream;
{
modelica_metatype _str = NULL;
modelica_metatype _v = NULL;
modelica_metatype _ie = NULL;
modelica_metatype _ia = NULL;
modelica_metatype _e = NULL;
modelica_metatype _a = NULL;
modelica_metatype _co = NULL;
modelica_metatype _sm = NULL;
modelica_metatype _comments = NULL;
modelica_metatype _ann = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
for (; tmp3 < 1; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
_str = tmp3_1;
_v = omc_DAEUtil_splitElements(threadData, _l ,&_ie ,&_ia ,&_e ,&_a ,NULL ,&_co ,NULL ,&_sm ,&_comments);
_str = omc_DAEDump_dumpCompWithSplitElementsStream(threadData, _sm, _str);
_str = omc_DAEDump_dumpVarsStream(threadData, _v, 0, _str);
_str = omc_IOStream_append(threadData, _str, (listEmpty(_ie)?_OMC_LIT34:_OMC_LIT107));
_str = omc_DAEDump_dumpInitialEquationsStream(threadData, _ie, _str);
_str = omc_DAEDump_dumpInitialAlgorithmsStream(threadData, _ia, _str);
_str = omc_IOStream_append(threadData, _str, (listEmpty(_e)?_OMC_LIT34:_OMC_LIT108));
_str = omc_DAEDump_dumpEquationsStream(threadData, _e, _str);
_str = omc_DAEDump_dumpAlgorithmsStream(threadData, _a, _str);
_str = omc_IOStream_append(threadData, _str, (listEmpty(_co)?_OMC_LIT34:_OMC_LIT109));
_str = omc_DAEDump_dumpConstraintStream(threadData, _co, _str);
{
modelica_metatype __omcQ_24tmpVar1;
modelica_metatype* tmp5;
modelica_string tmp6 = 0;
modelica_string __omcQ_24tmpVar0;
int tmp11;
modelica_metatype _cmt_loopVar = 0;
modelica_metatype _cmt;
_cmt_loopVar = _comments;
tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil);
__omcQ_24tmpVar1 = tmpMeta[2];
tmp5 = &__omcQ_24tmpVar1;
while(1) {
tmp11 = 1;
if (!listEmpty(_cmt_loopVar)) {
_cmt = MMC_CAR(_cmt_loopVar);
_cmt_loopVar = MMC_CDR(_cmt_loopVar);
tmp11--;
}
if (tmp11 == 0) {
{
modelica_metatype tmp9_1;
tmp9_1 = _cmt;
{
volatile mmc_switch_type tmp9;
int tmp10;
tmp9 = 0;
for (; tmp9 < 2; tmp9++) {
switch (MMC_SWITCH_CAST(tmp9)) {
case 0: {
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp9_1), 2));
if (optionNone(tmpMeta[3])) goto tmp8_end;
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 1));
_ann = tmpMeta[3];
tmpMeta[3] = mmc_mk_box3(3, &SCode_Comment_COMMENT__desc, _ann, mmc_mk_none());
tmp6 = omc_SCodeDump_printCommentStr(threadData, tmpMeta[3], _OMC_LIT110);
goto tmp8_done;
}
case 1: {
tmp6 = _OMC_LIT34;
goto tmp8_done;
}
}
goto tmp8_end;
tmp8_end: ;
}
goto goto_7;
goto_7:;
goto goto_1;
goto tmp8_done;
tmp8_done:;
}
}__omcQ_24tmpVar0 = tmp6;
*tmp5 = mmc_mk_cons(__omcQ_24tmpVar0,0);
tmp5 = &MMC_CDR(*tmp5);
} else if (tmp11 == 1) {
break;
} else {
goto goto_1;
}
}
*tmp5 = mmc_mk_nil();
tmpMeta[1] = __omcQ_24tmpVar1;
}
tmpMeta[0] = omc_IOStream_append(threadData, _str, stringAppendList(tmpMeta[1]));
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
goto_1:;
MMC_THROW_INTERNAL();
goto tmp2_done;
tmp2_done:;
}
}
_outStream = tmpMeta[0];
_return: OMC_LABEL_UNUSED
return _outStream;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_DAEDump_dumpCompElementStream(threadData_t *threadData, modelica_metatype _inElement, modelica_metatype _inStream)
{
modelica_metatype _outStream = NULL;
modelica_metatype tmpMeta[4] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp3_1;volatile modelica_metatype tmp3_2;
tmp3_1 = _inElement;
tmp3_2 = _inStream;
{
modelica_string _n = NULL;
modelica_metatype _l = NULL;
modelica_metatype _c = NULL;
modelica_metatype _str = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp2_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp3 < 2; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,17,4) == 0) goto tmp2_end;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 5));
_n = tmpMeta[1];
_l = tmpMeta[2];
_c = tmpMeta[3];
_str = tmp3_2;
_str = omc_IOStream_append(threadData, _str, _OMC_LIT111);
_str = omc_IOStream_append(threadData, _str, _n);
_str = omc_IOStream_append(threadData, _str, omc_DAEDump_dumpCommentStr(threadData, _c));
_str = omc_IOStream_append(threadData, _str, _OMC_LIT15);
_str = omc_DAEDump_dumpElementsStream(threadData, _l, _str);
_str = omc_IOStream_append(threadData, _str, omc_DAEDump_dumpClassAnnotationStr(threadData, _c));
_str = omc_IOStream_append(threadData, _str, _OMC_LIT57);
_str = omc_IOStream_append(threadData, _str, _n);
tmpMeta[0] = omc_IOStream_append(threadData, _str, _OMC_LIT1);
goto tmp2_done;
}
case 1: {
_str = tmp3_2;
tmpMeta[0] = _str;
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
tmp2_done:
(void)tmp3;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp2_done2;
goto_1:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp3 < 2) {
goto tmp2_top;
}
MMC_THROW_INTERNAL();
tmp2_done2:;
}
}
_outStream = tmpMeta[0];
_return: OMC_LABEL_UNUSED
return _outStream;
}
PROTECTED_FUNCTION_STATIC modelica_boolean omc_DAEDump_isVisibleFunction(threadData_t *threadData, modelica_metatype _inFunc, modelica_boolean _inHideRecordCons, modelica_boolean _inInliningEnabled)
{
modelica_boolean _outIsVisible;
modelica_boolean tmp1 = 0;
modelica_metatype tmpMeta[5] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;modelica_boolean tmp4_2;modelica_boolean tmp4_3;
tmp4_1 = _inFunc;
tmp4_2 = _inHideRecordCons;
tmp4_3 = _inInliningEnabled;
{
modelica_metatype _cmt = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 7; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,0,10) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
if (listEmpty(tmpMeta[0])) goto tmp3_end;
tmpMeta[1] = MMC_CAR(tmpMeta[0]);
tmpMeta[2] = MMC_CDR(tmpMeta[0]);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],1,2) == 0) goto tmp3_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 5));
if (7 != MMC_STRLEN(tmpMeta[4]) || strcmp(MMC_STRINGDATA(_OMC_LIT68), MMC_STRINGDATA(tmpMeta[4])) != 0) goto tmp3_end;
tmp1 = 0;
goto tmp3_done;
}
case 1: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,0,10) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[0],2,1) == 0) goto tmp3_end;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 2));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],0,2) == 0) goto tmp3_end;
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
if (12 != MMC_STRLEN(tmpMeta[2]) || strcmp(MMC_STRINGDATA(_OMC_LIT113), MMC_STRINGDATA(tmpMeta[2])) != 0) goto tmp3_end;
tmp1 = 0;
goto tmp3_done;
}
case 2: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,0,10) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 8));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[0],1,0) == 0) goto tmp3_end;
tmp1 = 0;
goto tmp3_done;
}
case 3: {
if (1 != tmp4_3) goto tmp3_end;
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,0,10) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 8));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[0],2,0) == 0) goto tmp3_end;
tmp1 = 0;
goto tmp3_done;
}
case 4: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,0,10) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 11));
_cmt = tmpMeta[0];
tmp1 = (!omc_SCodeUtil_optCommentHasBooleanNamedAnnotation(threadData, _cmt, _OMC_LIT112));
goto tmp3_done;
}
case 5: {
if (1 != tmp4_2) goto tmp3_end;
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,1,3) == 0) goto tmp3_end;
tmp1 = 0;
goto tmp3_done;
}
case 6: {
tmp1 = 1;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_outIsVisible = tmp1;
_return: OMC_LABEL_UNUSED
return _outIsVisible;
}
PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_DAEDump_isVisibleFunction(threadData_t *threadData, modelica_metatype _inFunc, modelica_metatype _inHideRecordCons, modelica_metatype _inInliningEnabled)
{
modelica_integer tmp1;
modelica_integer tmp2;
modelica_boolean _outIsVisible;
modelica_metatype out_outIsVisible;
tmp1 = mmc_unbox_integer(_inHideRecordCons);
tmp2 = mmc_unbox_integer(_inInliningEnabled);
_outIsVisible = omc_DAEDump_isVisibleFunction(threadData, _inFunc, tmp1, tmp2);
out_outIsVisible = mmc_mk_icon(_outIsVisible);
return out_outIsVisible;
}
DLLExport
modelica_metatype omc_DAEDump_dumpFunctionList(threadData_t *threadData, modelica_metatype _functionTree)
{
modelica_metatype _funList = NULL;
modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
{
modelica_metatype _funcs = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
for (; tmp3 < 1; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
_funcs = omc_DAEUtil_getFunctionList(threadData, _functionTree, 0);
_funcs = omc_List_filter2OnTrue(threadData, _funcs, boxvar_DAEDump_isVisibleFunction, mmc_mk_boolean(omc_Flags_isSet(threadData, _OMC_LIT63)), mmc_mk_boolean(omc_Flags_isSet(threadData, _OMC_LIT117)));
_funcs = omc_DAEDump_sortFunctions(threadData, _funcs);
tmpMeta[1] = mmc_mk_box2(3, &DAEDump_functionList_FUNCTION__LIST__desc, _funcs);
tmpMeta[0] = tmpMeta[1];
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
goto_1:;
MMC_THROW_INTERNAL();
goto tmp2_done;
tmp2_done:;
}
}
_funList = tmpMeta[0];
_return: OMC_LABEL_UNUSED
return _funList;
}
DLLExport
modelica_metatype omc_DAEDump_dumpStream(threadData_t *threadData, modelica_metatype _dae, modelica_metatype _functionTree, modelica_metatype _inStream)
{
modelica_metatype _outStream = NULL;
modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp3_1;modelica_metatype tmp3_2;
tmp3_1 = _dae;
tmp3_2 = _inStream;
{
modelica_metatype _daelist = NULL;
modelica_metatype _funcs = NULL;
modelica_metatype _str = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
for (; tmp3 < 1; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
_daelist = tmpMeta[1];
_str = tmp3_2;
_funcs = omc_DAEUtil_getFunctionList(threadData, _functionTree, 0);
_funcs = omc_DAEDump_sortFunctions(threadData, _funcs);
_str = omc_List_fold(threadData, _funcs, boxvar_DAEDump_dumpFunctionStream, _str);
_str = omc_IOStream_appendList(threadData, _str, omc_List_map(threadData, _daelist, boxvar_DAEDump_dumpExtObjClassStr));
tmpMeta[0] = omc_List_fold(threadData, _daelist, boxvar_DAEDump_dumpCompElementStream, _str);
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
goto_1:;
MMC_THROW_INTERNAL();
goto tmp2_done;
tmp2_done:;
}
}
_outStream = tmpMeta[0];
_return: OMC_LABEL_UNUSED
return _outStream;
}
DLLExport
modelica_string omc_DAEDump_dumpConstraintsStr(threadData_t *threadData, modelica_metatype _constrs)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
{
modelica_metatype _myStream = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 1; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
_myStream = omc_IOStream_create(threadData, _OMC_LIT118, _OMC_LIT84);
_myStream = omc_DAEDump_dumpConstraintStream(threadData, _constrs, _myStream);
tmp1 = omc_IOStream_string(threadData, _myStream);
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
DLLExport
modelica_string omc_DAEDump_dumpAlgorithmsStr(threadData_t *threadData, modelica_metatype _algs)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
{
modelica_metatype _myStream = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 1; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
_myStream = omc_IOStream_create(threadData, _OMC_LIT119, _OMC_LIT84);
_myStream = omc_DAEDump_dumpAlgorithmsStream(threadData, _algs, _myStream);
tmp1 = omc_IOStream_string(threadData, _myStream);
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
DLLExport
modelica_string omc_DAEDump_dumpElementsStr(threadData_t *threadData, modelica_metatype _els)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
{
modelica_metatype _myStream = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 1; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
_myStream = omc_IOStream_create(threadData, _OMC_LIT120, _OMC_LIT84);
_myStream = omc_DAEDump_dumpElementsStream(threadData, _els, _myStream);
tmp1 = omc_IOStream_string(threadData, _myStream);
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
DLLExport
modelica_string omc_DAEDump_dumpStr(threadData_t *threadData, modelica_metatype _inDAElist, modelica_metatype _functionTree)
{
modelica_string _outString = NULL;
modelica_metatype _daelist = NULL;
modelica_metatype _funList = NULL;
modelica_metatype _fixedDae = NULL;
modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
tmpMeta[0] = _inDAElist;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 2));
_daelist = tmpMeta[1];
_funList = omc_DAEDump_dumpFunctionList(threadData, _functionTree);
_fixedDae = omc_List_map(threadData, _daelist, boxvar_DAEUtil_splitComponent);
_outString = omc_Tpl_tplString2(threadData, boxvar_DAEDumpTpl_dumpDAE, _fixedDae, _funList);
_return: OMC_LABEL_UNUSED
return _outString;
}
DLLExport
modelica_string omc_DAEDump_unparseDimensions(threadData_t *threadData, modelica_metatype _dims, modelica_boolean _printTypeDimension)
{
modelica_string _dimsStr = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp4_1;volatile modelica_boolean tmp4_2;
tmp4_1 = _dims;
tmp4_2 = _printTypeDimension;
{
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp3_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp4 < 3; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (0 != tmp4_2) goto tmp3_end;
tmp4 += 2;
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
case 1: {
if (1 != tmp4_2) goto tmp3_end;
if (!listEmpty(tmp4_1)) goto tmp3_end;
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
case 2: {
if (1 != tmp4_2) goto tmp3_end;
tmpMeta[0] = stringAppend(_OMC_LIT121,stringDelimitList(omc_List_map(threadData, _dims, boxvar_ExpressionDump_dimensionString), _OMC_LIT43));
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT122);
tmp1 = tmpMeta[1];
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
tmp3_done:
(void)tmp4;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp3_done2;
goto_2:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp4 < 3) {
goto tmp3_top;
}
MMC_THROW_INTERNAL();
tmp3_done2:;
}
}
_dimsStr = tmp1;
_return: OMC_LABEL_UNUSED
return _dimsStr;
}
modelica_metatype boxptr_DAEDump_unparseDimensions(threadData_t *threadData, modelica_metatype _dims, modelica_metatype _printTypeDimension)
{
modelica_integer tmp1;
modelica_string _dimsStr = NULL;
tmp1 = mmc_unbox_integer(_printTypeDimension);
_dimsStr = omc_DAEDump_unparseDimensions(threadData, _dims, tmp1);
return _dimsStr;
}
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_unparseType(threadData_t *threadData, modelica_metatype _tp)
{
modelica_string _str = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp4_1;
tmp4_1 = _tp;
{
modelica_string _name = NULL;
modelica_string _dim_str = NULL;
modelica_metatype _path = NULL;
modelica_metatype _bc_tp = NULL;
modelica_metatype _ty = NULL;
modelica_metatype _dims = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp3_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp4 < 5; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,9,3) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[0],3,1) == 0) goto tmp3_end;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 2));
_path = tmpMeta[1];
tmp4 += 3;
tmp1 = omc_AbsynUtil_pathStringNoQual(threadData, _path, _OMC_LIT17, 0, 0);
goto tmp3_done;
}
case 1: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,6,2) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
_ty = tmpMeta[0];
tmp4 += 2;
tmpMeta[0] = omc_Types_arrayElementType(threadData, _ty);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[0],9,3) == 0) goto goto_2;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 2));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],3,1) == 0) goto goto_2;
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2));
_path = tmpMeta[2];
_dims = omc_Types_getDimensions(threadData, _tp);
_name = omc_AbsynUtil_pathStringNoQual(threadData, _path, _OMC_LIT17, 0, 0);
_dim_str = omc_List_toString(threadData, _dims, boxvar_ExpressionDump_dimensionString, _OMC_LIT34, _OMC_LIT121, _OMC_LIT43, _OMC_LIT122, 0);
tmpMeta[0] = stringAppend(_name,_dim_str);
tmp1 = tmpMeta[0];
goto tmp3_done;
}
case 2: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,10,4) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[0],10,4) == 0) goto tmp3_end;
_ty = tmpMeta[0];
tmp1 = omc_DAEDump_unparseType(threadData, _ty);
goto tmp3_done;
}
case 3: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,10,4) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
_bc_tp = tmpMeta[0];
tmp1 = omc_Types_unparseType(threadData, _bc_tp);
goto tmp3_done;
}
case 4: {
tmp1 = omc_Types_unparseType(threadData, _tp);
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
tmp3_done:
(void)tmp4;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp3_done2;
goto_2:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp4 < 5) {
goto tmp3_top;
}
MMC_THROW_INTERNAL();
tmp3_done2:;
}
}
_str = tmp1;
_return: OMC_LABEL_UNUSED
return _str;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_DAEDump_buildGrElement(threadData_t *threadData, modelica_metatype _inElement)
{
modelica_metatype _outNode = NULL;
modelica_metatype tmpMeta[5] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp3_1;
tmp3_1 = _inElement;
{
modelica_string _crstr = NULL;
modelica_string _vkstr = NULL;
modelica_string _expstr = NULL;
modelica_string _expstr_1 = NULL;
modelica_string _e1str = NULL;
modelica_string _e2str = NULL;
modelica_string _n = NULL;
modelica_metatype _cr = NULL;
modelica_metatype _cr1 = NULL;
modelica_metatype _cr2 = NULL;
modelica_metatype _vk = NULL;
modelica_metatype _exp = NULL;
modelica_metatype _e1 = NULL;
modelica_metatype _e2 = NULL;
modelica_metatype _nodes = NULL;
modelica_metatype _elts = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
for (; tmp3 < 10; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,0,13) == 0) goto tmp2_end;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 8));
if (!optionNone(tmpMeta[3])) goto tmp2_end;
_cr = tmpMeta[1];
_vk = tmpMeta[2];
_crstr = omc_ComponentReference_printComponentRefStr(threadData, _cr);
_vkstr = omc_DAEDump_dumpKindStr(threadData, _vk);
tmpMeta[1] = mmc_mk_cons(_crstr, mmc_mk_cons(_vkstr, MMC_REFSTRUCTLIT(mmc_nil)));
tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil);
tmpMeta[3] = MMC_REFSTRUCTLIT(mmc_nil);
tmpMeta[4] = mmc_mk_box5(4, &Graphviz_Node_LNODE__desc, _OMC_LIT123, tmpMeta[1], tmpMeta[2], tmpMeta[3]);
tmpMeta[0] = tmpMeta[4];
goto tmp2_done;
}
case 1: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,0,13) == 0) goto tmp2_end;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 8));
if (optionNone(tmpMeta[3])) goto tmp2_end;
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 1));
_cr = tmpMeta[1];
_vk = tmpMeta[2];
_exp = tmpMeta[4];
_crstr = omc_ComponentReference_printComponentRefStr(threadData, _cr);
_vkstr = omc_DAEDump_dumpKindStr(threadData, _vk);
_expstr = omc_DAEDump_printExpStrSpecial(threadData, _exp);
tmpMeta[1] = stringAppend(_OMC_LIT124,_expstr);
_expstr_1 = tmpMeta[1];
tmpMeta[1] = mmc_mk_cons(_crstr, mmc_mk_cons(_vkstr, mmc_mk_cons(_expstr_1, MMC_REFSTRUCTLIT(mmc_nil))));
tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil);
tmpMeta[3] = MMC_REFSTRUCTLIT(mmc_nil);
tmpMeta[4] = mmc_mk_box5(4, &Graphviz_Node_LNODE__desc, _OMC_LIT123, tmpMeta[1], tmpMeta[2], tmpMeta[3]);
tmpMeta[0] = tmpMeta[4];
goto tmp2_done;
}
case 2: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,1,3) == 0) goto tmp2_end;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_cr = tmpMeta[1];
_exp = tmpMeta[2];
_crstr = omc_ComponentReference_printComponentRefStr(threadData, _cr);
_expstr = omc_DAEDump_printExpStrSpecial(threadData, _exp);
tmpMeta[1] = stringAppend(_OMC_LIT124,_expstr);
_expstr_1 = tmpMeta[1];
tmpMeta[1] = mmc_mk_cons(_crstr, mmc_mk_cons(_expstr_1, MMC_REFSTRUCTLIT(mmc_nil)));
tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil);
tmpMeta[3] = MMC_REFSTRUCTLIT(mmc_nil);
tmpMeta[4] = mmc_mk_box5(4, &Graphviz_Node_LNODE__desc, _OMC_LIT125, tmpMeta[1], tmpMeta[2], tmpMeta[3]);
tmpMeta[0] = tmpMeta[4];
goto tmp2_done;
}
case 3: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,3,3) == 0) goto tmp2_end;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_e1 = tmpMeta[1];
_e2 = tmpMeta[2];
_e1str = omc_DAEDump_printExpStrSpecial(threadData, _e1);
_e2str = omc_DAEDump_printExpStrSpecial(threadData, _e2);
tmpMeta[1] = mmc_mk_cons(_e1str, mmc_mk_cons(_OMC_LIT127, mmc_mk_cons(_e2str, MMC_REFSTRUCTLIT(mmc_nil))));
tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil);
tmpMeta[3] = MMC_REFSTRUCTLIT(mmc_nil);
tmpMeta[4] = mmc_mk_box5(4, &Graphviz_Node_LNODE__desc, _OMC_LIT126, tmpMeta[1], tmpMeta[2], tmpMeta[3]);
tmpMeta[0] = tmpMeta[4];
goto tmp2_done;
}
case 4: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,4,3) == 0) goto tmp2_end;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_cr1 = tmpMeta[1];
_cr2 = tmpMeta[2];
_e1str = omc_DAEDump_printExpStrSpecial(threadData, omc_Expression_crefExp(threadData, _cr1));
_e2str = omc_DAEDump_printExpStrSpecial(threadData, omc_Expression_crefExp(threadData, _cr2));
tmpMeta[1] = mmc_mk_cons(_e1str, mmc_mk_cons(_OMC_LIT127, mmc_mk_cons(_e2str, MMC_REFSTRUCTLIT(mmc_nil))));
tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil);
tmpMeta[3] = MMC_REFSTRUCTLIT(mmc_nil);
tmpMeta[4] = mmc_mk_box5(4, &Graphviz_Node_LNODE__desc, _OMC_LIT128, tmpMeta[1], tmpMeta[2], tmpMeta[3]);
tmpMeta[0] = tmpMeta[4];
goto tmp2_done;
}
case 5: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,15,2) == 0) goto tmp2_end;
tmpMeta[0] = _OMC_LIT130;
goto tmp2_done;
}
case 6: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,2,3) == 0) goto tmp2_end;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_cr = tmpMeta[1];
_exp = tmpMeta[2];
_crstr = omc_ComponentReference_printComponentRefStr(threadData, _cr);
_expstr = omc_DAEDump_printExpStrSpecial(threadData, _exp);
tmpMeta[1] = stringAppend(_OMC_LIT124,_expstr);
_expstr_1 = tmpMeta[1];
tmpMeta[1] = mmc_mk_cons(_crstr, mmc_mk_cons(_expstr_1, MMC_REFSTRUCTLIT(mmc_nil)));
tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil);
tmpMeta[3] = MMC_REFSTRUCTLIT(mmc_nil);
tmpMeta[4] = mmc_mk_box5(4, &Graphviz_Node_LNODE__desc, _OMC_LIT131, tmpMeta[1], tmpMeta[2], tmpMeta[3]);
tmpMeta[0] = tmpMeta[4];
goto tmp2_done;
}
case 7: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,14,3) == 0) goto tmp2_end;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_e1 = tmpMeta[1];
_e2 = tmpMeta[2];
_e1str = omc_DAEDump_printExpStrSpecial(threadData, _e1);
_e2str = omc_DAEDump_printExpStrSpecial(threadData, _e2);
tmpMeta[1] = mmc_mk_cons(_e1str, mmc_mk_cons(_OMC_LIT127, mmc_mk_cons(_e2str, MMC_REFSTRUCTLIT(mmc_nil))));
tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil);
tmpMeta[3] = MMC_REFSTRUCTLIT(mmc_nil);
tmpMeta[4] = mmc_mk_box5(4, &Graphviz_Node_LNODE__desc, _OMC_LIT132, tmpMeta[1], tmpMeta[2], tmpMeta[3]);
tmpMeta[0] = tmpMeta[4];
goto tmp2_done;
}
case 8: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,16,2) == 0) goto tmp2_end;
tmpMeta[0] = _OMC_LIT134;
goto tmp2_done;
}
case 9: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,17,4) == 0) goto tmp2_end;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_n = tmpMeta[1];
_elts = tmpMeta[2];
_nodes = omc_DAEDump_buildGrList(threadData, _elts);
tmpMeta[1] = mmc_mk_cons(_n, MMC_REFSTRUCTLIT(mmc_nil));
tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil);
tmpMeta[3] = mmc_mk_box5(4, &Graphviz_Node_LNODE__desc, _OMC_LIT135, tmpMeta[1], tmpMeta[2], _nodes);
tmpMeta[0] = tmpMeta[3];
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
goto_1:;
MMC_THROW_INTERNAL();
goto tmp2_done;
tmp2_done:;
}
}
_outNode = tmpMeta[0];
_return: OMC_LABEL_UNUSED
return _outNode;
}
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_printExpStrSpecial(threadData_t *threadData, modelica_metatype _inExp)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp4_1;
tmp4_1 = _inExp;
{
modelica_string _s_1 = NULL;
modelica_string _s = NULL;
modelica_metatype _exp = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp3_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,2,1) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
_s = tmpMeta[0];
tmpMeta[0] = stringAppend(_OMC_LIT136,_s);
_s_1 = tmpMeta[0];
tmpMeta[0] = stringAppend(_s_1,_OMC_LIT136);
tmp1 = tmpMeta[0];
goto tmp3_done;
}
case 1: {
_exp = tmp4_1;
tmp1 = omc_ExpressionDump_printExpStr(threadData, _exp);
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
tmp3_done:
(void)tmp4;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp3_done2;
goto_2:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp4 < 2) {
goto tmp3_top;
}
MMC_THROW_INTERNAL();
tmp3_done2:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_buildGrVarStr(threadData_t *threadData, modelica_metatype _inElement)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _inElement;
{
modelica_string _str = NULL;
modelica_string _expstr = NULL;
modelica_string _str_1 = NULL;
modelica_metatype _cr = NULL;
modelica_metatype _exp = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,0,13) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 8));
if (!optionNone(tmpMeta[1])) goto tmp3_end;
_cr = tmpMeta[0];
tmp1 = omc_ComponentReference_printComponentRefStr(threadData, _cr);
goto tmp3_done;
}
case 1: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,0,13) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 8));
if (optionNone(tmpMeta[1])) goto tmp3_end;
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 1));
_cr = tmpMeta[0];
_exp = tmpMeta[2];
_str = omc_ComponentReference_printComponentRefStr(threadData, _cr);
_expstr = omc_DAEDump_printExpStrSpecial(threadData, _exp);
tmpMeta[0] = stringAppend(_str,_OMC_LIT3);
_str_1 = tmpMeta[0];
tmpMeta[0] = stringAppend(_str_1,_expstr);
tmp1 = tmpMeta[0];
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
DLLExport
modelica_metatype omc_DAEDump_buildGrStrlist(threadData_t *threadData, modelica_metatype _inTypeALst, modelica_fnptr _inFuncTypeTypeAToString, modelica_integer _inInteger, modelica_metatype *out_outTypeALst)
{
modelica_metatype _outStringLst = NULL;
modelica_metatype _outTypeALst = NULL;
modelica_metatype tmpMeta[4] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp4_1;volatile modelica_fnptr tmp4_2;volatile modelica_integer tmp4_3;
tmp4_1 = _inTypeALst;
tmp4_2 = ((modelica_fnptr) _inFuncTypeTypeAToString);
tmp4_3 = _inInteger;
{
modelica_metatype _ignored = NULL;
modelica_metatype _rest = NULL;
modelica_fnptr _printer;
modelica_integer _count;
modelica_integer _count_1;
modelica_metatype _strlist = NULL;
modelica_string _str = NULL;
modelica_metatype _var = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp3_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp4 < 3; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (!listEmpty(tmp4_1)) goto tmp3_end;
tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil);
tmpMeta[3] = MMC_REFSTRUCTLIT(mmc_nil);
tmpMeta[0+0] = tmpMeta[2];
tmpMeta[0+1] = tmpMeta[3];
goto tmp3_done;
}
case 1: {
_ignored = tmp4_1;
_count = tmp4_3;
if((!(_count <= ((modelica_integer) 0))))
{
goto goto_2;
}
tmpMeta[0+0] = _OMC_LIT138;
tmpMeta[0+1] = _ignored;
goto tmp3_done;
}
case 2: {
if (listEmpty(tmp4_1)) goto tmp3_end;
tmpMeta[2] = MMC_CAR(tmp4_1);
tmpMeta[3] = MMC_CDR(tmp4_1);
_var = tmpMeta[2];
_rest = tmpMeta[3];
_printer = tmp4_2;
_count = tmp4_3;
if((!(_count > ((modelica_integer) 0))))
{
goto goto_2;
}
_count_1 = ((modelica_integer) -1) + _count;
_strlist = omc_DAEDump_buildGrStrlist(threadData, _rest, ((modelica_fnptr) _printer), _count_1 ,&_ignored);
_str = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_printer), 2))) ? ((modelica_metatype(*)(threadData_t*, modelica_metatype, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_printer), 1)))) (threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_printer), 2))), _var) : ((modelica_metatype(*)(threadData_t*, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_printer), 1)))) (threadData, _var);
tmpMeta[2] = mmc_mk_cons(_str, _strlist);
tmpMeta[0+0] = tmpMeta[2];
tmpMeta[0+1] = _ignored;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
tmp3_done:
(void)tmp4;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp3_done2;
goto_2:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp4 < 3) {
goto tmp3_top;
}
MMC_THROW_INTERNAL();
tmp3_done2:;
}
}
_outStringLst = tmpMeta[0+0];
_outTypeALst = tmpMeta[0+1];
_return: OMC_LABEL_UNUSED
if (out_outTypeALst) { *out_outTypeALst = _outTypeALst; }
return _outStringLst;
}
modelica_metatype boxptr_DAEDump_buildGrStrlist(threadData_t *threadData, modelica_metatype _inTypeALst, modelica_fnptr _inFuncTypeTypeAToString, modelica_metatype _inInteger, modelica_metatype *out_outTypeALst)
{
modelica_integer tmp1;
modelica_metatype _outStringLst = NULL;
tmp1 = mmc_unbox_integer(_inInteger);
_outStringLst = omc_DAEDump_buildGrStrlist(threadData, _inTypeALst, _inFuncTypeTypeAToString, tmp1, out_outTypeALst);
return _outStringLst;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_DAEDump_buildGrVars(threadData_t *threadData, modelica_metatype _inElementLst)
{
modelica_metatype _outGraphvizNodeLst = NULL;
modelica_metatype tmpMeta[4] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp3_1;
tmp3_1 = _inElementLst;
{
modelica_metatype _strlist = NULL;
modelica_metatype _vars = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp2_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp3 < 2; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (!listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_REFSTRUCTLIT(mmc_nil);
tmpMeta[0] = tmpMeta[1];
goto tmp2_done;
}
case 1: {
_vars = tmp3_1;
_strlist = omc_DAEDump_buildGrStrlist(threadData, _vars, boxvar_DAEDump_buildGrVarStr, ((modelica_integer) 10), NULL);
tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil);
tmpMeta[3] = mmc_mk_box5(4, &Graphviz_Node_LNODE__desc, _OMC_LIT139, _strlist, _OMC_LIT143, tmpMeta[2]);
tmpMeta[1] = mmc_mk_cons(tmpMeta[3], MMC_REFSTRUCTLIT(mmc_nil));
tmpMeta[0] = tmpMeta[1];
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
tmp2_done:
(void)tmp3;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp2_done2;
goto_1:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp3 < 2) {
goto tmp2_top;
}
MMC_THROW_INTERNAL();
tmp2_done2:;
}
}
_outGraphvizNodeLst = tmpMeta[0];
_return: OMC_LABEL_UNUSED
return _outGraphvizNodeLst;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_DAEDump_buildGrList(threadData_t *threadData, modelica_metatype _inElementLst)
{
modelica_metatype _outGraphvizNodeLst = NULL;
modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp3_1;
tmp3_1 = _inElementLst;
{
modelica_metatype _node = NULL;
modelica_metatype _nodelist = NULL;
modelica_metatype _el = NULL;
modelica_metatype _rest = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
for (; tmp3 < 2; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (!listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_REFSTRUCTLIT(mmc_nil);
tmpMeta[0] = tmpMeta[1];
goto tmp2_done;
}
case 1: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmp3_1);
tmpMeta[2] = MMC_CDR(tmp3_1);
_el = tmpMeta[1];
_rest = tmpMeta[2];
_node = omc_DAEDump_buildGrElement(threadData, _el);
_nodelist = omc_DAEDump_buildGrList(threadData, _rest);
tmpMeta[1] = mmc_mk_cons(_node, _nodelist);
tmpMeta[0] = tmpMeta[1];
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
goto_1:;
MMC_THROW_INTERNAL();
goto tmp2_done;
tmp2_done:;
}
}
_outGraphvizNodeLst = tmpMeta[0];
_return: OMC_LABEL_UNUSED
return _outGraphvizNodeLst;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_DAEDump_buildGraphviz(threadData_t *threadData, modelica_metatype _inDAElist)
{
modelica_metatype _outNode = NULL;
modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp3_1;
tmp3_1 = _inDAElist;
{
modelica_metatype _vars = NULL;
modelica_metatype _nonvars = NULL;
modelica_metatype _els = NULL;
modelica_metatype _nonvarnodes = NULL;
modelica_metatype _varnodes = NULL;
modelica_metatype _nodelist = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
for (; tmp3 < 1; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
_els = tmpMeta[1];
_vars = omc_DAEUtil_getMatchingElements(threadData, _els, boxvar_DAEUtil_isVar);
_nonvars = omc_DAEUtil_getMatchingElements(threadData, _els, boxvar_DAEUtil_isNotVar);
_nonvarnodes = omc_DAEDump_buildGrList(threadData, _nonvars);
_varnodes = omc_DAEDump_buildGrVars(threadData, _vars);
_nodelist = listAppend(_nonvarnodes, _varnodes);
tmpMeta[1] = MMC_REFSTRUCTLIT(mmc_nil);
tmpMeta[2] = mmc_mk_box4(3, &Graphviz_Node_NODE__desc, _OMC_LIT144, tmpMeta[1], _nodelist);
tmpMeta[0] = tmpMeta[2];
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
goto_1:;
MMC_THROW_INTERNAL();
goto tmp2_done;
tmp2_done:;
}
}
_outNode = tmpMeta[0];
_return: OMC_LABEL_UNUSED
return _outNode;
}
DLLExport
void omc_DAEDump_dumpGraphviz(threadData_t *threadData, modelica_metatype _dae)
{
modelica_metatype _r = NULL;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
_r = omc_DAEDump_buildGraphviz(threadData, _dae);
omc_Graphviz_dump(threadData, _r);
_return: OMC_LABEL_UNUSED
return;
}
DLLExport
modelica_string omc_DAEDump_dumpConnectorType(threadData_t *threadData, modelica_metatype _inConnectorType)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _inConnectorType;
{
int tmp4;
{
switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))) {
case 4: {
tmp1 = _OMC_LIT145;
goto tmp3_done;
}
case 5: {
tmp1 = _OMC_LIT146;
goto tmp3_done;
}
default:
tmp3_default: OMC_LABEL_UNUSED; {
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
DLLExport
modelica_string omc_DAEDump_dumpFlow(threadData_t *threadData, modelica_metatype _var)
{
modelica_string _flowString = NULL;
modelica_string tmp1 = 0;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _var;
{
int tmp4;
{
switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))) {
case 4: {
tmp1 = _OMC_LIT145;
goto tmp3_done;
}
case 3: {
tmp1 = _OMC_LIT147;
goto tmp3_done;
}
case 6: {
tmp1 = _OMC_LIT148;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_flowString = tmp1;
_return: OMC_LABEL_UNUSED
return _flowString;
}
DLLExport
void omc_DAEDump_dumpDebugElement(threadData_t *threadData, modelica_metatype _inElement)
{
modelica_metatype tmpMeta[6] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp3_1;
tmp3_1 = _inElement;
{
modelica_string _comment_str = NULL;
modelica_string _tmp_str = NULL;
modelica_string _n = NULL;
modelica_metatype _cr = NULL;
modelica_metatype _cr1 = NULL;
modelica_metatype _cr2 = NULL;
modelica_metatype _vk = NULL;
modelica_metatype _dae_var_attr = NULL;
modelica_metatype _comment = NULL;
modelica_metatype _e = NULL;
modelica_metatype _exp = NULL;
modelica_metatype _e1 = NULL;
modelica_metatype _e2 = NULL;
modelica_metatype _l = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp2_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp3 < 27; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,0,13) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 8));
if (!optionNone(tmpMeta[2])) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 12));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 13));
_cr = tmpMeta[0];
_vk = tmpMeta[1];
_dae_var_attr = tmpMeta[3];
_comment = tmpMeta[4];
tmp3 += 25;
omc_Print_printBuf(threadData, _OMC_LIT149);
omc_ComponentReference_printComponentRef(threadData, _cr);
omc_Print_printBuf(threadData, _OMC_LIT43);
omc_DAEDump_dumpKind(threadData, _vk);
_comment_str = omc_DAEDump_dumpCommentAnnotationStr(threadData, _comment);
omc_Print_printBuf(threadData, _OMC_LIT150);
omc_Print_printBuf(threadData, _comment_str);
_tmp_str = omc_DAEDump_dumpVariableAttributesStr(threadData, _dae_var_attr);
omc_Print_printBuf(threadData, _tmp_str);
omc_Print_printBuf(threadData, _OMC_LIT30);
goto tmp2_done;
}
case 1: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,0,13) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 8));
if (optionNone(tmpMeta[2])) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 1));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 12));
tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 13));
_cr = tmpMeta[0];
_vk = tmpMeta[1];
_e = tmpMeta[3];
_dae_var_attr = tmpMeta[4];
_comment = tmpMeta[5];
tmp3 += 24;
omc_Print_printBuf(threadData, _OMC_LIT149);
omc_ComponentReference_printComponentRef(threadData, _cr);
omc_Print_printBuf(threadData, _OMC_LIT43);
omc_DAEDump_dumpKind(threadData, _vk);
omc_Print_printBuf(threadData, _OMC_LIT151);
omc_ExpressionDump_printExp(threadData, _e);
_comment_str = omc_DAEDump_dumpCommentAnnotationStr(threadData, _comment);
omc_Print_printBuf(threadData, _OMC_LIT150);
omc_Print_printBuf(threadData, _comment_str);
_tmp_str = omc_DAEDump_dumpVariableAttributesStr(threadData, _dae_var_attr);
omc_Print_printBuf(threadData, _tmp_str);
omc_Print_printBuf(threadData, _OMC_LIT30);
goto tmp2_done;
}
case 2: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,1,3) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_cr = tmpMeta[0];
_exp = tmpMeta[1];
tmp3 += 23;
omc_Print_printBuf(threadData, _OMC_LIT152);
omc_ComponentReference_printComponentRef(threadData, _cr);
omc_Print_printBuf(threadData, _OMC_LIT43);
omc_ExpressionDump_printExp(threadData, _exp);
omc_Print_printBuf(threadData, _OMC_LIT30);
goto tmp2_done;
}
case 3: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,2,3) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_cr = tmpMeta[0];
_exp = tmpMeta[1];
tmp3 += 22;
omc_Print_printBuf(threadData, _OMC_LIT153);
omc_ComponentReference_printComponentRef(threadData, _cr);
omc_Print_printBuf(threadData, _OMC_LIT43);
omc_ExpressionDump_printExp(threadData, _exp);
omc_Print_printBuf(threadData, _OMC_LIT30);
goto tmp2_done;
}
case 4: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,3,3) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
tmp3 += 21;
omc_Print_printBuf(threadData, _OMC_LIT154);
omc_ExpressionDump_printExp(threadData, _e1);
omc_Print_printBuf(threadData, _OMC_LIT20);
omc_ExpressionDump_printExp(threadData, _e2);
omc_Print_printBuf(threadData, _OMC_LIT30);
goto tmp2_done;
}
case 5: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,4,3) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_cr1 = tmpMeta[0];
_cr2 = tmpMeta[1];
tmp3 += 20;
omc_Print_printBuf(threadData, _OMC_LIT154);
omc_ComponentReference_printComponentRef(threadData, _cr1);
omc_Print_printBuf(threadData, _OMC_LIT20);
omc_ComponentReference_printComponentRef(threadData, _cr2);
omc_Print_printBuf(threadData, _OMC_LIT30);
goto tmp2_done;
}
case 6: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,14,3) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
tmp3 += 19;
omc_Print_printBuf(threadData, _OMC_LIT155);
omc_ExpressionDump_printExp(threadData, _e1);
omc_Print_printBuf(threadData, _OMC_LIT20);
omc_ExpressionDump_printExp(threadData, _e2);
omc_Print_printBuf(threadData, _OMC_LIT30);
goto tmp2_done;
}
case 7: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,15,2) == 0) goto tmp2_end;
tmp3 += 18;
omc_Print_printBuf(threadData, _OMC_LIT156);
goto tmp2_done;
}
case 8: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,16,2) == 0) goto tmp2_end;
tmp3 += 17;
omc_Print_printBuf(threadData, _OMC_LIT157);
goto tmp2_done;
}
case 9: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,17,4) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_n = tmpMeta[0];
_l = tmpMeta[1];
tmp3 += 16;
omc_Print_printBuf(threadData, _OMC_LIT158);
omc_Print_printBuf(threadData, _n);
omc_Print_printBuf(threadData, _OMC_LIT20);
omc_DAEDump_dumpDebugElist(threadData, _l);
omc_Print_printBuf(threadData, _OMC_LIT30);
goto tmp2_done;
}
case 10: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,5,4) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
tmp3 += 15;
omc_Print_printBuf(threadData, _OMC_LIT159);
omc_ExpressionDump_printExp(threadData, _e1);
omc_Print_printBuf(threadData, _OMC_LIT20);
omc_ExpressionDump_printExp(threadData, _e2);
omc_Print_printBuf(threadData, _OMC_LIT30);
goto tmp2_done;
}
case 11: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,6,4) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
tmp3 += 14;
omc_Print_printBuf(threadData, _OMC_LIT160);
omc_ExpressionDump_printExp(threadData, _e1);
omc_Print_printBuf(threadData, _OMC_LIT20);
omc_ExpressionDump_printExp(threadData, _e2);
omc_Print_printBuf(threadData, _OMC_LIT30);
goto tmp2_done;
}
case 12: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,8,3) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
tmp3 += 13;
omc_Print_printBuf(threadData, _OMC_LIT161);
omc_ExpressionDump_printExp(threadData, _e1);
omc_Print_printBuf(threadData, _OMC_LIT20);
omc_ExpressionDump_printExp(threadData, _e2);
omc_Print_printBuf(threadData, _OMC_LIT30);
goto tmp2_done;
}
case 13: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,9,3) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
tmp3 += 12;
omc_Print_printBuf(threadData, _OMC_LIT162);
omc_ExpressionDump_printExp(threadData, _e1);
omc_Print_printBuf(threadData, _OMC_LIT20);
omc_ExpressionDump_printExp(threadData, _e2);
omc_Print_printBuf(threadData, _OMC_LIT30);
goto tmp2_done;
}
case 14: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,12,4) == 0) goto tmp2_end;
tmp3 += 11;
omc_Print_printBuf(threadData, _OMC_LIT163);
goto tmp2_done;
}
case 15: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,13,4) == 0) goto tmp2_end;
tmp3 += 10;
omc_Print_printBuf(threadData, _OMC_LIT164);
goto tmp2_done;
}
case 16: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,10,4) == 0) goto tmp2_end;
tmp3 += 9;
omc_Print_printBuf(threadData, _OMC_LIT165);
goto tmp2_done;
}
case 17: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,18,2) == 0) goto tmp2_end;
tmp3 += 8;
omc_Print_printBuf(threadData, _OMC_LIT166);
goto tmp2_done;
}
case 18: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,19,4) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
tmp3 += 7;
omc_Print_printBuf(threadData, _OMC_LIT167);
omc_ExpressionDump_printExp(threadData, _e1);
omc_Print_printBuf(threadData, _OMC_LIT20);
omc_ExpressionDump_printExp(threadData, _e2);
omc_Print_printBuf(threadData, _OMC_LIT30);
goto tmp2_done;
}
case 19: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,20,4) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
tmp3 += 6;
omc_Print_printBuf(threadData, _OMC_LIT168);
omc_ExpressionDump_printExp(threadData, _e1);
omc_Print_printBuf(threadData, _OMC_LIT20);
omc_ExpressionDump_printExp(threadData, _e2);
omc_Print_printBuf(threadData, _OMC_LIT30);
goto tmp2_done;
}
case 20: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,21,2) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
_e1 = tmpMeta[0];
tmp3 += 5;
omc_Print_printBuf(threadData, _OMC_LIT169);
omc_ExpressionDump_printExp(threadData, _e1);
omc_Print_printBuf(threadData, _OMC_LIT30);
goto tmp2_done;
}
case 21: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,22,2) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
_e1 = tmpMeta[0];
tmp3 += 4;
omc_Print_printBuf(threadData, _OMC_LIT170);
omc_ExpressionDump_printExp(threadData, _e1);
omc_Print_printBuf(threadData, _OMC_LIT30);
goto tmp2_done;
}
case 22: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,23,3) == 0) goto tmp2_end;
tmp3 += 3;
omc_Print_printBuf(threadData, _OMC_LIT171);
goto tmp2_done;
}
case 23: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,24,2) == 0) goto tmp2_end;
tmp3 += 2;
omc_Print_printBuf(threadData, _OMC_LIT172);
goto tmp2_done;
}
case 24: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,29,2) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_cr = tmpMeta[0];
_l = tmpMeta[1];
tmp3 += 1;
omc_Print_printBuf(threadData, _OMC_LIT173);
omc_ComponentReference_printComponentRef(threadData, _cr);
omc_Print_printBuf(threadData, _OMC_LIT20);
omc_DAEDump_dumpDebugElist(threadData, _l);
omc_Print_printBuf(threadData, _OMC_LIT30);
goto tmp2_done;
}
case 25: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,28,2) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_n = tmpMeta[0];
_l = tmpMeta[1];
omc_Print_printBuf(threadData, _OMC_LIT174);
omc_Print_printBuf(threadData, _n);
omc_Print_printBuf(threadData, _OMC_LIT20);
omc_DAEDump_dumpDebugElist(threadData, _l);
omc_Print_printBuf(threadData, _OMC_LIT30);
goto tmp2_done;
}
case 26: {
omc_Print_printBuf(threadData, _OMC_LIT175);
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
tmp2_done:
(void)tmp3;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp2_done2;
goto_1:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp3 < 27) {
goto tmp2_top;
}
MMC_THROW_INTERNAL();
tmp2_done2:;
}
}
;
_return: OMC_LABEL_UNUSED
return;
}
DLLExport
modelica_string omc_DAEDump_dumpDebugDAE(threadData_t *threadData, modelica_metatype _dae)
{
modelica_string _str = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _dae;
{
modelica_metatype _elems = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 1; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
_elems = tmpMeta[0];
omc_Print_clearBuf(threadData);
omc_DAEDump_dumpDebugElist(threadData, _elems);
tmp1 = omc_Print_getString(threadData);
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_str = tmp1;
_return: OMC_LABEL_UNUSED
return _str;
}
PROTECTED_FUNCTION_STATIC void omc_DAEDump_dumpDebugElist(threadData_t *threadData, modelica_metatype _inElementLst)
{
modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp3_1;
tmp3_1 = _inElementLst;
{
modelica_metatype _first = NULL;
modelica_metatype _rest = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
for (; tmp3 < 2; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (!listEmpty(tmp3_1)) goto tmp2_end;
goto tmp2_done;
}
case 1: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[0] = MMC_CAR(tmp3_1);
tmpMeta[1] = MMC_CDR(tmp3_1);
_first = tmpMeta[0];
_rest = tmpMeta[1];
omc_DAEDump_dumpDebugElement(threadData, _first);
omc_Print_printBuf(threadData, _OMC_LIT15);
_inElementLst = _rest;
goto _tailrecursive;
;
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
goto_1:;
MMC_THROW_INTERNAL();
goto tmp2_done;
tmp2_done:;
}
}
;
_return: OMC_LABEL_UNUSED
return;
}
DLLExport
void omc_DAEDump_dumpDebug(threadData_t *threadData, modelica_metatype _inDAElist)
{
modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp3_1;
tmp3_1 = _inDAElist;
{
modelica_metatype _elist = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
for (; tmp3 < 1; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
_elist = tmpMeta[0];
omc_Print_printBuf(threadData, _OMC_LIT176);
omc_DAEDump_dumpDebugElist(threadData, _elist);
omc_Print_printBuf(threadData, _OMC_LIT30);
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
goto_1:;
MMC_THROW_INTERNAL();
goto tmp2_done;
tmp2_done:;
}
}
;
_return: OMC_LABEL_UNUSED
return;
}
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_indentStr(threadData_t *threadData, modelica_integer _inInteger)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_integer tmp4_1;
tmp4_1 = _inInteger;
{
modelica_integer _i_1;
modelica_integer _i;
modelica_string _s1 = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp3_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (0 != tmp4_1) goto tmp3_end;
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
case 1: {
_i = tmp4_1;
_i_1 = ((modelica_integer) -1) + _i;
_s1 = omc_DAEDump_indentStr(threadData, _i_1);
tmpMeta[0] = stringAppend(_OMC_LIT35,_s1);
tmp1 = tmpMeta[0];
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
tmp3_done:
(void)tmp4;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp3_done2;
goto_2:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp4 < 2) {
goto tmp3_top;
}
MMC_THROW_INTERNAL();
tmp3_done2:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_DAEDump_indentStr(threadData_t *threadData, modelica_metatype _inInteger)
{
modelica_integer tmp1;
modelica_string _outString = NULL;
tmp1 = mmc_unbox_integer(_inInteger);
_outString = omc_DAEDump_indentStr(threadData, tmp1);
return _outString;
}
PROTECTED_FUNCTION_STATIC void omc_DAEDump_indent(threadData_t *threadData, modelica_integer _inInteger)
{
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_integer tmp3_1;
tmp3_1 = _inInteger;
{
modelica_integer _i_1;
modelica_integer _i;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp2_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp3 < 2; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (0 != tmp3_1) goto tmp2_end;
goto tmp2_done;
}
case 1: {
_i = tmp3_1;
omc_Print_printBuf(threadData, _OMC_LIT35);
_i_1 = ((modelica_integer) -1) + _i;
omc_DAEDump_indent(threadData, _i_1);
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
tmp2_done:
(void)tmp3;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp2_done2;
goto_1:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp3 < 2) {
goto tmp2_top;
}
MMC_THROW_INTERNAL();
tmp2_done2:;
}
}
;
_return: OMC_LABEL_UNUSED
return;
}
PROTECTED_FUNCTION_STATIC void boxptr_DAEDump_indent(threadData_t *threadData, modelica_metatype _inInteger)
{
modelica_integer tmp1;
tmp1 = mmc_unbox_integer(_inInteger);
omc_DAEDump_indent(threadData, tmp1);
return;
}
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_ppElseStr(threadData_t *threadData, modelica_metatype _inElse, modelica_integer _inInteger)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;modelica_integer tmp4_2;
tmp4_1 = _inElse;
tmp4_2 = _inInteger;
{
modelica_string _s1 = NULL;
modelica_string _s2 = NULL;
modelica_string _s3 = NULL;
modelica_string _s4 = NULL;
modelica_string _s5 = NULL;
modelica_string _s6 = NULL;
modelica_string _s7 = NULL;
modelica_string _s8 = NULL;
modelica_integer _i_1;
modelica_integer _i;
modelica_metatype _e = NULL;
modelica_metatype _then_ = NULL;
modelica_metatype _stmts = NULL;
modelica_metatype _else_ = NULL;
int tmp4;
{
switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))) {
case 3: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,0,0) == 0) goto tmp3_end;
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
case 4: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,1,3) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
_e = tmpMeta[0];
_then_ = tmpMeta[1];
_else_ = tmpMeta[2];
_i = tmp4_2;
_s1 = omc_DAEDump_indentStr(threadData, _i);
tmpMeta[0] = stringAppend(_s1,_OMC_LIT177);
_s2 = tmpMeta[0];
_s3 = omc_ExpressionDump_printExpStr(threadData, _e);
tmpMeta[0] = stringAppend(_s2,_s3);
_s4 = tmpMeta[0];
tmpMeta[0] = stringAppend(_s4,_OMC_LIT87);
_s5 = tmpMeta[0];
_i_1 = ((modelica_integer) 2) + _i;
_s6 = omc_DAEDump_ppStmtListStr(threadData, _then_, _i_1);
tmpMeta[0] = stringAppend(_s5,_s6);
_s7 = tmpMeta[0];
_s8 = omc_DAEDump_ppElseStr(threadData, _else_, _i);
tmpMeta[0] = stringAppend(_s7,_s8);
tmp1 = tmpMeta[0];
goto tmp3_done;
}
case 5: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,2,1) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
_stmts = tmpMeta[0];
_i = tmp4_2;
_s1 = omc_DAEDump_indentStr(threadData, _i);
tmpMeta[0] = stringAppend(_s1,_OMC_LIT178);
_s2 = tmpMeta[0];
_i_1 = ((modelica_integer) 2) + _i;
_s3 = omc_DAEDump_ppStmtListStr(threadData, _stmts, _i_1);
tmpMeta[0] = stringAppend(_s2,_s3);
tmp1 = tmpMeta[0];
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_DAEDump_ppElseStr(threadData_t *threadData, modelica_metatype _inElse, modelica_metatype _inInteger)
{
modelica_integer tmp1;
modelica_string _outString = NULL;
tmp1 = mmc_unbox_integer(_inInteger);
_outString = omc_DAEDump_ppElseStr(threadData, _inElse, tmp1);
return _outString;
}
PROTECTED_FUNCTION_STATIC void omc_DAEDump_ppElse(threadData_t *threadData, modelica_metatype _inElse, modelica_integer _inInteger)
{
modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp3_1;modelica_integer tmp3_2;
tmp3_1 = _inElse;
tmp3_2 = _inInteger;
{
modelica_integer _i_1;
modelica_integer _i;
modelica_metatype _e = NULL;
modelica_metatype _then_ = NULL;
modelica_metatype _stmts = NULL;
modelica_metatype _else_ = NULL;
int tmp3;
{
switch (MMC_SWITCH_CAST(valueConstructor(tmp3_1))) {
case 3: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,0,0) == 0) goto tmp2_end;
goto tmp2_done;
}
case 4: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,1,3) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4));
_e = tmpMeta[0];
_then_ = tmpMeta[1];
_else_ = tmpMeta[2];
_i = tmp3_2;
omc_DAEDump_indent(threadData, _i);
omc_Print_printBuf(threadData, _OMC_LIT177);
omc_ExpressionDump_printExp(threadData, _e);
omc_Print_printBuf(threadData, _OMC_LIT87);
_i_1 = ((modelica_integer) 2) + _i;
omc_DAEDump_ppStmtList(threadData, _then_, _i_1);
_inElse = _else_;
_inInteger = _i;
goto _tailrecursive;
;
goto tmp2_done;
}
case 5: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,2,1) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
_stmts = tmpMeta[0];
_i = tmp3_2;
omc_DAEDump_indent(threadData, _i);
omc_Print_printBuf(threadData, _OMC_LIT178);
_i_1 = ((modelica_integer) 2) + _i;
omc_DAEDump_ppStmtList(threadData, _stmts, _i_1);
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
goto_1:;
MMC_THROW_INTERNAL();
goto tmp2_done;
tmp2_done:;
}
}
;
_return: OMC_LABEL_UNUSED
return;
}
PROTECTED_FUNCTION_STATIC void boxptr_DAEDump_ppElse(threadData_t *threadData, modelica_metatype _inElse, modelica_metatype _inInteger)
{
modelica_integer tmp1;
tmp1 = mmc_unbox_integer(_inInteger);
omc_DAEDump_ppElse(threadData, _inElse, tmp1);
return;
}
DLLExport
modelica_string omc_DAEDump_ppStmtListStr(threadData_t *threadData, modelica_metatype _inAlgorithmStatementLst, modelica_integer _inInteger)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;modelica_integer tmp4_2;
tmp4_1 = _inAlgorithmStatementLst;
tmp4_2 = _inInteger;
{
modelica_string _s1 = NULL;
modelica_string _s2 = NULL;
modelica_metatype _stmt = NULL;
modelica_metatype _stmts = NULL;
modelica_integer _i;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (!listEmpty(tmp4_1)) goto tmp3_end;
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
case 1: {
if (listEmpty(tmp4_1)) goto tmp3_end;
tmpMeta[0] = MMC_CAR(tmp4_1);
tmpMeta[1] = MMC_CDR(tmp4_1);
_stmt = tmpMeta[0];
_stmts = tmpMeta[1];
_i = tmp4_2;
_s1 = omc_DAEDump_ppStmtStr(threadData, _stmt, _i);
_s2 = omc_DAEDump_ppStmtListStr(threadData, _stmts, _i);
tmpMeta[0] = stringAppend(_s1,_s2);
tmp1 = tmpMeta[0];
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
modelica_metatype boxptr_DAEDump_ppStmtListStr(threadData_t *threadData, modelica_metatype _inAlgorithmStatementLst, modelica_metatype _inInteger)
{
modelica_integer tmp1;
modelica_string _outString = NULL;
tmp1 = mmc_unbox_integer(_inInteger);
_outString = omc_DAEDump_ppStmtListStr(threadData, _inAlgorithmStatementLst, tmp1);
return _outString;
}
PROTECTED_FUNCTION_STATIC void omc_DAEDump_ppStmtList(threadData_t *threadData, modelica_metatype _inAlgorithmStatementLst, modelica_integer _inInteger)
{
modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp3_1;modelica_integer tmp3_2;
tmp3_1 = _inAlgorithmStatementLst;
tmp3_2 = _inInteger;
{
modelica_metatype _stmt = NULL;
modelica_metatype _stmts = NULL;
modelica_integer _i;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
for (; tmp3 < 2; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (!listEmpty(tmp3_1)) goto tmp2_end;
goto tmp2_done;
}
case 1: {
if (listEmpty(tmp3_1)) goto tmp2_end;
tmpMeta[0] = MMC_CAR(tmp3_1);
tmpMeta[1] = MMC_CDR(tmp3_1);
_stmt = tmpMeta[0];
_stmts = tmpMeta[1];
_i = tmp3_2;
omc_DAEDump_ppStmt(threadData, _stmt, _i);
_inAlgorithmStatementLst = _stmts;
_inInteger = _i;
goto _tailrecursive;
;
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
goto_1:;
MMC_THROW_INTERNAL();
goto tmp2_done;
tmp2_done:;
}
}
;
_return: OMC_LABEL_UNUSED
return;
}
PROTECTED_FUNCTION_STATIC void boxptr_DAEDump_ppStmtList(threadData_t *threadData, modelica_metatype _inAlgorithmStatementLst, modelica_metatype _inInteger)
{
modelica_integer tmp1;
tmp1 = mmc_unbox_integer(_inInteger);
omc_DAEDump_ppStmtList(threadData, _inAlgorithmStatementLst, tmp1);
return;
}
DLLExport
modelica_string omc_DAEDump_ppStmtStr(threadData_t *threadData, modelica_metatype _inStatement, modelica_integer _inInteger)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[4] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp4_1;volatile modelica_integer tmp4_2;
tmp4_1 = _inStatement;
tmp4_2 = _inInteger;
{
modelica_string _s1 = NULL;
modelica_string _s2 = NULL;
modelica_string _s3 = NULL;
modelica_string _s4 = NULL;
modelica_string _s5 = NULL;
modelica_string _s6 = NULL;
modelica_string _s7 = NULL;
modelica_string _s8 = NULL;
modelica_string _s9 = NULL;
modelica_string _s10 = NULL;
modelica_string _s11 = NULL;
modelica_string _id = NULL;
modelica_string _cond_str = NULL;
modelica_string _msg_str = NULL;
modelica_string _e1_str = NULL;
modelica_string _e2_str = NULL;
modelica_metatype _e = NULL;
modelica_metatype _cond = NULL;
modelica_metatype _msg = NULL;
modelica_metatype _e1 = NULL;
modelica_metatype _e2 = NULL;
modelica_integer _i;
modelica_integer _i_1;
modelica_integer _index;
modelica_metatype _es = NULL;
modelica_metatype _expl = NULL;
modelica_metatype _then_ = NULL;
modelica_metatype _stmts = NULL;
modelica_metatype _stmt = NULL;
modelica_metatype _else_ = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp3_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp4 < 17; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,0,4) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
_e2 = tmpMeta[0];
_e = tmpMeta[1];
_i = tmp4_2;
tmp4 += 15;
_s1 = omc_DAEDump_indentStr(threadData, _i);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e2);
_s3 = omc_ExpressionDump_printExpStr(threadData, _e);
tmpMeta[0] = mmc_mk_cons(_s1, mmc_mk_cons(_s2, mmc_mk_cons(_OMC_LIT179, mmc_mk_cons(_s3, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 1: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,2,4) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
_e2 = tmpMeta[0];
_e = tmpMeta[1];
_i = tmp4_2;
tmp4 += 14;
_s1 = omc_DAEDump_indentStr(threadData, _i);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e2);
_s3 = omc_ExpressionDump_printExpStr(threadData, _e);
tmpMeta[0] = mmc_mk_cons(_s1, mmc_mk_cons(_s2, mmc_mk_cons(_OMC_LIT179, mmc_mk_cons(_s3, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 2: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,1,4) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
_expl = tmpMeta[0];
_e = tmpMeta[1];
_i = tmp4_2;
tmp4 += 13;
_s1 = omc_DAEDump_indentStr(threadData, _i);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e);
_es = omc_List_map(threadData, _expl, boxvar_ExpressionDump_printExpStr);
_s3 = stringDelimitList(_es, _OMC_LIT43);
tmpMeta[0] = mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT83, mmc_mk_cons(_s3, mmc_mk_cons(_OMC_LIT180, mmc_mk_cons(_s2, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil)))))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 3: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,3,4) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
_e = tmpMeta[0];
_then_ = tmpMeta[1];
_else_ = tmpMeta[2];
_i = tmp4_2;
tmp4 += 12;
_s1 = omc_DAEDump_indentStr(threadData, _i);
tmpMeta[0] = stringAppend(_s1,_OMC_LIT181);
_s2 = tmpMeta[0];
_s3 = omc_ExpressionDump_printExpStr(threadData, _e);
tmpMeta[0] = stringAppend(_s2,_s3);
_s4 = tmpMeta[0];
tmpMeta[0] = stringAppend(_s4,_OMC_LIT87);
_s5 = tmpMeta[0];
_i_1 = ((modelica_integer) 2) + _i;
_s6 = omc_DAEDump_ppStmtListStr(threadData, _then_, _i_1);
tmpMeta[0] = stringAppend(_s5,_s6);
_s7 = tmpMeta[0];
_s8 = omc_DAEDump_ppElseStr(threadData, _else_, _i);
tmpMeta[0] = stringAppend(_s7,_s8);
_s9 = tmpMeta[0];
_s10 = omc_DAEDump_indentStr(threadData, _i);
tmpMeta[0] = stringAppend(_s9,_s10);
_s11 = tmpMeta[0];
tmpMeta[0] = stringAppend(_s11,_OMC_LIT182);
tmp1 = tmpMeta[0];
goto tmp3_done;
}
case 4: {
modelica_integer tmp6;
modelica_boolean tmp7;
modelica_string tmp8;
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,4,7) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 5));
tmp6 = mmc_unbox_integer(tmpMeta[1]);
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 6));
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 7));
_id = tmpMeta[0];
_index = tmp6;
_e = tmpMeta[2];
_stmts = tmpMeta[3];
_i = tmp4_2;
tmp4 += 11;
_s1 = omc_DAEDump_indentStr(threadData, _i);
tmp7 = (modelica_boolean)(_index == ((modelica_integer) -1));
if(tmp7)
{
tmp8 = _OMC_LIT34;
}
else
{
tmpMeta[0] = stringAppend(_OMC_LIT183,intString(_index));
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT184);
tmp8 = tmpMeta[1];
}
_s2 = tmp8;
_s3 = omc_ExpressionDump_printExpStr(threadData, _e);
_i_1 = ((modelica_integer) 2) + _i;
_s4 = omc_DAEDump_ppStmtListStr(threadData, _stmts, _i_1);
_s5 = omc_DAEDump_indentStr(threadData, _i);
tmpMeta[0] = mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT185, mmc_mk_cons(_id, mmc_mk_cons(_s2, mmc_mk_cons(_OMC_LIT94, mmc_mk_cons(_s3, mmc_mk_cons(_OMC_LIT95, mmc_mk_cons(_s4, mmc_mk_cons(_s5, mmc_mk_cons(_OMC_LIT186, MMC_REFSTRUCTLIT(mmc_nil)))))))))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 5: {
modelica_integer tmp9;
modelica_boolean tmp10;
modelica_string tmp11;
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,5,8) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 5));
tmp9 = mmc_unbox_integer(tmpMeta[1]);
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 6));
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 7));
_id = tmpMeta[0];
_index = tmp9;
_e = tmpMeta[2];
_stmts = tmpMeta[3];
_i = tmp4_2;
tmp4 += 10;
_s1 = omc_DAEDump_indentStr(threadData, _i);
tmp10 = (modelica_boolean)(_index == ((modelica_integer) -1));
if(tmp10)
{
tmp11 = _OMC_LIT34;
}
else
{
tmpMeta[0] = stringAppend(_OMC_LIT183,intString(_index));
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT184);
tmp11 = tmpMeta[1];
}
_s2 = tmp11;
_s3 = omc_ExpressionDump_printExpStr(threadData, _e);
_i_1 = ((modelica_integer) 2) + _i;
_s4 = omc_DAEDump_ppStmtListStr(threadData, _stmts, _i_1);
_s5 = omc_DAEDump_indentStr(threadData, _i);
tmpMeta[0] = mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT187, mmc_mk_cons(_id, mmc_mk_cons(_s2, mmc_mk_cons(_OMC_LIT94, mmc_mk_cons(_s3, mmc_mk_cons(_OMC_LIT95, mmc_mk_cons(_s4, mmc_mk_cons(_s5, mmc_mk_cons(_OMC_LIT186, MMC_REFSTRUCTLIT(mmc_nil)))))))))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 6: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,6,3) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
_e = tmpMeta[0];
_stmts = tmpMeta[1];
_i = tmp4_2;
tmp4 += 9;
_s1 = omc_DAEDump_indentStr(threadData, _i);
tmpMeta[0] = stringAppend(_s1,_OMC_LIT188);
_s2 = tmpMeta[0];
_s3 = omc_ExpressionDump_printExpStr(threadData, _e);
tmpMeta[0] = stringAppend(_s2,_s3);
_s4 = tmpMeta[0];
tmpMeta[0] = stringAppend(_s4,_OMC_LIT95);
_s5 = tmpMeta[0];
_i_1 = ((modelica_integer) 2) + _i;
_s6 = omc_DAEDump_ppStmtListStr(threadData, _stmts, _i_1);
tmpMeta[0] = stringAppend(_s5,_s6);
_s7 = tmpMeta[0];
_s8 = omc_DAEDump_indentStr(threadData, _i);
tmpMeta[0] = stringAppend(_s7,_s8);
_s9 = tmpMeta[0];
tmpMeta[0] = stringAppend(_s9,_OMC_LIT189);
tmp1 = tmpMeta[0];
goto tmp3_done;
}
case 7: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,7,6) == 0) goto tmp3_end;
_stmt = tmp4_1;
_i = tmp4_2;
tmp4 += 8;
_s1 = omc_DAEDump_indentStr(threadData, _i);
_s2 = omc_DAEDump_ppWhenStmtStr(threadData, _stmt, _i);
tmpMeta[0] = stringAppend(_s1,_s2);
tmp1 = tmpMeta[0];
goto tmp3_done;
}
case 8: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,8,4) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
_cond = tmpMeta[0];
_msg = tmpMeta[1];
_i = tmp4_2;
tmp4 += 7;
_s1 = omc_DAEDump_indentStr(threadData, _i);
_cond_str = omc_ExpressionDump_printExpStr(threadData, _cond);
_msg_str = omc_ExpressionDump_printExpStr(threadData, _msg);
tmpMeta[0] = mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT190, mmc_mk_cons(_cond_str, mmc_mk_cons(_OMC_LIT43, mmc_mk_cons(_msg_str, mmc_mk_cons(_OMC_LIT191, MMC_REFSTRUCTLIT(mmc_nil)))))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 9: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,9,2) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
_msg = tmpMeta[0];
_i = tmp4_2;
tmp4 += 6;
_s1 = omc_DAEDump_indentStr(threadData, _i);
_msg_str = omc_ExpressionDump_printExpStr(threadData, _msg);
tmpMeta[0] = mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT192, mmc_mk_cons(_msg_str, mmc_mk_cons(_OMC_LIT191, MMC_REFSTRUCTLIT(mmc_nil)))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 10: {
modelica_string tmp12 = 0;
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,11,2) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
_e = tmpMeta[0];
_i = tmp4_2;
tmp4 += 5;
_s1 = omc_DAEDump_indentStr(threadData, _i);
{
modelica_metatype tmp15_1;
tmp15_1 = _e;
{
volatile mmc_switch_type tmp15;
int tmp16;
tmp15 = 0;
for (; tmp15 < 2; tmp15++) {
switch (MMC_SWITCH_CAST(tmp15)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp15_1,13,3) == 0) goto tmp14_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp15_1), 4));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 8));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],1,2) == 0) goto tmp14_end;
tmp12 = _OMC_LIT193;
goto tmp14_done;
}
case 1: {
tmp12 = _OMC_LIT34;
goto tmp14_done;
}
}
goto tmp14_end;
tmp14_end: ;
}
goto goto_13;
goto_13:;
goto goto_2;
goto tmp14_done;
tmp14_done:;
}
}
_s2 = tmp12;
_s3 = omc_ExpressionDump_printExpStr(threadData, _e);
tmpMeta[0] = mmc_mk_cons(_s1, mmc_mk_cons(_s2, mmc_mk_cons(_s3, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil)))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 11: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,12,1) == 0) goto tmp3_end;
_i = tmp4_2;
tmp4 += 4;
_s1 = omc_DAEDump_indentStr(threadData, _i);
tmpMeta[0] = stringAppend(_s1,_OMC_LIT194);
tmp1 = tmpMeta[0];
goto tmp3_done;
}
case 12: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,13,1) == 0) goto tmp3_end;
_i = tmp4_2;
tmp4 += 3;
_s1 = omc_DAEDump_indentStr(threadData, _i);
tmpMeta[0] = stringAppend(_s1,_OMC_LIT195);
tmp1 = tmpMeta[0];
goto tmp3_done;
}
case 13: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,10,3) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
_i = tmp4_2;
tmp4 += 2;
_s1 = omc_DAEDump_indentStr(threadData, _i);
_e1_str = omc_ExpressionDump_printExpStr(threadData, _e1);
_e2_str = omc_ExpressionDump_printExpStr(threadData, _e2);
tmpMeta[0] = mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT196, mmc_mk_cons(_e1_str, mmc_mk_cons(_OMC_LIT43, mmc_mk_cons(_e2_str, mmc_mk_cons(_OMC_LIT191, MMC_REFSTRUCTLIT(mmc_nil)))))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 14: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,16,2) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
_stmts = tmpMeta[0];
_i = tmp4_2;
tmp4 += 1;
_s1 = omc_DAEDump_indentStr(threadData, _i);
_s2 = omc_DAEDump_ppStmtListStr(threadData, _stmts, ((modelica_integer) 2) + _i);
tmpMeta[0] = mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT197, mmc_mk_cons(_s2, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT191, MMC_REFSTRUCTLIT(mmc_nil))))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 15: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,15,3) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
_s2 = tmpMeta[0];
_i = tmp4_2;
_s1 = omc_DAEDump_indentStr(threadData, _i);
tmpMeta[0] = mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT198, mmc_mk_cons(_s2, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT191, MMC_REFSTRUCTLIT(mmc_nil))))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 16: {
_i = tmp4_2;
_s1 = omc_DAEDump_indentStr(threadData, _i);
tmpMeta[0] = stringAppend(_s1,_OMC_LIT199);
tmp1 = tmpMeta[0];
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
tmp3_done:
(void)tmp4;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp3_done2;
goto_2:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp4 < 17) {
goto tmp3_top;
}
MMC_THROW_INTERNAL();
tmp3_done2:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
modelica_metatype boxptr_DAEDump_ppStmtStr(threadData_t *threadData, modelica_metatype _inStatement, modelica_metatype _inInteger)
{
modelica_integer tmp1;
modelica_string _outString = NULL;
tmp1 = mmc_unbox_integer(_inInteger);
_outString = omc_DAEDump_ppStmtStr(threadData, _inStatement, tmp1);
return _outString;
}
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_ppWhenStmtStr(threadData_t *threadData, modelica_metatype _inStatement, modelica_integer _inInteger)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[4] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;modelica_integer tmp4_2;
tmp4_1 = _inStatement;
tmp4_2 = _inInteger;
{
modelica_string _s3 = NULL;
modelica_string _s4 = NULL;
modelica_string _s5 = NULL;
modelica_string _s6 = NULL;
modelica_string _s7 = NULL;
modelica_string _s8 = NULL;
modelica_string _s9 = NULL;
modelica_string _s10 = NULL;
modelica_metatype _e = NULL;
modelica_integer _i;
modelica_integer _i_1;
modelica_metatype _stmts = NULL;
modelica_metatype _stmt = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,7,6) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 5));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 6));
if (!optionNone(tmpMeta[2])) goto tmp3_end;
_e = tmpMeta[0];
_stmts = tmpMeta[1];
_i = tmp4_2;
tmpMeta[0] = stringAppend(_OMC_LIT99,omc_ExpressionDump_printExpStr(threadData, _e));
_s3 = tmpMeta[0];
tmpMeta[0] = stringAppend(_s3,_OMC_LIT87);
_s5 = tmpMeta[0];
_i_1 = ((modelica_integer) 2) + _i;
_s6 = omc_DAEDump_ppStmtListStr(threadData, _stmts, _i_1);
tmpMeta[0] = stringAppend(_s5,_s6);
_s7 = tmpMeta[0];
_s8 = omc_DAEDump_indentStr(threadData, _i);
tmpMeta[0] = stringAppend(_s7,_s8);
_s9 = tmpMeta[0];
tmpMeta[0] = stringAppend(_s9,_OMC_LIT200);
tmp1 = tmpMeta[0];
goto tmp3_done;
}
case 1: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,7,6) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 5));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 6));
if (optionNone(tmpMeta[2])) goto tmp3_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 1));
_e = tmpMeta[0];
_stmts = tmpMeta[1];
_stmt = tmpMeta[3];
_i = tmp4_2;
_s3 = omc_ExpressionDump_printExpStr(threadData, _e);
tmpMeta[0] = stringAppend(_OMC_LIT99,_s3);
_s4 = tmpMeta[0];
tmpMeta[0] = stringAppend(_s4,_OMC_LIT87);
_s5 = tmpMeta[0];
_i_1 = ((modelica_integer) 2) + _i;
_s6 = omc_DAEDump_ppStmtListStr(threadData, _stmts, _i_1);
tmpMeta[0] = stringAppend(_s5,_s6);
_s7 = tmpMeta[0];
_s8 = omc_DAEDump_ppWhenStmtStr(threadData, _stmt, _i);
tmpMeta[0] = stringAppend(omc_DAEDump_indentStr(threadData, _i),_OMC_LIT201);
_s9 = tmpMeta[0];
tmpMeta[0] = stringAppend(_s7,_s9);
_s10 = tmpMeta[0];
tmpMeta[0] = stringAppend(_s10,_s8);
tmp1 = tmpMeta[0];
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_DAEDump_ppWhenStmtStr(threadData_t *threadData, modelica_metatype _inStatement, modelica_metatype _inInteger)
{
modelica_integer tmp1;
modelica_string _outString = NULL;
tmp1 = mmc_unbox_integer(_inInteger);
_outString = omc_DAEDump_ppWhenStmtStr(threadData, _inStatement, tmp1);
return _outString;
}
PROTECTED_FUNCTION_STATIC void omc_DAEDump_ppStmt(threadData_t *threadData, modelica_metatype _inStatement, modelica_integer _inInteger)
{
modelica_metatype tmpMeta[4] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp3_1;volatile modelica_integer tmp3_2;
tmp3_1 = _inStatement;
tmp3_2 = _inInteger;
{
modelica_metatype _e = NULL;
modelica_metatype _cond = NULL;
modelica_metatype _msg = NULL;
modelica_metatype _e1 = NULL;
modelica_metatype _e2 = NULL;
modelica_integer _i;
modelica_integer _i_1;
modelica_integer _index;
modelica_string _s1 = NULL;
modelica_string _s2 = NULL;
modelica_string _s3 = NULL;
modelica_string _str = NULL;
modelica_string _id = NULL;
modelica_string _name = NULL;
modelica_metatype _es = NULL;
modelica_metatype _expl = NULL;
modelica_metatype _then_ = NULL;
modelica_metatype _stmts = NULL;
modelica_metatype _stmt = NULL;
modelica_metatype _ty = NULL;
modelica_metatype _else_ = NULL;
modelica_metatype _source = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp2_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp3 < 16; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,0,4) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 5));
_e2 = tmpMeta[0];
_e = tmpMeta[1];
_source = tmpMeta[2];
_i = tmp3_2;
tmp3 += 14;
omc_DAEDump_indent(threadData, _i);
omc_ExpressionDump_printExp(threadData, _e2);
omc_Print_printBuf(threadData, _OMC_LIT179);
omc_ExpressionDump_printExp(threadData, _e);
if(omc_Config_typeinfo(threadData))
{
tmpMeta[0] = stringAppend(_OMC_LIT202,omc_Error_infoStr(threadData, omc_ElementSource_getElementSourceFileInfo(threadData, _source)));
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT184);
omc_Print_printBuf(threadData, tmpMeta[1]);
}
omc_Print_printBuf(threadData, _OMC_LIT1);
goto tmp2_done;
}
case 1: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,2,4) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4));
_e2 = tmpMeta[0];
_e = tmpMeta[1];
_i = tmp3_2;
tmp3 += 13;
omc_DAEDump_indent(threadData, _i);
omc_ExpressionDump_printExp(threadData, _e2);
omc_Print_printBuf(threadData, _OMC_LIT179);
omc_ExpressionDump_printExp(threadData, _e);
omc_Print_printBuf(threadData, _OMC_LIT1);
goto tmp2_done;
}
case 2: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,1,4) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4));
_expl = tmpMeta[0];
_e = tmpMeta[1];
_i = tmp3_2;
tmp3 += 12;
_s1 = omc_DAEDump_indentStr(threadData, _i);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e);
_es = omc_List_map(threadData, _expl, boxvar_ExpressionDump_printExpStr);
_s3 = stringDelimitList(_es, _OMC_LIT43);
tmpMeta[0] = mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT83, mmc_mk_cons(_s3, mmc_mk_cons(_OMC_LIT180, mmc_mk_cons(_s2, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil)))))));
_str = stringAppendList(tmpMeta[0]);
omc_Print_printBuf(threadData, _str);
goto tmp2_done;
}
case 3: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,3,4) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4));
_e = tmpMeta[0];
_then_ = tmpMeta[1];
_else_ = tmpMeta[2];
_i = tmp3_2;
tmp3 += 11;
omc_DAEDump_indent(threadData, _i);
omc_Print_printBuf(threadData, _OMC_LIT181);
omc_ExpressionDump_printExp(threadData, _e);
omc_Print_printBuf(threadData, _OMC_LIT87);
_i_1 = ((modelica_integer) 2) + _i;
omc_DAEDump_ppStmtList(threadData, _then_, _i_1);
omc_DAEDump_ppElse(threadData, _else_, _i);
omc_DAEDump_indent(threadData, _i);
omc_Print_printBuf(threadData, _OMC_LIT182);
goto tmp2_done;
}
case 4: {
modelica_integer tmp5;
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,4,7) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 5));
tmp5 = mmc_unbox_integer(tmpMeta[1]);
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 6));
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 7));
_id = tmpMeta[0];
_index = tmp5;
_e = tmpMeta[2];
_stmts = tmpMeta[3];
_i = tmp3_2;
tmp3 += 10;
omc_DAEDump_indent(threadData, _i);
omc_Print_printBuf(threadData, _OMC_LIT185);
omc_Print_printBuf(threadData, _id);
if((_index != ((modelica_integer) -1)))
{
tmpMeta[0] = stringAppend(_OMC_LIT203,intString(_index));
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT184);
omc_Print_printBuf(threadData, tmpMeta[1]);
}
omc_Print_printBuf(threadData, _OMC_LIT94);
omc_ExpressionDump_printExp(threadData, _e);
omc_Print_printBuf(threadData, _OMC_LIT95);
_i_1 = ((modelica_integer) 2) + _i;
omc_DAEDump_ppStmtList(threadData, _stmts, _i_1);
omc_DAEDump_indent(threadData, _i);
omc_Print_printBuf(threadData, _OMC_LIT186);
goto tmp2_done;
}
case 5: {
modelica_integer tmp6;
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,5,8) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 5));
tmp6 = mmc_unbox_integer(tmpMeta[1]);
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 6));
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 7));
_id = tmpMeta[0];
_index = tmp6;
_e = tmpMeta[2];
_stmts = tmpMeta[3];
_i = tmp3_2;
tmp3 += 9;
omc_DAEDump_indent(threadData, _i);
omc_Print_printBuf(threadData, _OMC_LIT187);
omc_Print_printBuf(threadData, _id);
if((_index != ((modelica_integer) -1)))
{
tmpMeta[0] = stringAppend(_OMC_LIT203,intString(_index));
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT184);
omc_Print_printBuf(threadData, tmpMeta[1]);
}
omc_Print_printBuf(threadData, _OMC_LIT94);
omc_ExpressionDump_printExp(threadData, _e);
omc_Print_printBuf(threadData, _OMC_LIT95);
_i_1 = ((modelica_integer) 2) + _i;
omc_DAEDump_ppStmtList(threadData, _stmts, _i_1);
omc_DAEDump_indent(threadData, _i);
omc_Print_printBuf(threadData, _OMC_LIT204);
goto tmp2_done;
}
case 6: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,6,3) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_e = tmpMeta[0];
_stmts = tmpMeta[1];
_i = tmp3_2;
tmp3 += 8;
omc_DAEDump_indent(threadData, _i);
omc_Print_printBuf(threadData, _OMC_LIT188);
omc_ExpressionDump_printExp(threadData, _e);
omc_Print_printBuf(threadData, _OMC_LIT95);
_i_1 = ((modelica_integer) 2) + _i;
omc_DAEDump_ppStmtList(threadData, _stmts, _i_1);
omc_DAEDump_indent(threadData, _i);
omc_Print_printBuf(threadData, _OMC_LIT189);
goto tmp2_done;
}
case 7: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,11,2) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
_e1 = tmpMeta[0];
_i = tmp3_2;
tmp3 += 7;
omc_DAEDump_indent(threadData, _i);
{
modelica_metatype tmp9_1;
tmp9_1 = _e1;
{
volatile mmc_switch_type tmp9;
int tmp10;
tmp9 = 0;
for (; tmp9 < 2; tmp9++) {
switch (MMC_SWITCH_CAST(tmp9)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp9_1,13,3) == 0) goto tmp8_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp9_1), 4));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 8));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],1,2) == 0) goto tmp8_end;
omc_Print_printBuf(threadData, _OMC_LIT193);
goto tmp8_done;
}
case 1: {
goto tmp8_done;
}
}
goto tmp8_end;
tmp8_end: ;
}
goto goto_7;
goto_7:;
goto goto_1;
goto tmp8_done;
tmp8_done:;
}
}
;
omc_ExpressionDump_printExp(threadData, _e1);
omc_Print_printBuf(threadData, _OMC_LIT1);
goto tmp2_done;
}
case 8: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,7,6) == 0) goto tmp2_end;
_stmt = tmp3_1;
_i = tmp3_2;
tmp3 += 6;
omc_DAEDump_indent(threadData, _i);
omc_Print_printBuf(threadData, omc_DAEDump_ppWhenStmtStr(threadData, _stmt, ((modelica_integer) 1)));
goto tmp2_done;
}
case 9: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,8,4) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_cond = tmpMeta[0];
_msg = tmpMeta[1];
_i = tmp3_2;
tmp3 += 5;
omc_DAEDump_indent(threadData, _i);
omc_Print_printBuf(threadData, _OMC_LIT190);
omc_ExpressionDump_printExp(threadData, _cond);
omc_Print_printBuf(threadData, _OMC_LIT43);
omc_ExpressionDump_printExp(threadData, _msg);
omc_Print_printBuf(threadData, _OMC_LIT191);
goto tmp2_done;
}
case 10: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,12,1) == 0) goto tmp2_end;
_i = tmp3_2;
tmp3 += 4;
omc_DAEDump_indent(threadData, _i);
omc_Print_printBuf(threadData, _OMC_LIT194);
goto tmp2_done;
}
case 11: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,13,1) == 0) goto tmp2_end;
_i = tmp3_2;
tmp3 += 3;
omc_DAEDump_indent(threadData, _i);
omc_Print_printBuf(threadData, _OMC_LIT195);
goto tmp2_done;
}
case 12: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,10,3) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
_i = tmp3_2;
tmp3 += 2;
omc_DAEDump_indent(threadData, _i);
omc_Print_printBuf(threadData, _OMC_LIT196);
omc_ExpressionDump_printExp(threadData, _e1);
omc_Print_printBuf(threadData, _OMC_LIT20);
omc_ExpressionDump_printExp(threadData, _e2);
omc_Print_printBuf(threadData, _OMC_LIT191);
goto tmp2_done;
}
case 13: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,16,2) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
_stmts = tmpMeta[0];
_i = tmp3_2;
tmp3 += 1;
omc_DAEDump_indent(threadData, _i);
omc_Print_printBuf(threadData, _OMC_LIT205);
omc_DAEDump_ppStmtList(threadData, _stmts, ((modelica_integer) 2) + _i);
omc_Print_printBuf(threadData, _OMC_LIT206);
goto tmp2_done;
}
case 14: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,15,3) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_name = tmpMeta[0];
_ty = tmpMeta[1];
_i = tmp3_2;
omc_DAEDump_indent(threadData, _i);
omc_Print_printBuf(threadData, _OMC_LIT207);
omc_Print_printBuf(threadData, _name);
omc_Print_printBuf(threadData, _OMC_LIT208);
omc_Print_printBuf(threadData, omc_Types_unparseType(threadData, _ty));
omc_Print_printBuf(threadData, _OMC_LIT209);
goto tmp2_done;
}
case 15: {
_i = tmp3_2;
omc_DAEDump_indent(threadData, _i);
omc_Print_printBuf(threadData, _OMC_LIT210);
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
tmp2_done:
(void)tmp3;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp2_done2;
goto_1:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp3 < 16) {
goto tmp2_top;
}
MMC_THROW_INTERNAL();
tmp2_done2:;
}
}
;
_return: OMC_LABEL_UNUSED
return;
}
PROTECTED_FUNCTION_STATIC void boxptr_DAEDump_ppStmt(threadData_t *threadData, modelica_metatype _inStatement, modelica_metatype _inInteger)
{
modelica_integer tmp1;
tmp1 = mmc_unbox_integer(_inInteger);
omc_DAEDump_ppStmt(threadData, _inStatement, tmp1);
return;
}
DLLExport
modelica_string omc_DAEDump_ppStatementStr(threadData_t *threadData, modelica_metatype _alg)
{
modelica_string _str = NULL;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
_str = omc_DAEDump_ppStmtStr(threadData, _alg, ((modelica_integer) 2));
_return: OMC_LABEL_UNUSED
return _str;
}
PROTECTED_FUNCTION_STATIC void omc_DAEDump_ppStatement(threadData_t *threadData, modelica_metatype _alg)
{
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
omc_DAEDump_ppStmt(threadData, _alg, ((modelica_integer) 2));
_return: OMC_LABEL_UNUSED
return;
}
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_printRecordConstructorBinding(threadData_t *threadData, modelica_metatype _binding)
{
modelica_string _str = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _binding;
{
modelica_metatype _e = NULL;
modelica_metatype _v = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 4; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,0,0) == 0) goto tmp3_end;
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
case 1: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,1,4) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 5));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],0,0) == 0) goto tmp3_end;
_e = tmpMeta[0];
tmpMeta[0] = stringAppend(_OMC_LIT3,omc_ExpressionDump_printExpStr(threadData, _e));
tmp1 = tmpMeta[0];
goto tmp3_done;
}
case 2: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,1,4) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 5));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],2,0) == 0) goto tmp3_end;
_e = tmpMeta[0];
tmpMeta[0] = stringAppend(_OMC_LIT3,omc_ExpressionDump_printExpStr(threadData, _e));
tmp1 = tmpMeta[0];
goto tmp3_done;
}
case 3: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,2,2) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],0,0) == 0) goto tmp3_end;
_v = tmpMeta[0];
tmpMeta[0] = stringAppend(_OMC_LIT3,omc_ValuesUtil_valString(threadData, _v));
tmp1 = tmpMeta[0];
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_str = tmp1;
_return: OMC_LABEL_UNUSED
return _str;
}
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_printRecordConstructorInputAttrStr(threadData_t *threadData, modelica_metatype _inAttributes)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _inAttributes;
{
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 3; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 7));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[0],1,0) == 0) goto tmp3_end;
tmp1 = _OMC_LIT211;
goto tmp3_done;
}
case 1: {
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[0],3,0) == 0) goto tmp3_end;
tmp1 = _OMC_LIT212;
goto tmp3_done;
}
case 2: {
tmp1 = _OMC_LIT213;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_printRecordConstructorInputStr(threadData_t *threadData, modelica_metatype _inVar)
{
modelica_string _outString = NULL;
modelica_string _name = NULL;
modelica_string _attr_str = NULL;
modelica_string _binding_str = NULL;
modelica_string _ty_str = NULL;
modelica_string _ty_vars_str = NULL;
modelica_metatype _attr = NULL;
modelica_metatype _ty = NULL;
modelica_metatype _binding = NULL;
modelica_metatype tmpMeta[5] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
tmpMeta[0] = _inVar;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 2));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 3));
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 4));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 5));
_name = tmpMeta[1];
_attr = tmpMeta[2];
_ty = tmpMeta[3];
_binding = tmpMeta[4];
_attr_str = omc_DAEDump_printRecordConstructorInputAttrStr(threadData, _attr);
_binding_str = omc_DAEDump_printRecordConstructorBinding(threadData, _binding);
_ty_str = omc_DAEDump_printTypeStr(threadData, _ty ,&_ty_vars_str);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT2, mmc_mk_cons(_attr_str, mmc_mk_cons(_ty_str, mmc_mk_cons(_OMC_LIT35, mmc_mk_cons(_name, mmc_mk_cons(_ty_vars_str, mmc_mk_cons(_binding_str, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil)))))))));
_outString = stringAppendList(tmpMeta[0]);
_return: OMC_LABEL_UNUSED
return _outString;
}
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_printRecordConstructorInputsStr(threadData_t *threadData, modelica_metatype _itp)
{
modelica_string _str = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _itp;
{
modelica_metatype _var_strl = NULL;
modelica_metatype _vars = NULL;
modelica_metatype _tp = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,9,3) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
_vars = tmpMeta[0];
_var_strl = omc_List_map(threadData, _vars, boxvar_DAEDump_printRecordConstructorInputStr);
tmp1 = stringAppendList(_var_strl);
goto tmp3_done;
}
case 1: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,11,4) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
_tp = tmpMeta[0];
_itp = _tp;
goto _tailrecursive;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_str = tmp1;
_return: OMC_LABEL_UNUSED
return _str;
}
DLLExport
modelica_string omc_DAEDump_dumpInlineTypeStr(threadData_t *threadData, modelica_metatype _inlineType)
{
modelica_string _str = NULL;
modelica_string tmp1 = 0;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _inlineType;
{
int tmp4;
{
switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))) {
case 7: {
tmp1 = _OMC_LIT214;
goto tmp3_done;
}
case 8: {
tmp1 = _OMC_LIT215;
goto tmp3_done;
}
case 3: {
tmp1 = _OMC_LIT216;
goto tmp3_done;
}
case 6: {
tmp1 = _OMC_LIT217;
goto tmp3_done;
}
default:
tmp3_default: OMC_LABEL_UNUSED; {
tmp1 = _OMC_LIT218;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_str = tmp1;
_return: OMC_LABEL_UNUSED
return _str;
}
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_dumpParallelismStr(threadData_t *threadData, modelica_metatype _inType)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _inType;
{
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 4; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,11,4) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 7));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],0,0) == 0) goto tmp3_end;
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
case 1: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,11,4) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 7));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],1,0) == 0) goto tmp3_end;
tmp1 = _OMC_LIT219;
goto tmp3_done;
}
case 2: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,11,4) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 7));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],2,0) == 0) goto tmp3_end;
tmp1 = _OMC_LIT220;
goto tmp3_done;
}
case 3: {
tmp1 = _OMC_LIT221;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
PROTECTED_FUNCTION_STATIC void omc_DAEDump_dumpFunction(threadData_t *threadData, modelica_metatype _inElement)
{
modelica_metatype tmpMeta[9] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp3_1;
tmp3_1 = _inElement;
{
modelica_string _fstr = NULL;
modelica_string _inlineTypeStr = NULL;
modelica_string _ext_decl_str = NULL;
modelica_string _parallelism_str = NULL;
modelica_string _impureStr = NULL;
modelica_string _typeStr = NULL;
modelica_metatype _fpath = NULL;
modelica_metatype _daeElts = NULL;
modelica_metatype _t = NULL;
modelica_metatype _inlineType = NULL;
modelica_metatype _c = NULL;
modelica_metatype _ext_decl = NULL;
modelica_boolean _isImpure;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp2_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp3 < 5; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
modelica_integer tmp5;
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,0,10) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
if (listEmpty(tmpMeta[1])) goto tmp2_end;
tmpMeta[2] = MMC_CAR(tmpMeta[1]);
tmpMeta[3] = MMC_CDR(tmpMeta[1]);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[2],0,1) == 0) goto tmp2_end;
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 2));
tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4));
tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 7));
tmp5 = mmc_unbox_integer(tmpMeta[6]);
tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 8));
tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 11));
_fpath = tmpMeta[0];
_daeElts = tmpMeta[4];
_t = tmpMeta[5];
_isImpure = tmp5;
_inlineType = tmpMeta[7];
_c = tmpMeta[8];
tmp3 += 3;
_typeStr = omc_Types_printTypeStr(threadData, _t);
omc_Print_printBuf(threadData, _typeStr);
_parallelism_str = omc_DAEDump_dumpParallelismStr(threadData, _t);
omc_Print_printBuf(threadData, _parallelism_str);
_impureStr = (_isImpure?_OMC_LIT55:_OMC_LIT34);
omc_Print_printBuf(threadData, _impureStr);
omc_Print_printBuf(threadData, _OMC_LIT56);
_fstr = omc_AbsynUtil_pathStringNoQual(threadData, _fpath, _OMC_LIT17, 0, 0);
omc_Print_printBuf(threadData, _fstr);
_inlineTypeStr = omc_DAEDump_dumpInlineTypeStr(threadData, _inlineType);
omc_Print_printBuf(threadData, _inlineTypeStr);
omc_Print_printBuf(threadData, omc_DAEDump_dumpCommentStr(threadData, _c));
omc_Print_printBuf(threadData, _OMC_LIT15);
omc_DAEDump_dumpFunctionElements(threadData, _daeElts);
omc_Print_printBuf(threadData, omc_DAEDump_dumpClassAnnotationStr(threadData, _c));
omc_Print_printBuf(threadData, _OMC_LIT57);
omc_Print_printBuf(threadData, _fstr);
omc_Print_printBuf(threadData, _OMC_LIT58);
goto tmp2_done;
}
case 1: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,0,10) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
if (listEmpty(tmpMeta[0])) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmpMeta[0]);
tmpMeta[2] = MMC_CDR(tmpMeta[0]);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],1,2) == 0) goto tmp2_end;
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 5));
if (7 != MMC_STRLEN(tmpMeta[4]) || strcmp(MMC_STRINGDATA(_OMC_LIT68), MMC_STRINGDATA(tmpMeta[4])) != 0) goto tmp2_end;
goto tmp2_done;
}
case 2: {
modelica_integer tmp6;
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,0,10) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
if (listEmpty(tmpMeta[1])) goto tmp2_end;
tmpMeta[2] = MMC_CAR(tmpMeta[1]);
tmpMeta[3] = MMC_CDR(tmpMeta[1]);
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[2],1,2) == 0) goto tmp2_end;
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 2));
tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 3));
tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 7));
tmp6 = mmc_unbox_integer(tmpMeta[6]);
tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 8));
tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 11));
_fpath = tmpMeta[0];
_daeElts = tmpMeta[4];
_ext_decl = tmpMeta[5];
_isImpure = tmp6;
_inlineType = tmpMeta[7];
_c = tmpMeta[8];
tmp3 += 1;
_impureStr = (_isImpure?_OMC_LIT55:_OMC_LIT34);
omc_Print_printBuf(threadData, _impureStr);
omc_Print_printBuf(threadData, _OMC_LIT56);
_fstr = omc_AbsynUtil_pathStringNoQual(threadData, _fpath, _OMC_LIT17, 0, 0);
omc_Print_printBuf(threadData, _fstr);
_inlineTypeStr = omc_DAEDump_dumpInlineTypeStr(threadData, _inlineType);
omc_Print_printBuf(threadData, _inlineTypeStr);
omc_Print_printBuf(threadData, omc_DAEDump_dumpCommentStr(threadData, _c));
omc_Print_printBuf(threadData, _OMC_LIT15);
omc_DAEDump_dumpFunctionElements(threadData, _daeElts);
_ext_decl_str = omc_DAEDump_dumpExtDeclStr(threadData, _ext_decl);
tmpMeta[0] = stringAppend(_OMC_LIT59,_ext_decl_str);
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT15);
omc_Print_printBuf(threadData, tmpMeta[1]);
omc_Print_printBuf(threadData, omc_DAEDump_dumpClassAnnotationStr(threadData, _c));
omc_Print_printBuf(threadData, _OMC_LIT57);
omc_Print_printBuf(threadData, _fstr);
omc_Print_printBuf(threadData, _OMC_LIT58);
goto tmp2_done;
}
case 3: {
modelica_boolean tmp7;
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,1,3) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_fpath = tmpMeta[0];
_t = tmpMeta[1];
tmp7 = omc_Flags_isSet(threadData, _OMC_LIT63);
if (0 != tmp7) goto goto_1;
omc_Print_printBuf(threadData, _OMC_LIT56);
_fstr = omc_AbsynUtil_pathStringNoQual(threadData, _fpath, _OMC_LIT17, 0, 0);
omc_Print_printBuf(threadData, _fstr);
tmpMeta[0] = stringAppend(_OMC_LIT64,_fstr);
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT65);
omc_Print_printBuf(threadData, tmpMeta[1]);
omc_Print_printBuf(threadData, omc_DAEDump_printRecordConstructorInputsStr(threadData, _t));
tmpMeta[0] = stringAppend(_OMC_LIT66,omc_AbsynUtil_pathLastIdent(threadData, _fpath));
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT67);
omc_Print_printBuf(threadData, tmpMeta[1]);
omc_Print_printBuf(threadData, _OMC_LIT57);
omc_Print_printBuf(threadData, _fstr);
omc_Print_printBuf(threadData, _OMC_LIT58);
goto tmp2_done;
}
case 4: {
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
tmp2_done:
(void)tmp3;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp2_done2;
goto_1:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp3 < 5) {
goto tmp2_top;
}
MMC_THROW_INTERNAL();
tmp2_done2:;
}
}
;
_return: OMC_LABEL_UNUSED
return;
}
DLLExport
modelica_string omc_DAEDump_derivativeCondStr(threadData_t *threadData, modelica_metatype _dc)
{
modelica_string _str = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _dc;
{
modelica_metatype _e = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,1,1) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
_e = tmpMeta[0];
tmpMeta[0] = stringAppend(_OMC_LIT222,omc_ExpressionDump_printExpStr(threadData, _e));
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT30);
tmp1 = tmpMeta[1];
goto tmp3_done;
}
case 1: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,0,0) == 0) goto tmp3_end;
tmp1 = _OMC_LIT223;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_str = tmp1;
_return: OMC_LABEL_UNUSED
return _str;
}
PROTECTED_FUNCTION_STATIC void omc_DAEDump_dumpExtObjectClass(threadData_t *threadData, modelica_metatype _inElement)
{
modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp3_1;
tmp3_1 = _inElement;
{
modelica_string _fstr = NULL;
modelica_metatype _fpath = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp2_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp3 < 2; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,18,2) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
_fpath = tmpMeta[0];
omc_Print_printBuf(threadData, _OMC_LIT111);
_fstr = omc_AbsynUtil_pathString(threadData, _fpath, _OMC_LIT17, 1, 0);
omc_Print_printBuf(threadData, _fstr);
omc_Print_printBuf(threadData, _OMC_LIT224);
omc_Print_printBuf(threadData, _OMC_LIT57);
omc_Print_printBuf(threadData, _fstr);
omc_Print_printBuf(threadData, _OMC_LIT1);
goto tmp2_done;
}
case 1: {
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
tmp2_done:
(void)tmp3;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp2_done2;
goto_1:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp3 < 2) {
goto tmp2_top;
}
MMC_THROW_INTERNAL();
tmp2_done2:;
}
}
;
_return: OMC_LABEL_UNUSED
return;
}
PROTECTED_FUNCTION_STATIC void omc_DAEDump_dumpInitialAlgorithm(threadData_t *threadData, modelica_metatype _inElement)
{
modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp3_1;
tmp3_1 = _inElement;
{
modelica_metatype _stmts = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp2_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp3 < 2; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,16,2) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 2));
_stmts = tmpMeta[1];
omc_Print_printBuf(threadData, _OMC_LIT70);
omc_Dump_printList(threadData, _stmts, boxvar_DAEDump_ppStatement, _OMC_LIT34);
goto tmp2_done;
}
case 1: {
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
tmp2_done:
(void)tmp3;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp2_done2;
goto_1:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp3 < 2) {
goto tmp2_top;
}
MMC_THROW_INTERNAL();
tmp2_done2:;
}
}
;
_return: OMC_LABEL_UNUSED
return;
}
DLLExport
void omc_DAEDump_dumpAlgorithm(threadData_t *threadData, modelica_metatype _inElement)
{
modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp3_1;
tmp3_1 = _inElement;
{
modelica_metatype _stmts = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp2_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp3 < 2; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,15,2) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 2));
_stmts = tmpMeta[1];
omc_Print_printBuf(threadData, _OMC_LIT71);
omc_Dump_printList(threadData, _stmts, boxvar_DAEDump_ppStatement, _OMC_LIT34);
goto tmp2_done;
}
case 1: {
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
tmp2_done:
(void)tmp3;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp2_done2;
goto_1:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp3 < 2) {
goto tmp2_top;
}
MMC_THROW_INTERNAL();
tmp2_done2:;
}
}
;
_return: OMC_LABEL_UNUSED
return;
}
DLLExport
modelica_string omc_DAEDump_dumpEquationStr(threadData_t *threadData, modelica_metatype _inElement)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[5] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp4_1;
tmp4_1 = _inElement;
{
modelica_string _s1 = NULL;
modelica_string _s2 = NULL;
modelica_string _s3 = NULL;
modelica_string _s4 = NULL;
modelica_string _s5 = NULL;
modelica_string _sourceStr = NULL;
modelica_metatype _e1 = NULL;
modelica_metatype _e2 = NULL;
modelica_metatype _e = NULL;
modelica_metatype _c = NULL;
modelica_metatype _cr1 = NULL;
modelica_metatype _cr2 = NULL;
modelica_metatype _src = NULL;
modelica_metatype _cmt = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp3_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp4 < 9; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,3,3) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
_src = tmpMeta[2];
tmp4 += 7;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e2);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT2, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT3, mmc_mk_cons(_s2, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil)))))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 1: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,4,3) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
_cr1 = tmpMeta[0];
_cr2 = tmpMeta[1];
_src = tmpMeta[2];
tmp4 += 6;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = omc_ComponentReference_printComponentRefStr(threadData, _cr1);
_s2 = omc_ComponentReference_printComponentRefStr(threadData, _cr2);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT2, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT3, mmc_mk_cons(_s2, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil)))))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 2: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,5,4) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 5));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
_src = tmpMeta[2];
tmp4 += 5;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e2);
tmpMeta[0] = stringAppend(_OMC_LIT2,_s1);
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT3);
tmpMeta[2] = stringAppend(tmpMeta[1],_s2);
tmpMeta[3] = stringAppend(tmpMeta[2],_sourceStr);
tmpMeta[4] = stringAppend(tmpMeta[3],_OMC_LIT1);
tmp1 = tmpMeta[4];
goto tmp3_done;
}
case 3: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,8,3) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
_src = tmpMeta[2];
tmp4 += 4;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e2);
tmpMeta[0] = stringAppend(_OMC_LIT2,_s1);
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT3);
tmpMeta[2] = stringAppend(tmpMeta[1],_s2);
tmpMeta[3] = stringAppend(tmpMeta[2],_sourceStr);
tmpMeta[4] = stringAppend(tmpMeta[3],_OMC_LIT1);
tmp1 = tmpMeta[4];
goto tmp3_done;
}
case 4: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,1,3) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
_c = tmpMeta[0];
_e = tmpMeta[1];
_src = tmpMeta[2];
tmp4 += 3;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = omc_ComponentReference_printComponentRefStr(threadData, _c);
tmpMeta[0] = stringAppend(_OMC_LIT2,_s1);
_s2 = tmpMeta[0];
tmpMeta[0] = stringAppend(_OMC_LIT225,_s2);
_s3 = tmpMeta[0];
_s4 = omc_ExpressionDump_printExpStr(threadData, _e);
tmpMeta[0] = stringAppend(_s3,_s4);
_s5 = tmpMeta[0];
tmpMeta[0] = stringAppend(_sourceStr,_OMC_LIT1);
tmpMeta[1] = stringAppend(_s5,tmpMeta[0]);
tmp1 = tmpMeta[1];
goto tmp3_done;
}
case 5: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,19,4) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 5));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
_src = tmpMeta[2];
tmp4 += 2;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e2);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT19, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT20, mmc_mk_cons(_s2, mmc_mk_cons(_OMC_LIT21, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))))))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 6: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,21,2) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
_e1 = tmpMeta[0];
_src = tmpMeta[1];
tmp4 += 1;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT23, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT21, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 7: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,24,2) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
_e1 = tmpMeta[0];
_src = tmpMeta[1];
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT2, mmc_mk_cons(_s1, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil)))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 8: {
tmp1 = _OMC_LIT26;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
tmp3_done:
(void)tmp4;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp3_done2;
goto_2:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp4 < 9) {
goto tmp3_top;
}
MMC_THROW_INTERNAL();
tmp3_done2:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
PROTECTED_FUNCTION_STATIC void omc_DAEDump_dumpInitialEquation(threadData_t *threadData, modelica_metatype _inElement)
{
modelica_metatype tmpMeta[7] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp3_1;
tmp3_1 = _inElement;
{
modelica_metatype _e1 = NULL;
modelica_metatype _e2 = NULL;
modelica_metatype _e = NULL;
modelica_metatype _c = NULL;
modelica_metatype _xs1 = NULL;
modelica_metatype _xs2 = NULL;
modelica_metatype _trueBranches = NULL;
modelica_metatype _conds = NULL;
modelica_string _s = NULL;
modelica_string _s1 = NULL;
modelica_string _s2 = NULL;
modelica_string _sourceStr = NULL;
modelica_metatype _str = NULL;
modelica_metatype _src = NULL;
modelica_metatype _cmt = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp2_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp3 < 9; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,14,3) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
tmp3 += 7;
omc_Print_printBuf(threadData, _OMC_LIT2);
omc_ExpressionDump_printExp(threadData, _e1);
omc_Print_printBuf(threadData, _OMC_LIT3);
omc_ExpressionDump_printExp(threadData, _e2);
omc_Print_printBuf(threadData, _OMC_LIT1);
goto tmp2_done;
}
case 1: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,2,3) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_c = tmpMeta[0];
_e = tmpMeta[1];
tmp3 += 6;
omc_Print_printBuf(threadData, _OMC_LIT2);
omc_ComponentReference_printComponentRef(threadData, _c);
omc_Print_printBuf(threadData, _OMC_LIT225);
omc_ExpressionDump_printExp(threadData, _e);
omc_Print_printBuf(threadData, _OMC_LIT1);
goto tmp2_done;
}
case 2: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,6,4) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
tmp3 += 5;
omc_Print_printBuf(threadData, _OMC_LIT2);
omc_ExpressionDump_printExp(threadData, _e1);
omc_Print_printBuf(threadData, _OMC_LIT3);
omc_ExpressionDump_printExp(threadData, _e2);
omc_Print_printBuf(threadData, _OMC_LIT1);
goto tmp2_done;
}
case 3: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,9,3) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
tmp3 += 4;
omc_Print_printBuf(threadData, _OMC_LIT2);
omc_ExpressionDump_printExp(threadData, _e1);
omc_Print_printBuf(threadData, _OMC_LIT3);
omc_ExpressionDump_printExp(threadData, _e2);
omc_Print_printBuf(threadData, _OMC_LIT1);
goto tmp2_done;
}
case 4: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,13,4) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
if (listEmpty(tmpMeta[0])) goto tmp2_end;
tmpMeta[1] = MMC_CAR(tmpMeta[0]);
tmpMeta[2] = MMC_CDR(tmpMeta[0]);
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
if (listEmpty(tmpMeta[3])) goto tmp2_end;
tmpMeta[4] = MMC_CAR(tmpMeta[3]);
tmpMeta[5] = MMC_CDR(tmpMeta[3]);
tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4));
_e = tmpMeta[1];
_conds = tmpMeta[2];
_xs1 = tmpMeta[4];
_trueBranches = tmpMeta[5];
_xs2 = tmpMeta[6];
tmp3 += 3;
omc_Print_printBuf(threadData, _OMC_LIT86);
omc_ExpressionDump_printExp(threadData, _e);
omc_Print_printBuf(threadData, _OMC_LIT87);
omc_List_map__0(threadData, _xs1, boxvar_DAEDump_dumpInitialEquation);
_str = omc_DAEDump_dumpIfEquationsStream(threadData, _conds, _trueBranches, _OMC_LIT228);
_s = omc_IOStream_string(threadData, _str);
omc_Print_printBuf(threadData, _s);
omc_Print_printBuf(threadData, _OMC_LIT88);
omc_List_map__0(threadData, _xs2, boxvar_DAEDump_dumpInitialEquation);
omc_Print_printBuf(threadData, _OMC_LIT182);
goto tmp2_done;
}
case 5: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,20,4) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 5));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
_src = tmpMeta[2];
tmp3 += 2;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
_s2 = omc_ExpressionDump_printExpStr(threadData, _e2);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT19, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT20, mmc_mk_cons(_s2, mmc_mk_cons(_OMC_LIT21, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))))))));
_s = stringAppendList(tmpMeta[0]);
omc_Print_printBuf(threadData, _s);
goto tmp2_done;
}
case 6: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,22,2) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_e1 = tmpMeta[0];
_src = tmpMeta[1];
tmp3 += 1;
_cmt = omc_ElementSource_getComments(threadData, _src);
_sourceStr = omc_DAEDump_cmtListToString(threadData, _cmt);
_s1 = omc_ExpressionDump_printExpStr(threadData, _e1);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT23, mmc_mk_cons(_s1, mmc_mk_cons(_OMC_LIT21, mmc_mk_cons(_sourceStr, mmc_mk_cons(_OMC_LIT1, MMC_REFSTRUCTLIT(mmc_nil))))));
_s = stringAppendList(tmpMeta[0]);
omc_Print_printBuf(threadData, _s);
goto tmp2_done;
}
case 7: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,25,2) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
_e1 = tmpMeta[0];
omc_ExpressionDump_printExp(threadData, _e1);
omc_Print_printBuf(threadData, _OMC_LIT1);
goto tmp2_done;
}
case 8: {
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
tmp2_done:
(void)tmp3;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp2_done2;
goto_1:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp3 < 9) {
goto tmp2_top;
}
MMC_THROW_INTERNAL();
tmp2_done2:;
}
}
;
_return: OMC_LABEL_UNUSED
return;
}
PROTECTED_FUNCTION_STATIC void omc_DAEDump_dumpEquation(threadData_t *threadData, modelica_metatype _inElement)
{
modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp3_1;
tmp3_1 = _inElement;
{
modelica_metatype _e1 = NULL;
modelica_metatype _e2 = NULL;
modelica_metatype _e = NULL;
modelica_metatype _c = NULL;
modelica_metatype _cr1 = NULL;
modelica_metatype _cr2 = NULL;
modelica_metatype _src = NULL;
modelica_string _sourceStr = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp2_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp3 < 8; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,3,3) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
_src = tmpMeta[2];
tmp3 += 6;
omc_Print_printBuf(threadData, _OMC_LIT2);
omc_ExpressionDump_printExp(threadData, _e1);
omc_Print_printBuf(threadData, _OMC_LIT3);
omc_ExpressionDump_printExp(threadData, _e2);
_sourceStr = omc_DAEDump_getSourceInformationStr(threadData, _src);
omc_Print_printBuf(threadData, _sourceStr);
omc_Print_printBuf(threadData, _OMC_LIT1);
goto tmp2_done;
}
case 1: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,4,3) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4));
_cr1 = tmpMeta[0];
_cr2 = tmpMeta[1];
_src = tmpMeta[2];
tmp3 += 5;
omc_Print_printBuf(threadData, _OMC_LIT2);
omc_ComponentReference_printComponentRef(threadData, _cr1);
omc_Print_printBuf(threadData, _OMC_LIT3);
omc_ComponentReference_printComponentRef(threadData, _cr2);
_sourceStr = omc_DAEDump_getSourceInformationStr(threadData, _src);
omc_Print_printBuf(threadData, _sourceStr);
omc_Print_printBuf(threadData, _OMC_LIT1);
goto tmp2_done;
}
case 2: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,5,4) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 5));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
_src = tmpMeta[2];
tmp3 += 4;
omc_Print_printBuf(threadData, _OMC_LIT2);
omc_ExpressionDump_printExp(threadData, _e1);
omc_Print_printBuf(threadData, _OMC_LIT3);
omc_ExpressionDump_printExp(threadData, _e2);
_sourceStr = omc_DAEDump_getSourceInformationStr(threadData, _src);
omc_Print_printBuf(threadData, _sourceStr);
omc_Print_printBuf(threadData, _OMC_LIT1);
goto tmp2_done;
}
case 3: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,8,3) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
_src = tmpMeta[2];
tmp3 += 3;
omc_Print_printBuf(threadData, _OMC_LIT2);
omc_ExpressionDump_printExp(threadData, _e1);
omc_Print_printBuf(threadData, _OMC_LIT3);
omc_ExpressionDump_printExp(threadData, _e2);
_sourceStr = omc_DAEDump_getSourceInformationStr(threadData, _src);
omc_Print_printBuf(threadData, _sourceStr);
omc_Print_printBuf(threadData, _OMC_LIT1);
goto tmp2_done;
}
case 4: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,1,3) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4));
_c = tmpMeta[0];
_e = tmpMeta[1];
_src = tmpMeta[2];
tmp3 += 2;
omc_Print_printBuf(threadData, _OMC_LIT2);
omc_ComponentReference_printComponentRef(threadData, _c);
omc_Print_printBuf(threadData, _OMC_LIT225);
omc_ExpressionDump_printExp(threadData, _e);
_sourceStr = omc_DAEDump_getSourceInformationStr(threadData, _src);
omc_Print_printBuf(threadData, _sourceStr);
omc_Print_printBuf(threadData, _OMC_LIT1);
goto tmp2_done;
}
case 5: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,19,4) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 5));
_e1 = tmpMeta[0];
_e2 = tmpMeta[1];
_src = tmpMeta[2];
tmp3 += 1;
omc_Print_printBuf(threadData, _OMC_LIT190);
omc_ExpressionDump_printExp(threadData, _e1);
omc_Print_printBuf(threadData, _OMC_LIT20);
omc_ExpressionDump_printExp(threadData, _e2);
omc_Print_printBuf(threadData, _OMC_LIT21);
_sourceStr = omc_DAEDump_getSourceInformationStr(threadData, _src);
omc_Print_printBuf(threadData, _sourceStr);
omc_Print_printBuf(threadData, _OMC_LIT1);
goto tmp2_done;
}
case 6: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,24,2) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
_e1 = tmpMeta[0];
_src = tmpMeta[1];
omc_ExpressionDump_printExp(threadData, _e1);
_sourceStr = omc_DAEDump_getSourceInformationStr(threadData, _src);
omc_Print_printBuf(threadData, _sourceStr);
omc_Print_printBuf(threadData, _OMC_LIT1);
goto tmp2_done;
}
case 7: {
omc_Print_printBuf(threadData, _OMC_LIT229);
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
tmp2_done:
(void)tmp3;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp2_done2;
goto_1:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp3 < 8) {
goto tmp2_top;
}
MMC_THROW_INTERNAL();
tmp2_done2:;
}
}
;
_return: OMC_LABEL_UNUSED
return;
}
PROTECTED_FUNCTION_STATIC void omc_DAEDump_dumpCommentOption(threadData_t *threadData, modelica_metatype _comment)
{
modelica_string _str = NULL;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
_str = omc_DAEDump_dumpCommentAnnotationStr(threadData, _comment);
omc_Print_printBuf(threadData, _str);
_return: OMC_LABEL_UNUSED
return;
}
DLLExport
modelica_string omc_DAEDump_dumpCommentAnnotationStr(threadData_t *threadData, modelica_metatype _inComment)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _inComment;
{
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (!optionNone(tmp4_1)) goto tmp3_end;
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
case 1: {
tmpMeta[0] = stringAppend(omc_DAEDump_dumpCommentStr(threadData, _inComment),omc_DAEDump_dumpCompAnnotationStr(threadData, _inComment));
tmp1 = tmpMeta[0];
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
DLLExport
modelica_boolean omc_DAEDump_filterStructuralMod(threadData_t *threadData, modelica_metatype _mod)
{
modelica_boolean _keep;
modelica_boolean tmp1 = 0;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_mod), 2)));
{
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 9; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (8 != MMC_STRLEN(tmp4_1) || strcmp(MMC_STRINGDATA(_OMC_LIT230), MMC_STRINGDATA(tmp4_1)) != 0) goto tmp3_end;
tmp1 = 1;
goto tmp3_done;
}
case 1: {
if (6 != MMC_STRLEN(tmp4_1) || strcmp(MMC_STRINGDATA(_OMC_LIT231), MMC_STRINGDATA(tmp4_1)) != 0) goto tmp3_end;
tmp1 = 1;
goto tmp3_done;
}
case 2: {
if (10 != MMC_STRLEN(tmp4_1) || strcmp(MMC_STRINGDATA(_OMC_LIT232), MMC_STRINGDATA(tmp4_1)) != 0) goto tmp3_end;
tmp1 = 1;
goto tmp3_done;
}
case 3: {
if (10 != MMC_STRLEN(tmp4_1) || strcmp(MMC_STRINGDATA(_OMC_LIT233), MMC_STRINGDATA(tmp4_1)) != 0) goto tmp3_end;
tmp1 = 1;
goto tmp3_done;
}
case 4: {
if (7 != MMC_STRLEN(tmp4_1) || strcmp(MMC_STRINGDATA(_OMC_LIT234), MMC_STRINGDATA(tmp4_1)) != 0) goto tmp3_end;
tmp1 = 1;
goto tmp3_done;
}
case 5: {
if (11 != MMC_STRLEN(tmp4_1) || strcmp(MMC_STRINGDATA(_OMC_LIT235), MMC_STRINGDATA(tmp4_1)) != 0) goto tmp3_end;
tmp1 = 1;
goto tmp3_done;
}
case 6: {
if (25 != MMC_STRLEN(tmp4_1) || strcmp(MMC_STRINGDATA(_OMC_LIT236), MMC_STRINGDATA(tmp4_1)) != 0) goto tmp3_end;
tmp1 = 1;
goto tmp3_done;
}
case 7: {
if (14 != MMC_STRLEN(tmp4_1) || strcmp(MMC_STRINGDATA(_OMC_LIT237), MMC_STRINGDATA(tmp4_1)) != 0) goto tmp3_end;
tmp1 = 1;
goto tmp3_done;
}
case 8: {
tmp1 = 0;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_keep = tmp1;
_return: OMC_LABEL_UNUSED
return _keep;
}
modelica_metatype boxptr_DAEDump_filterStructuralMod(threadData_t *threadData, modelica_metatype _mod)
{
modelica_boolean _keep;
modelica_metatype out_keep;
_keep = omc_DAEDump_filterStructuralMod(threadData, _mod);
out_keep = mmc_mk_icon(_keep);
return out_keep;
}
DLLExport
modelica_metatype omc_DAEDump_filterStructuralMods(threadData_t *threadData, modelica_metatype __omcQ_24in_5Fmod)
{
modelica_metatype _mod = NULL;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
_mod = __omcQ_24in_5Fmod;
_mod = omc_SCodeUtil_filterSubMods(threadData, _mod, boxvar_DAEDump_filterStructuralMod);
_return: OMC_LABEL_UNUSED
return _mod;
}
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_dumpAnnotationStr(threadData_t *threadData, modelica_metatype _inComment, modelica_string _inPrefix, modelica_string _inSuffix)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[4] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp4_1;
tmp4_1 = _inComment;
{
modelica_string _ann = NULL;
modelica_metatype _ann_mod = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp3_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (optionNone(tmp4_1)) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 1));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 2));
if (optionNone(tmpMeta[1])) goto tmp3_end;
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 1));
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 2));
_ann_mod = tmpMeta[3];
if(omc_Config_showAnnotations(threadData))
{
tmpMeta[0] = stringAppend(_inPrefix,_OMC_LIT238);
tmpMeta[1] = stringAppend(tmpMeta[0],omc_SCodeDump_printModStr(threadData, _ann_mod, _OMC_LIT110));
tmpMeta[2] = stringAppend(tmpMeta[1],_inSuffix);
_ann = tmpMeta[2];
}
else
{
if(omc_Config_showStructuralAnnotations(threadData))
{
_ann_mod = omc_DAEDump_filterStructuralMods(threadData, _ann_mod);
if((!omc_SCodeUtil_isEmptyMod(threadData, _ann_mod)))
{
tmpMeta[0] = stringAppend(_inPrefix,_OMC_LIT238);
tmpMeta[1] = stringAppend(tmpMeta[0],omc_SCodeDump_printModStr(threadData, _ann_mod, _OMC_LIT110));
tmpMeta[2] = stringAppend(tmpMeta[1],_inSuffix);
_ann = tmpMeta[2];
}
else
{
_ann = _OMC_LIT34;
}
}
else
{
_ann = _OMC_LIT34;
}
}
tmp1 = _ann;
goto tmp3_done;
}
case 1: {
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
tmp3_done:
(void)tmp4;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp3_done2;
goto_2:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp4 < 2) {
goto tmp3_top;
}
MMC_THROW_INTERNAL();
tmp3_done2:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_dumpCompAnnotationStr(threadData_t *threadData, modelica_metatype _inComment)
{
modelica_string _outString = NULL;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
_outString = omc_DAEDump_dumpAnnotationStr(threadData, _inComment, _OMC_LIT35, _OMC_LIT34);
_return: OMC_LABEL_UNUSED
return _outString;
}
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_dumpClassAnnotationStr(threadData_t *threadData, modelica_metatype _inComment)
{
modelica_string _outString = NULL;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
_outString = omc_DAEDump_dumpAnnotationStr(threadData, _inComment, _OMC_LIT2, _OMC_LIT1);
_return: OMC_LABEL_UNUSED
return _outString;
}
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_dumpCommentStr(threadData_t *threadData, modelica_metatype _inComment)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _inComment;
{
modelica_string _cmt = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (optionNone(tmp4_1)) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 1));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 3));
if (optionNone(tmpMeta[1])) goto tmp3_end;
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 1));
_cmt = tmpMeta[2];
_cmt = omc_System_escapedString(threadData, _cmt, 0);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT105, mmc_mk_cons(_cmt, mmc_mk_cons(_OMC_LIT106, MMC_REFSTRUCTLIT(mmc_nil))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 1: {
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
DLLExport
modelica_string omc_DAEDump_dumpVarParallelismStr(threadData_t *threadData, modelica_metatype _inVarParallelism)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _inVarParallelism;
{
int tmp4;
{
switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))) {
case 5: {
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
case 3: {
tmp1 = _OMC_LIT239;
goto tmp3_done;
}
case 4: {
tmp1 = _OMC_LIT240;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_dumpVarVisibilityStr(threadData_t *threadData, modelica_metatype _prot)
{
modelica_string _str = NULL;
modelica_string tmp1 = 0;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _prot;
{
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,0,0) == 0) goto tmp3_end;
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
case 1: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,1,0) == 0) goto tmp3_end;
tmp1 = _OMC_LIT211;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_str = tmp1;
_return: OMC_LABEL_UNUSED
return _str;
}
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_getStartOrigin(threadData_t *threadData, modelica_metatype _inStartOrigin)
{
modelica_string _outStartOrigin = NULL;
modelica_string tmp1 = 0;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _inStartOrigin;
{
modelica_string _str = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (!optionNone(tmp4_1)) goto tmp3_end;
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
case 1: {
if(omc_Flags_isSet(threadData, _OMC_LIT245))
{
_str = omc_Dump_getOptionWithConcatStr(threadData, _inStartOrigin, boxvar_ExpressionDump_printExpStr, _OMC_LIT241);
}
else
{
_str = _OMC_LIT34;
}
tmp1 = _str;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_outStartOrigin = tmp1;
_return: OMC_LABEL_UNUSED
return _outStartOrigin;
}
DLLExport
modelica_string omc_DAEDump_dumpVariableAttributesStr(threadData_t *threadData, modelica_metatype _inVariableAttributesOption)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[13] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp4_1;
tmp4_1 = _inVariableAttributesOption;
{
modelica_string _quantity = NULL;
modelica_string _unit_str = NULL;
modelica_string _displayUnit_str = NULL;
modelica_string _stateSel_str = NULL;
modelica_string _min_str = NULL;
modelica_string _max_str = NULL;
modelica_string _nominal_str = NULL;
modelica_string _initial_str = NULL;
modelica_string _fixed_str = NULL;
modelica_string _uncertainty_str = NULL;
modelica_string _dist_str = NULL;
modelica_string _res_1 = NULL;
modelica_string _startOriginStr = NULL;
modelica_metatype _quant = NULL;
modelica_metatype _unit = NULL;
modelica_metatype _displayUnit = NULL;
modelica_metatype _min = NULL;
modelica_metatype _max = NULL;
modelica_metatype _initialExp = NULL;
modelica_metatype _nominal = NULL;
modelica_metatype _fixed = NULL;
modelica_metatype _startOrigin = NULL;
modelica_metatype _stateSel = NULL;
modelica_metatype _uncertainty = NULL;
modelica_metatype _dist = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp3_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp4 < 7; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
modelica_boolean tmp6;
modelica_string tmp7;
if (optionNone(tmp4_1)) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 1));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[0],0,15) == 0) goto tmp3_end;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 2));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 3));
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 4));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 5));
tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 6));
tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 7));
tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 8));
tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 9));
tmpMeta[9] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 10));
tmpMeta[10] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 11));
tmpMeta[11] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 12));
tmpMeta[12] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 16));
_quant = tmpMeta[1];
_unit = tmpMeta[2];
_displayUnit = tmpMeta[3];
_min = tmpMeta[4];
_max = tmpMeta[5];
_initialExp = tmpMeta[6];
_fixed = tmpMeta[7];
_nominal = tmpMeta[8];
_stateSel = tmpMeta[9];
_uncertainty = tmpMeta[10];
_dist = tmpMeta[11];
_startOrigin = tmpMeta[12];
tmp4 += 5;
_quantity = omc_Dump_getOptionWithConcatStr(threadData, _quant, boxvar_ExpressionDump_printExpStr, _OMC_LIT246);
_unit_str = omc_Dump_getOptionWithConcatStr(threadData, _unit, boxvar_ExpressionDump_printExpStr, _OMC_LIT247);
_displayUnit_str = omc_Dump_getOptionWithConcatStr(threadData, _displayUnit, boxvar_ExpressionDump_printExpStr, _OMC_LIT248);
_stateSel_str = omc_Dump_getOptionWithConcatStr(threadData, _stateSel, boxvar_DAEDump_dumpStateSelectStr, _OMC_LIT249);
_min_str = omc_Dump_getOptionWithConcatStr(threadData, _min, boxvar_ExpressionDump_printExpStr, _OMC_LIT250);
_max_str = omc_Dump_getOptionWithConcatStr(threadData, _max, boxvar_ExpressionDump_printExpStr, _OMC_LIT251);
_nominal_str = omc_Dump_getOptionWithConcatStr(threadData, _nominal, boxvar_ExpressionDump_printExpStr, _OMC_LIT252);
_initial_str = omc_Dump_getOptionWithConcatStr(threadData, _initialExp, boxvar_ExpressionDump_printExpStr, _OMC_LIT253);
_fixed_str = omc_Dump_getOptionWithConcatStr(threadData, _fixed, boxvar_ExpressionDump_printExpStr, _OMC_LIT254);
_uncertainty_str = omc_Dump_getOptionWithConcatStr(threadData, _uncertainty, boxvar_DAEDump_dumpUncertaintyStr, _OMC_LIT255);
_dist_str = omc_Dump_getOptionWithConcatStr(threadData, _dist, boxvar_DAEDump_dumpDistributionStr, _OMC_LIT256);
_startOriginStr = omc_DAEDump_getStartOrigin(threadData, _startOrigin);
tmpMeta[0] = mmc_mk_cons(_quantity, mmc_mk_cons(_unit_str, mmc_mk_cons(_displayUnit_str, mmc_mk_cons(_min_str, mmc_mk_cons(_max_str, mmc_mk_cons(_initial_str, mmc_mk_cons(_fixed_str, mmc_mk_cons(_nominal_str, mmc_mk_cons(_stateSel_str, mmc_mk_cons(_uncertainty_str, mmc_mk_cons(_dist_str, mmc_mk_cons(_startOriginStr, MMC_REFSTRUCTLIT(mmc_nil)))))))))))));
_res_1 = omc_Util_stringDelimitListNonEmptyElts(threadData, tmpMeta[0], _OMC_LIT43);
tmp6 = (modelica_boolean)(stringLength(_res_1) == ((modelica_integer) 0));
if(tmp6)
{
tmp7 = _OMC_LIT34;
}
else
{
tmpMeta[0] = mmc_mk_cons(_OMC_LIT83, mmc_mk_cons(_res_1, mmc_mk_cons(_OMC_LIT30, MMC_REFSTRUCTLIT(mmc_nil))));
tmp7 = stringAppendList(tmpMeta[0]);
}
tmp1 = tmp7;
goto tmp3_done;
}
case 1: {
modelica_boolean tmp8;
modelica_string tmp9;
if (optionNone(tmp4_1)) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 1));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[0],1,11) == 0) goto tmp3_end;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 2));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 3));
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 4));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 5));
tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 6));
tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 7));
tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 8));
tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 12));
_quant = tmpMeta[1];
_min = tmpMeta[2];
_max = tmpMeta[3];
_initialExp = tmpMeta[4];
_fixed = tmpMeta[5];
_uncertainty = tmpMeta[6];
_dist = tmpMeta[7];
_startOrigin = tmpMeta[8];
tmp4 += 4;
_quantity = omc_Dump_getOptionWithConcatStr(threadData, _quant, boxvar_ExpressionDump_printExpStr, _OMC_LIT246);
_min_str = omc_Dump_getOptionWithConcatStr(threadData, _min, boxvar_ExpressionDump_printExpStr, _OMC_LIT250);
_max_str = omc_Dump_getOptionWithConcatStr(threadData, _max, boxvar_ExpressionDump_printExpStr, _OMC_LIT251);
_initial_str = omc_Dump_getOptionWithConcatStr(threadData, _initialExp, boxvar_ExpressionDump_printExpStr, _OMC_LIT253);
_fixed_str = omc_Dump_getOptionWithConcatStr(threadData, _fixed, boxvar_ExpressionDump_printExpStr, _OMC_LIT254);
_uncertainty_str = omc_Dump_getOptionWithConcatStr(threadData, _uncertainty, boxvar_DAEDump_dumpUncertaintyStr, _OMC_LIT255);
_dist_str = omc_Dump_getOptionWithConcatStr(threadData, _dist, boxvar_DAEDump_dumpDistributionStr, _OMC_LIT256);
_startOriginStr = omc_DAEDump_getStartOrigin(threadData, _startOrigin);
tmpMeta[0] = mmc_mk_cons(_quantity, mmc_mk_cons(_min_str, mmc_mk_cons(_max_str, mmc_mk_cons(_initial_str, mmc_mk_cons(_fixed_str, mmc_mk_cons(_uncertainty_str, mmc_mk_cons(_dist_str, mmc_mk_cons(_startOriginStr, MMC_REFSTRUCTLIT(mmc_nil)))))))));
_res_1 = omc_Util_stringDelimitListNonEmptyElts(threadData, tmpMeta[0], _OMC_LIT43);
tmp8 = (modelica_boolean)(stringLength(_res_1) == ((modelica_integer) 0));
if(tmp8)
{
tmp9 = _OMC_LIT34;
}
else
{
tmpMeta[0] = mmc_mk_cons(_OMC_LIT83, mmc_mk_cons(_res_1, mmc_mk_cons(_OMC_LIT30, MMC_REFSTRUCTLIT(mmc_nil))));
tmp9 = stringAppendList(tmpMeta[0]);
}
tmp1 = tmp9;
goto tmp3_done;
}
case 2: {
modelica_boolean tmp10;
modelica_string tmp11;
if (optionNone(tmp4_1)) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 1));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[0],2,7) == 0) goto tmp3_end;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 2));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 3));
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 4));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 8));
_quant = tmpMeta[1];
_initialExp = tmpMeta[2];
_fixed = tmpMeta[3];
_startOrigin = tmpMeta[4];
tmp4 += 3;
_quantity = omc_Dump_getOptionWithConcatStr(threadData, _quant, boxvar_ExpressionDump_printExpStr, _OMC_LIT246);
_initial_str = omc_Dump_getOptionWithConcatStr(threadData, _initialExp, boxvar_ExpressionDump_printExpStr, _OMC_LIT253);
_fixed_str = omc_Dump_getOptionWithConcatStr(threadData, _fixed, boxvar_ExpressionDump_printExpStr, _OMC_LIT254);
_startOriginStr = omc_DAEDump_getStartOrigin(threadData, _startOrigin);
tmpMeta[0] = mmc_mk_cons(_quantity, mmc_mk_cons(_initial_str, mmc_mk_cons(_fixed_str, mmc_mk_cons(_startOriginStr, MMC_REFSTRUCTLIT(mmc_nil)))));
_res_1 = omc_Util_stringDelimitListNonEmptyElts(threadData, tmpMeta[0], _OMC_LIT43);
tmp10 = (modelica_boolean)(stringLength(_res_1) == ((modelica_integer) 0));
if(tmp10)
{
tmp11 = _OMC_LIT34;
}
else
{
tmpMeta[0] = mmc_mk_cons(_OMC_LIT83, mmc_mk_cons(_res_1, mmc_mk_cons(_OMC_LIT30, MMC_REFSTRUCTLIT(mmc_nil))));
tmp11 = stringAppendList(tmpMeta[0]);
}
tmp1 = tmp11;
goto tmp3_done;
}
case 3: {
modelica_boolean tmp12;
modelica_string tmp13;
if (optionNone(tmp4_1)) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 1));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[0],4,7) == 0) goto tmp3_end;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 2));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 3));
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 4));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 8));
_quant = tmpMeta[1];
_initialExp = tmpMeta[2];
_fixed = tmpMeta[3];
_startOrigin = tmpMeta[4];
tmp4 += 2;
_quantity = omc_Dump_getOptionWithConcatStr(threadData, _quant, boxvar_ExpressionDump_printExpStr, _OMC_LIT246);
_initial_str = omc_Dump_getOptionWithConcatStr(threadData, _initialExp, boxvar_ExpressionDump_printExpStr, _OMC_LIT253);
_fixed_str = omc_Dump_getOptionWithConcatStr(threadData, _fixed, boxvar_ExpressionDump_printExpStr, _OMC_LIT254);
_startOriginStr = omc_DAEDump_getStartOrigin(threadData, _startOrigin);
tmpMeta[0] = mmc_mk_cons(_quantity, mmc_mk_cons(_initial_str, mmc_mk_cons(_fixed_str, mmc_mk_cons(_startOriginStr, MMC_REFSTRUCTLIT(mmc_nil)))));
_res_1 = omc_Util_stringDelimitListNonEmptyElts(threadData, tmpMeta[0], _OMC_LIT43);
tmp12 = (modelica_boolean)(stringLength(_res_1) == ((modelica_integer) 0));
if(tmp12)
{
tmp13 = _OMC_LIT34;
}
else
{
tmpMeta[0] = mmc_mk_cons(_OMC_LIT83, mmc_mk_cons(_res_1, mmc_mk_cons(_OMC_LIT30, MMC_REFSTRUCTLIT(mmc_nil))));
tmp13 = stringAppendList(tmpMeta[0]);
}
tmp1 = tmp13;
goto tmp3_done;
}
case 4: {
modelica_boolean tmp14;
modelica_string tmp15;
if (optionNone(tmp4_1)) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 1));
if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[0],5,9) == 0) goto tmp3_end;
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 2));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 3));
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 4));
tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 5));
tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 6));
tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 10));
_quant = tmpMeta[1];
_min = tmpMeta[2];
_max = tmpMeta[3];
_initialExp = tmpMeta[4];
_fixed = tmpMeta[5];
_startOrigin = tmpMeta[6];
tmp4 += 1;
_quantity = omc_Dump_getOptionWithConcatStr(threadData, _quant, boxvar_ExpressionDump_printExpStr, _OMC_LIT246);
_min_str = omc_Dump_getOptionWithConcatStr(threadData, _min, boxvar_ExpressionDump_printExpStr, _OMC_LIT250);
_max_str = omc_Dump_getOptionWithConcatStr(threadData, _max, boxvar_ExpressionDump_printExpStr, _OMC_LIT251);
_initial_str = omc_Dump_getOptionWithConcatStr(threadData, _initialExp, boxvar_ExpressionDump_printExpStr, _OMC_LIT253);
_fixed_str = omc_Dump_getOptionWithConcatStr(threadData, _fixed, boxvar_ExpressionDump_printExpStr, _OMC_LIT254);
_startOriginStr = omc_DAEDump_getStartOrigin(threadData, _startOrigin);
tmpMeta[0] = mmc_mk_cons(_quantity, mmc_mk_cons(_min_str, mmc_mk_cons(_max_str, mmc_mk_cons(_initial_str, mmc_mk_cons(_fixed_str, mmc_mk_cons(_startOriginStr, MMC_REFSTRUCTLIT(mmc_nil)))))));
_res_1 = omc_Util_stringDelimitListNonEmptyElts(threadData, tmpMeta[0], _OMC_LIT43);
tmp14 = (modelica_boolean)(stringLength(_res_1) == ((modelica_integer) 0));
if(tmp14)
{
tmp15 = _OMC_LIT34;
}
else
{
tmpMeta[0] = mmc_mk_cons(_OMC_LIT83, mmc_mk_cons(_res_1, mmc_mk_cons(_OMC_LIT30, MMC_REFSTRUCTLIT(mmc_nil))));
tmp15 = stringAppendList(tmpMeta[0]);
}
tmp1 = tmp15;
goto tmp3_done;
}
case 5: {
if (!optionNone(tmp4_1)) goto tmp3_end;
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
case 6: {
tmp1 = _OMC_LIT257;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
tmp3_done:
(void)tmp4;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp3_done2;
goto_2:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp4 < 7) {
goto tmp3_top;
}
MMC_THROW_INTERNAL();
tmp3_done2:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
DLLExport
void omc_DAEDump_dumpVariableAttributes(threadData_t *threadData, modelica_metatype _attr)
{
modelica_string _res = NULL;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
_res = omc_DAEDump_dumpVariableAttributesStr(threadData, _attr);
omc_Print_printBuf(threadData, _res);
_return: OMC_LABEL_UNUSED
return;
}
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_dumpDistributionStr(threadData_t *threadData, modelica_metatype _distribution)
{
modelica_string _out = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[6] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _distribution;
{
modelica_metatype _name = NULL;
modelica_metatype _params = NULL;
modelica_metatype _paramNames = NULL;
modelica_string _name_str = NULL;
modelica_string _params_str = NULL;
modelica_string _paramNames_str = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 1; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
_name = tmpMeta[0];
_params = tmpMeta[1];
_paramNames = tmpMeta[2];
_name_str = omc_ExpressionDump_printExpStr(threadData, _name);
_params_str = omc_ExpressionDump_printExpStr(threadData, _params);
_paramNames_str = omc_ExpressionDump_printExpStr(threadData, _paramNames);
tmpMeta[0] = stringAppend(_OMC_LIT258,_name_str);
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT259);
tmpMeta[2] = stringAppend(tmpMeta[1],_params_str);
tmpMeta[3] = stringAppend(tmpMeta[2],_OMC_LIT260);
tmpMeta[4] = stringAppend(tmpMeta[3],_paramNames_str);
tmpMeta[5] = stringAppend(tmpMeta[4],_OMC_LIT30);
tmp1 = tmpMeta[5];
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_out = tmp1;
_return: OMC_LABEL_UNUSED
return _out;
}
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_dumpUncertaintyStr(threadData_t *threadData, modelica_metatype _uncertainty)
{
modelica_string _out = NULL;
modelica_string tmp1 = 0;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _uncertainty;
{
int tmp4;
{
switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))) {
case 3: {
tmp1 = _OMC_LIT261;
goto tmp3_done;
}
case 4: {
tmp1 = _OMC_LIT262;
goto tmp3_done;
}
case 5: {
tmp1 = _OMC_LIT263;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_out = tmp1;
_return: OMC_LABEL_UNUSED
return _out;
}
PROTECTED_FUNCTION_STATIC modelica_string omc_DAEDump_dumpStateSelectStr(threadData_t *threadData, modelica_metatype _inStateSelect)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _inStateSelect;
{
int tmp4;
{
switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))) {
case 3: {
tmp1 = _OMC_LIT264;
goto tmp3_done;
}
case 4: {
tmp1 = _OMC_LIT265;
goto tmp3_done;
}
case 6: {
tmp1 = _OMC_LIT266;
goto tmp3_done;
}
case 7: {
tmp1 = _OMC_LIT267;
goto tmp3_done;
}
case 5: {
tmp1 = _OMC_LIT268;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
DLLExport
modelica_string omc_DAEDump_dumpDirectionStr(threadData_t *threadData, modelica_metatype _inVarDirection)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _inVarDirection;
{
int tmp4;
{
switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))) {
case 3: {
tmp1 = _OMC_LIT213;
goto tmp3_done;
}
case 4: {
tmp1 = _OMC_LIT269;
goto tmp3_done;
}
case 5: {
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
PROTECTED_FUNCTION_STATIC void omc_DAEDump_dumpParallelism(threadData_t *threadData, modelica_metatype _inVarParallelism)
{
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp3_1;
tmp3_1 = _inVarParallelism;
{
int tmp3;
{
switch (MMC_SWITCH_CAST(valueConstructor(tmp3_1))) {
case 5: {
omc_Print_printBuf(threadData, _OMC_LIT270);
goto tmp2_done;
}
case 3: {
omc_Print_printBuf(threadData, _OMC_LIT271);
goto tmp2_done;
}
case 4: {
omc_Print_printBuf(threadData, _OMC_LIT272);
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
goto_1:;
MMC_THROW_INTERNAL();
goto tmp2_done;
tmp2_done:;
}
}
;
_return: OMC_LABEL_UNUSED
return;
}
PROTECTED_FUNCTION_STATIC void omc_DAEDump_dumpDirection(threadData_t *threadData, modelica_metatype _inVarDirection)
{
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp3_1;
tmp3_1 = _inVarDirection;
{
int tmp3;
{
switch (MMC_SWITCH_CAST(valueConstructor(tmp3_1))) {
case 3: {
omc_Print_printBuf(threadData, _OMC_LIT273);
goto tmp2_done;
}
case 4: {
omc_Print_printBuf(threadData, _OMC_LIT274);
goto tmp2_done;
}
case 5: {
omc_Print_printBuf(threadData, _OMC_LIT270);
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
goto_1:;
MMC_THROW_INTERNAL();
goto tmp2_done;
tmp2_done:;
}
}
;
_return: OMC_LABEL_UNUSED
return;
}
DLLExport
modelica_string omc_DAEDump_dumpKindStr(threadData_t *threadData, modelica_metatype _inVarKind)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _inVarKind;
{
int tmp4;
{
switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))) {
case 6: {
tmp1 = _OMC_LIT212;
goto tmp3_done;
}
case 5: {
tmp1 = _OMC_LIT275;
goto tmp3_done;
}
case 4: {
tmp1 = _OMC_LIT276;
goto tmp3_done;
}
case 3: {
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
PROTECTED_FUNCTION_STATIC void omc_DAEDump_dumpKind(threadData_t *threadData, modelica_metatype _inVarKind)
{
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp3_1;
tmp3_1 = _inVarKind;
{
int tmp3;
{
switch (MMC_SWITCH_CAST(valueConstructor(tmp3_1))) {
case 6: {
omc_Print_printBuf(threadData, _OMC_LIT277);
goto tmp2_done;
}
case 5: {
omc_Print_printBuf(threadData, _OMC_LIT278);
goto tmp2_done;
}
case 4: {
omc_Print_printBuf(threadData, _OMC_LIT279);
goto tmp2_done;
}
case 3: {
omc_Print_printBuf(threadData, _OMC_LIT280);
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
goto_1:;
MMC_THROW_INTERNAL();
goto tmp2_done;
tmp2_done:;
}
}
;
_return: OMC_LABEL_UNUSED
return;
}
PROTECTED_FUNCTION_STATIC void omc_DAEDump_dumpVars(threadData_t *threadData, modelica_metatype _lst, modelica_boolean _printTypeDimension)
{
modelica_string _str = NULL;
modelica_metatype _myStream = NULL;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
_myStream = omc_IOStream_create(threadData, _OMC_LIT34, _OMC_LIT84);
_myStream = omc_DAEDump_dumpVarsStream(threadData, _lst, _printTypeDimension, _myStream);
_str = omc_IOStream_string(threadData, _myStream);
omc_Print_printBuf(threadData, _str);
_return: OMC_LABEL_UNUSED
return;
}
PROTECTED_FUNCTION_STATIC void boxptr_DAEDump_dumpVars(threadData_t *threadData, modelica_metatype _lst, modelica_metatype _printTypeDimension)
{
modelica_integer tmp1;
tmp1 = mmc_unbox_integer(_printTypeDimension);
omc_DAEDump_dumpVars(threadData, _lst, tmp1);
return;
}
DLLExport
void omc_DAEDump_dumpFunctionElements(threadData_t *threadData, modelica_metatype _l)
{
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
omc_DAEDump_dumpVars(threadData, _l, 1);
omc_List_map__0(threadData, _l, boxvar_DAEDump_dumpAlgorithm);
_return: OMC_LABEL_UNUSED
return;
}
DLLExport
void omc_DAEDump_dumpElements(threadData_t *threadData, modelica_metatype _l)
{
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
omc_DAEDump_dumpVars(threadData, _l, 0);
omc_List_map__0(threadData, _l, boxvar_DAEDump_dumpExtObjectClass);
omc_Print_printBuf(threadData, _OMC_LIT107);
omc_List_map__0(threadData, _l, boxvar_DAEDump_dumpInitialEquation);
omc_Print_printBuf(threadData, _OMC_LIT108);
omc_List_map__0(threadData, _l, boxvar_DAEDump_dumpEquation);
omc_List_map__0(threadData, _l, boxvar_DAEDump_dumpInitialAlgorithm);
omc_List_map__0(threadData, _l, boxvar_DAEDump_dumpAlgorithm);
omc_List_map__0(threadData, _l, boxvar_DAEDump_dumpCompElement);
_return: OMC_LABEL_UNUSED
return;
}
PROTECTED_FUNCTION_STATIC void omc_DAEDump_dumpCompElement(threadData_t *threadData, modelica_metatype _inElement)
{
modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp3_1;
tmp3_1 = _inElement;
{
modelica_string _n = NULL;
modelica_metatype _l = NULL;
modelica_metatype _c = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp2_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp3 < 2; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,17,4) == 0) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 5));
_n = tmpMeta[0];
_l = tmpMeta[1];
_c = tmpMeta[2];
omc_Print_printBuf(threadData, _OMC_LIT111);
omc_Print_printBuf(threadData, _n);
omc_DAEDump_dumpCommentOption(threadData, _c);
omc_Print_printBuf(threadData, _OMC_LIT15);
omc_DAEDump_dumpElements(threadData, _l);
omc_Print_printBuf(threadData, _OMC_LIT57);
omc_Print_printBuf(threadData, _n);
omc_Print_printBuf(threadData, _OMC_LIT1);
goto tmp2_done;
}
case 1: {
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
tmp2_done:
(void)tmp3;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp2_done2;
goto_1:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp3 < 2) {
goto tmp2_top;
}
MMC_THROW_INTERNAL();
tmp2_done2:;
}
}
;
_return: OMC_LABEL_UNUSED
return;
}
DLLExport
modelica_string omc_DAEDump_dumpExtArgStr(threadData_t *threadData, modelica_metatype _inExtArg)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _inExtArg;
{
modelica_string _crstr = NULL;
modelica_string _dimstr = NULL;
modelica_metatype _cr = NULL;
modelica_metatype _exp = NULL;
modelica_metatype _dim = NULL;
int tmp4;
{
switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))) {
case 6: {
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
case 3: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,0,3) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
_cr = tmpMeta[0];
tmp1 = omc_ComponentReference_printComponentRefStr(threadData, _cr);
goto tmp3_done;
}
case 4: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,1,2) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
_exp = tmpMeta[0];
tmp1 = omc_ExpressionDump_printExpStr(threadData, _exp);
goto tmp3_done;
}
case 5: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,2,3) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
_cr = tmpMeta[0];
_dim = tmpMeta[1];
_crstr = omc_ComponentReference_printComponentRefStr(threadData, _cr);
_dimstr = omc_ExpressionDump_printExpStr(threadData, _dim);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT281, mmc_mk_cons(_crstr, mmc_mk_cons(_OMC_LIT43, mmc_mk_cons(_dimstr, mmc_mk_cons(_OMC_LIT30, MMC_REFSTRUCTLIT(mmc_nil))))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
DLLExport
modelica_string omc_DAEDump_dumpExtDeclStr(threadData_t *threadData, modelica_metatype _inExternalDecl)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[4] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _inExternalDecl;
{
modelica_string _extargsstr = NULL;
modelica_string _rettystr = NULL;
modelica_string _id = NULL;
modelica_string _lang = NULL;
modelica_metatype _extargs = NULL;
modelica_metatype _retty = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
for (; tmp4 < 1; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
modelica_boolean tmp6;
modelica_string tmp7;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3));
tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4));
tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 5));
_id = tmpMeta[0];
_extargs = tmpMeta[1];
_retty = tmpMeta[2];
_lang = tmpMeta[3];
_extargsstr = omc_Dump_getStringList(threadData, _extargs, boxvar_DAEDump_dumpExtArgStr, _OMC_LIT43);
_rettystr = omc_DAEDump_dumpExtArgStr(threadData, _retty);
tmp6 = (modelica_boolean)(stringEqual(_rettystr, _OMC_LIT34));
if(tmp6)
{
tmp7 = _rettystr;
}
else
{
tmpMeta[0] = stringAppend(_rettystr,_OMC_LIT3);
tmp7 = tmpMeta[0];
}
_rettystr = tmp7;
tmpMeta[0] = mmc_mk_cons(_OMC_LIT282, mmc_mk_cons(_lang, mmc_mk_cons(_OMC_LIT283, mmc_mk_cons(_rettystr, mmc_mk_cons(_id, mmc_mk_cons(_OMC_LIT83, mmc_mk_cons(_extargsstr, mmc_mk_cons(_OMC_LIT284, MMC_REFSTRUCTLIT(mmc_nil)))))))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
DLLExport
modelica_string omc_DAEDump_dumpStartValueStr(threadData_t *threadData, modelica_metatype _inStartValue)
{
modelica_string _outString = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp4_1;
tmp4_1 = _inStartValue;
{
modelica_string _s = NULL;
modelica_metatype _e = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp3_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (optionNone(tmp4_1)) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 1));
_e = tmpMeta[0];
_s = omc_ExpressionDump_printExpStr(threadData, _e);
tmpMeta[0] = mmc_mk_cons(_OMC_LIT285, mmc_mk_cons(_s, mmc_mk_cons(_OMC_LIT30, MMC_REFSTRUCTLIT(mmc_nil))));
tmp1 = stringAppendList(tmpMeta[0]);
goto tmp3_done;
}
case 1: {
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
tmp3_done:
(void)tmp4;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp3_done2;
goto_2:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp4 < 2) {
goto tmp3_top;
}
MMC_THROW_INTERNAL();
tmp3_done2:;
}
}
_outString = tmp1;
_return: OMC_LABEL_UNUSED
return _outString;
}
PROTECTED_FUNCTION_STATIC void omc_DAEDump_dumpStartValue(threadData_t *threadData, modelica_metatype _inStartValue)
{
modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp3_1;
tmp3_1 = _inStartValue;
{
modelica_metatype _e = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp2_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp3 < 2; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
if (optionNone(tmp3_1)) goto tmp2_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 1));
_e = tmpMeta[0];
omc_Print_printBuf(threadData, _OMC_LIT285);
omc_ExpressionDump_printExp(threadData, _e);
omc_Print_printBuf(threadData, _OMC_LIT30);
goto tmp2_done;
}
case 1: {
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
tmp2_done:
(void)tmp3;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp2_done2;
goto_1:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp3 < 2) {
goto tmp2_top;
}
MMC_THROW_INTERNAL();
tmp2_done2:;
}
}
;
_return: OMC_LABEL_UNUSED
return;
}
DLLExport
modelica_string omc_DAEDump_dumpOperatorSymbol(threadData_t *threadData, modelica_metatype _op)
{
modelica_string _str = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _op;
{
modelica_metatype _p = NULL;
int tmp4;
{
switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))) {
case 3: {
tmp1 = _OMC_LIT286;
goto tmp3_done;
}
case 4: {
tmp1 = _OMC_LIT287;
goto tmp3_done;
}
case 5: {
tmp1 = _OMC_LIT288;
goto tmp3_done;
}
case 6: {
tmp1 = _OMC_LIT289;
goto tmp3_done;
}
case 7: {
tmp1 = _OMC_LIT290;
goto tmp3_done;
}
case 8: {
tmp1 = _OMC_LIT287;
goto tmp3_done;
}
case 9: {
tmp1 = _OMC_LIT287;
goto tmp3_done;
}
case 10: {
tmp1 = _OMC_LIT286;
goto tmp3_done;
}
case 11: {
tmp1 = _OMC_LIT287;
goto tmp3_done;
}
case 12: {
tmp1 = _OMC_LIT288;
goto tmp3_done;
}
case 13: {
tmp1 = _OMC_LIT291;
goto tmp3_done;
}
case 14: {
tmp1 = _OMC_LIT292;
goto tmp3_done;
}
case 15: {
tmp1 = _OMC_LIT293;
goto tmp3_done;
}
case 16: {
tmp1 = _OMC_LIT294;
goto tmp3_done;
}
case 17: {
tmp1 = _OMC_LIT292;
goto tmp3_done;
}
case 18: {
tmp1 = _OMC_LIT292;
goto tmp3_done;
}
case 19: {
tmp1 = _OMC_LIT289;
goto tmp3_done;
}
case 20: {
tmp1 = _OMC_LIT291;
goto tmp3_done;
}
case 21: {
tmp1 = _OMC_LIT295;
goto tmp3_done;
}
case 22: {
tmp1 = _OMC_LIT295;
goto tmp3_done;
}
case 23: {
tmp1 = _OMC_LIT290;
goto tmp3_done;
}
case 24: {
tmp1 = _OMC_LIT295;
goto tmp3_done;
}
case 26: {
tmp1 = _OMC_LIT296;
goto tmp3_done;
}
case 25: {
tmp1 = _OMC_LIT297;
goto tmp3_done;
}
case 27: {
tmp1 = _OMC_LIT298;
goto tmp3_done;
}
case 29: {
tmp1 = _OMC_LIT299;
goto tmp3_done;
}
case 30: {
tmp1 = _OMC_LIT300;
goto tmp3_done;
}
case 31: {
tmp1 = _OMC_LIT301;
goto tmp3_done;
}
case 28: {
tmp1 = _OMC_LIT302;
goto tmp3_done;
}
case 32: {
tmp1 = _OMC_LIT303;
goto tmp3_done;
}
case 33: {
tmp1 = _OMC_LIT304;
goto tmp3_done;
}
case 34: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,31,1) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
_p = tmpMeta[0];
tmpMeta[0] = stringAppend(_OMC_LIT305,omc_AbsynUtil_pathString(threadData, _p, _OMC_LIT17, 1, 0));
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT35);
tmp1 = tmpMeta[1];
goto tmp3_done;
}
default:
tmp3_default: OMC_LABEL_UNUSED; {
tmp1 = _OMC_LIT306;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_str = tmp1;
_return: OMC_LABEL_UNUSED
return _str;
}
DLLExport
modelica_string omc_DAEDump_dumpOperatorString(threadData_t *threadData, modelica_metatype _op)
{
modelica_string _str = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp4_1;
tmp4_1 = _op;
{
modelica_metatype _p = NULL;
int tmp4;
{
switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))) {
case 3: {
tmp1 = _OMC_LIT307;
goto tmp3_done;
}
case 4: {
tmp1 = _OMC_LIT308;
goto tmp3_done;
}
case 5: {
tmp1 = _OMC_LIT309;
goto tmp3_done;
}
case 6: {
tmp1 = _OMC_LIT310;
goto tmp3_done;
}
case 7: {
tmp1 = _OMC_LIT311;
goto tmp3_done;
}
case 8: {
tmp1 = _OMC_LIT312;
goto tmp3_done;
}
case 9: {
tmp1 = _OMC_LIT313;
goto tmp3_done;
}
case 10: {
tmp1 = _OMC_LIT314;
goto tmp3_done;
}
case 11: {
tmp1 = _OMC_LIT315;
goto tmp3_done;
}
case 12: {
tmp1 = _OMC_LIT316;
goto tmp3_done;
}
case 13: {
tmp1 = _OMC_LIT317;
goto tmp3_done;
}
case 14: {
tmp1 = _OMC_LIT318;
goto tmp3_done;
}
case 15: {
tmp1 = _OMC_LIT319;
goto tmp3_done;
}
case 16: {
tmp1 = _OMC_LIT320;
goto tmp3_done;
}
case 17: {
tmp1 = _OMC_LIT321;
goto tmp3_done;
}
case 18: {
tmp1 = _OMC_LIT322;
goto tmp3_done;
}
case 19: {
tmp1 = _OMC_LIT323;
goto tmp3_done;
}
case 20: {
tmp1 = _OMC_LIT324;
goto tmp3_done;
}
case 21: {
tmp1 = _OMC_LIT325;
goto tmp3_done;
}
case 22: {
tmp1 = _OMC_LIT326;
goto tmp3_done;
}
case 23: {
tmp1 = _OMC_LIT327;
goto tmp3_done;
}
case 24: {
tmp1 = _OMC_LIT328;
goto tmp3_done;
}
case 26: {
tmp1 = _OMC_LIT329;
goto tmp3_done;
}
case 25: {
tmp1 = _OMC_LIT330;
goto tmp3_done;
}
case 27: {
tmp1 = _OMC_LIT331;
goto tmp3_done;
}
case 29: {
tmp1 = _OMC_LIT332;
goto tmp3_done;
}
case 30: {
tmp1 = _OMC_LIT333;
goto tmp3_done;
}
case 31: {
tmp1 = _OMC_LIT334;
goto tmp3_done;
}
case 28: {
tmp1 = _OMC_LIT335;
goto tmp3_done;
}
case 32: {
tmp1 = _OMC_LIT336;
goto tmp3_done;
}
case 33: {
tmp1 = _OMC_LIT337;
goto tmp3_done;
}
case 34: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,31,1) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
_p = tmpMeta[0];
tmpMeta[0] = stringAppend(_OMC_LIT305,omc_AbsynUtil_pathString(threadData, _p, _OMC_LIT17, 1, 0));
tmpMeta[1] = stringAppend(tmpMeta[0],_OMC_LIT35);
tmp1 = tmpMeta[1];
goto tmp3_done;
}
default:
tmp3_default: OMC_LABEL_UNUSED; {
tmp1 = _OMC_LIT306;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
goto_2:;
MMC_THROW_INTERNAL();
goto tmp3_done;
tmp3_done:;
}
}
_str = tmp1;
_return: OMC_LABEL_UNUSED
return _str;
}
PROTECTED_FUNCTION_STATIC modelica_boolean omc_DAEDump_funcGreaterThan(threadData_t *threadData, modelica_metatype _func1, modelica_metatype _func2)
{
modelica_boolean _res;
modelica_boolean tmp1 = 0;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
{
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp3_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp4 < 2; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
tmp1 = (stringCompare(omc_DAEDump_functionNameStr(threadData, _func1), omc_DAEDump_functionNameStr(threadData, _func2)) > ((modelica_integer) 0));
goto tmp3_done;
}
case 1: {
tmp1 = 1;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
tmp3_done:
(void)tmp4;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp3_done2;
goto_2:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp4 < 2) {
goto tmp3_top;
}
MMC_THROW_INTERNAL();
tmp3_done2:;
}
}
_res = tmp1;
_return: OMC_LABEL_UNUSED
return _res;
}
PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_DAEDump_funcGreaterThan(threadData_t *threadData, modelica_metatype _func1, modelica_metatype _func2)
{
modelica_boolean _res;
modelica_metatype out_res;
_res = omc_DAEDump_funcGreaterThan(threadData, _func1, _func2);
out_res = mmc_mk_icon(_res);
return out_res;
}
PROTECTED_FUNCTION_STATIC modelica_metatype omc_DAEDump_sortFunctions(threadData_t *threadData, modelica_metatype _funcs)
{
modelica_metatype _sortedFuncs = NULL;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
_sortedFuncs = omc_List_sort(threadData, _funcs, boxvar_DAEDump_funcGreaterThan);
_return: OMC_LABEL_UNUSED
return _sortedFuncs;
}
DLLExport
modelica_string omc_DAEDump_functionNameStr(threadData_t *threadData, modelica_metatype _inElement)
{
modelica_string _res = NULL;
modelica_string tmp1 = 0;
modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
volatile modelica_metatype tmp4_1;
tmp4_1 = _inElement;
{
modelica_metatype _fpath = NULL;
volatile mmc_switch_type tmp4;
int tmp5;
tmp4 = 0;
MMC_TRY_INTERNAL(mmc_jumper)
tmp3_top:
threadData->mmc_jumper = &new_mmc_jumper;
for (; tmp4 < 3; tmp4++) {
switch (MMC_SWITCH_CAST(tmp4)) {
case 0: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,0,10) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
_fpath = tmpMeta[0];
tmp4 += 1;
tmp1 = omc_AbsynUtil_pathStringNoQual(threadData, _fpath, _OMC_LIT17, 0, 0);
goto tmp3_done;
}
case 1: {
if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,1,3) == 0) goto tmp3_end;
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2));
_fpath = tmpMeta[0];
tmp1 = omc_AbsynUtil_pathStringNoQual(threadData, _fpath, _OMC_LIT17, 0, 0);
goto tmp3_done;
}
case 2: {
tmp1 = _OMC_LIT34;
goto tmp3_done;
}
}
goto tmp3_end;
tmp3_end: ;
}
goto goto_2;
tmp3_done:
(void)tmp4;
MMC_RESTORE_INTERNAL(mmc_jumper);
goto tmp3_done2;
goto_2:;
MMC_CATCH_INTERNAL(mmc_jumper);
if (++tmp4 < 3) {
goto tmp3_top;
}
MMC_THROW_INTERNAL();
tmp3_done2:;
}
}
_res = tmp1;
_return: OMC_LABEL_UNUSED
return _res;
}
DLLExport
modelica_string omc_DAEDump_dumpFunctionNamesStr(threadData_t *threadData, modelica_metatype _funcs)
{
modelica_string _str = NULL;
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
_str = stringDelimitList(omc_List_map(threadData, omc_DAEDump_sortFunctions(threadData, omc_DAEUtil_getFunctionList(threadData, _funcs, 0)), boxvar_DAEDump_functionNameStr), _OMC_LIT20);
_return: OMC_LABEL_UNUSED
return _str;
}
DLLExport
void omc_DAEDump_dump(threadData_t *threadData, modelica_metatype _dae, modelica_metatype _functionTree)
{
modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
MMC_SO();
_tailrecursive: OMC_LABEL_UNUSED
{
modelica_metatype tmp3_1;
tmp3_1 = _dae;
{
modelica_metatype _daelist = NULL;
volatile mmc_switch_type tmp3;
int tmp4;
tmp3 = 0;
for (; tmp3 < 1; tmp3++) {
switch (MMC_SWITCH_CAST(tmp3)) {
case 0: {
tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2));
_daelist = tmpMeta[0];
omc_List_map__0(threadData, omc_DAEDump_sortFunctions(threadData, omc_DAEUtil_getFunctionList(threadData, _functionTree, 0)), boxvar_DAEDump_dumpFunction);
omc_List_map__0(threadData, _daelist, boxvar_DAEDump_dumpExtObjectClass);
omc_List_map__0(threadData, _daelist, boxvar_DAEDump_dumpCompElement);
goto tmp2_done;
}
}
goto tmp2_end;
tmp2_end: ;
}
goto goto_1;
goto_1:;
MMC_THROW_INTERNAL();
goto tmp2_done;
tmp2_done:;
}
}
;
_return: OMC_LABEL_UNUSED
return;
}
