csources_v2/c_code/4_2/@mgorgeimpl.nim.c
2022-12-16 10:54:01 +08:00

988 lines
38 KiB
C

/* Generated by Nim Compiler v1.9.0 */
#define NIM_INTBITS 64
#include "nimbase.h"
#include <string.h>
#include <sys/types.h>
#include <stdio.h>
#undef LANGUAGE_C
#undef MIPSEB
#undef MIPSEL
#undef PPC
#undef R3000
#undef R4000
#undef i386
#undef linux
#undef mips
#undef near
#undef far
#undef powerpc
#undef unix
#define nimfr_(x, y)
#define nimln_(x, y)
typedef struct tyTuple__XOVT24GHXwqiEj5GCsEGCA tyTuple__XOVT24GHXwqiEj5GCsEGCA;
typedef struct NimStrPayload NimStrPayload;
typedef struct NimStringV2 NimStringV2;
typedef struct tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg;
typedef struct tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg;
typedef struct tyObject_Target__XQWVo9aPbyuL9b6bNh22dfIg tyObject_Target__XQWVo9aPbyuL9b6bNh22dfIg;
typedef struct tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg;
typedef struct tyObject_MsgConfig__9b2CYq6hCo8aU6ikssKccag tyObject_MsgConfig__9b2CYq6hCo8aU6ikssKccag;
typedef struct tySequence__npXKLeClRo4ZDs6rPxQ9bRA tySequence__npXKLeClRo4ZDs6rPxQ9bRA;
typedef struct tySequence__npXKLeClRo4ZDs6rPxQ9bRA_Content tySequence__npXKLeClRo4ZDs6rPxQ9bRA_Content;
typedef struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA;
typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw_Content tySequence__7lEisrXlQEzwtUKW5pzRCw_Content;
typedef struct tySequence__o8paxaScVM7VHajE9a8rbyw tySequence__o8paxaScVM7VHajE9a8rbyw;
typedef struct tySequence__o8paxaScVM7VHajE9a8rbyw_Content tySequence__o8paxaScVM7VHajE9a8rbyw_Content;
typedef struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg;
typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw tySequence__4eRCaZmrYLLw2k30GPTiMw;
typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw_Content tySequence__4eRCaZmrYLLw2k30GPTiMw_Content;
typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content;
typedef struct tyTuple__47w2DboNEPf69aPgubZdd7Q tyTuple__47w2DboNEPf69aPgubZdd7Q;
typedef struct tySequence__SE64IkxZVzsW0aLsNjnJHg tySequence__SE64IkxZVzsW0aLsNjnJHg;
typedef struct tySequence__SE64IkxZVzsW0aLsNjnJHg_Content tySequence__SE64IkxZVzsW0aLsNjnJHg_Content;
typedef struct tyObject_SuggestcolonObjectType___fw9a9cWgWYzM4zKmnq3DGNfQ tyObject_SuggestcolonObjectType___fw9a9cWgWYzM4zKmnq3DGNfQ;
typedef struct tyObject_ProfileDatacolonObjectType___0tIytioPEQIg9axPcCaYjTQ tyObject_ProfileDatacolonObjectType___0tIytioPEQIg9axPcCaYjTQ;
typedef struct tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg;
typedef struct RootObj RootObj;
typedef struct TNimTypeV2 TNimTypeV2;
typedef struct tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ;
typedef struct tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA;
typedef struct Exception Exception;
typedef struct tySequence__uB9b75OUPRENsBAu4AnoePA tySequence__uB9b75OUPRENsBAu4AnoePA;
typedef struct tySequence__uB9b75OUPRENsBAu4AnoePA_Content tySequence__uB9b75OUPRENsBAu4AnoePA_Content;
typedef struct tyTuple__3N9c2HK9cpi9cfEKxHnvsLXkg tyTuple__3N9c2HK9cpi9cfEKxHnvsLXkg;
typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
typedef struct tyObject_TFileInfo__2aBuGcbJEvokyJmg1PN0eg tyObject_TFileInfo__2aBuGcbJEvokyJmg1PN0eg;
typedef struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw tyTuple__QeWl6B6ffS4pU6WWrtcrDw;
typedef struct tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ;
typedef struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA;
struct NimStrPayload {
NI cap;
NIM_CHAR data[SEQ_DECL_SIZE];
};
struct NimStringV2 {
NI len;
NimStrPayload* p;
};
struct tyTuple__XOVT24GHXwqiEj5GCsEGCA {
NimStringV2 Field0;
NI Field1;
};
struct tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg {
NU16 line;
NI16 col;
NI32 fileIndex;
};
typedef NU8 tyArray__YtcvxHNKV4YiecPE9ap1mcA[20];
typedef NU8 tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w;
typedef NU8 tyEnum_TSystemCPU__ggCm2K7NXHAwcXG5u9bs1ow;
typedef NU8 tyEnum_TSystemOS__iZn2NSk2cFW6r5TYhTTIjg;
struct tyObject_Target__XQWVo9aPbyuL9b6bNh22dfIg {
tyEnum_TSystemCPU__ggCm2K7NXHAwcXG5u9bs1ow targetCPU;
tyEnum_TSystemCPU__ggCm2K7NXHAwcXG5u9bs1ow hostCPU;
tyEnum_TSystemOS__iZn2NSk2cFW6r5TYhTTIjg targetOS;
tyEnum_TSystemOS__iZn2NSk2cFW6r5TYhTTIjg hostOS;
NI intSize;
NI floatSize;
NI ptrSize;
NimStringV2 tnl;
};
typedef NU32 tySet_tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg;
typedef NU64 tySet_tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw;
typedef NU8 tySet_tyEnum_TErrorOutput__9ctbjKnMCtYsSPmUdTwRvag;
struct tySequence__npXKLeClRo4ZDs6rPxQ9bRA {
NI len; tySequence__npXKLeClRo4ZDs6rPxQ9bRA_Content* p;
};
struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
NI len; tySequence__7lEisrXlQEzwtUKW5pzRCw_Content* p;
};
struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA {
tySequence__7lEisrXlQEzwtUKW5pzRCw data;
NI counter;
};
struct tySequence__o8paxaScVM7VHajE9a8rbyw {
NI len; tySequence__o8paxaScVM7VHajE9a8rbyw_Content* p;
};
struct tyObject_MsgConfig__9b2CYq6hCo8aU6ikssKccag {
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg trackPos;
NIM_BOOL trackPosAttached;
tySet_tyEnum_TErrorOutput__9ctbjKnMCtYsSPmUdTwRvag errorOutputs;
tySequence__npXKLeClRo4ZDs6rPxQ9bRA msgContext;
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg lastError;
tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA filenameToIndexTbl;
tySequence__o8paxaScVM7VHajE9a8rbyw fileInfos;
NI32 systemFileIdx;
};
typedef NU8 tyEnum_FilenameOption__hVFMNPLaxRz7xWOSR9cMItQ;
typedef NU8 tyEnum_Command__b145RBTl7bacomLHdBguHg;
typedef NU8 tyEnum_TGCMode__yL7PTPtUQsYlPsanXzkjrg;
typedef NU8 tyEnum_ExceptionSystem__ZMRdhT0e8tpR7rr8gLMDuQ;
typedef NU8 tyEnum_SymbolFilesOption__9b9bfTFCONAgeN19bdppgkkHQ;
struct tySequence__4eRCaZmrYLLw2k30GPTiMw {
NI len; tySequence__4eRCaZmrYLLw2k30GPTiMw_Content* p;
};
struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg {
tySequence__4eRCaZmrYLLw2k30GPTiMw data;
NI counter;
};
typedef NU32 tySet_tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA;
typedef NU8 tySet_tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g;
typedef NU8 tyEnum_IdeCmd__qiJleSvN9cnmxSLkFbpwy9bg;
typedef NU8 tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g;
typedef NU8 tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw[12];
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
NI len; tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content* p;
};
struct tyTuple__47w2DboNEPf69aPgubZdd7Q {
NI Field0;
NI Field1;
NI Field2;
};
typedef NU8 tySet_tyEnum_StdOrrKind__C4nP6ZSJZRe8Um4ny9bnbwA;
struct tySequence__SE64IkxZVzsW0aLsNjnJHg {
NI len; tySequence__SE64IkxZVzsW0aLsNjnJHg_Content* p;
};
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_SuggestcolonObjectType___fw9a9cWgWYzM4zKmnq3DGNfQ* result, void* ClE_0);
void* ClE_0;
} tyProc__UwsGaXGCDEc7Akhwij5HRA;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (NimStringV2 output, void* ClE_0);
void* ClE_0;
} tyProc__k2HFjxisIgDALbEUFojxaQ;
typedef NU8 tyEnum_Severity__R4Rvu3XsQ2ynPKxZt1L82g;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* config, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info, NimStringV2 msg, tyEnum_Severity__R4Rvu3XsQ2ynPKxZt1L82g severity, void* ClE_0);
void* ClE_0;
} tyProc__9a8L4QvXftisHTVzCsMCKUA;
struct tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg {
tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w backend;
tyObject_Target__XQWVo9aPbyuL9b6bNh22dfIg target;
NI linesCompiled;
tySet_tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg options;
tySet_tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw globalOptions;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* macrosToExpand;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* arcToExpand;
tyObject_MsgConfig__9b2CYq6hCo8aU6ikssKccag m;
tyEnum_FilenameOption__hVFMNPLaxRz7xWOSR9cMItQ filenameOption;
NimStringV2 unitSep;
NI evalTemplateCounter;
NI evalMacroCounter;
NI8 exitcode;
tyEnum_Command__b145RBTl7bacomLHdBguHg cmd;
NimStringV2 cmdInput;
NIM_BOOL projectIsCmd;
NIM_BOOL implicitCmd;
tyEnum_TGCMode__yL7PTPtUQsYlPsanXzkjrg selectedGC;
tyEnum_ExceptionSystem__ZMRdhT0e8tpR7rr8gLMDuQ exc;
NIM_BOOL hintProcessingDots;
NI verbosity;
NI numberOfProcessors;
NF lastCmdTime;
tyEnum_SymbolFilesOption__9b9bfTFCONAgeN19bdppgkkHQ symbolFiles;
NI spellSuggestMax;
tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg cppDefines;
NimStringV2 headerFile;
tySet_tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA features;
tySet_tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g legacyFeatures;
NimStringV2 arguments;
tyEnum_IdeCmd__qiJleSvN9cnmxSLkFbpwy9bg ideCmd;
NIM_BOOL oldNewlines;
tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g cCompiler;
tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw modifiedyNotes;
tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw cmdlineNotes;
tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw foreignPackageNotes;
tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw notes;
tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw warningAsErrors;
tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw mainPackageNotes;
NI mainPackageId;
NI errorCounter;
NI hintCounter;
NI warnCounter;
NI errorMax;
NI maxLoopIterationsVM;
NIM_BOOL isVmTrace;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* configVars;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* symbols;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* packageCache;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ nimblePaths;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ searchPaths;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ lazyPaths;
NimStringV2 outFile;
NimStringV2 outDir;
NimStringV2 jsonBuildFile;
NimStringV2 prefixDir;
NimStringV2 libpath;
NimStringV2 nimcacheDir;
tyTuple__47w2DboNEPf69aPgubZdd7Q nimStdlibVersion;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* dllOverrides;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* moduleOverrides;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* cfileSpecificOptions;
NimStringV2 projectName;
NimStringV2 projectPath;
NimStringV2 projectFull;
NIM_BOOL projectIsStdin;
tySet_tyEnum_StdOrrKind__C4nP6ZSJZRe8Um4ny9bnbwA lastMsgWasDot;
NI32 projectMainIdx;
NI32 projectMainIdx2;
NimStringV2 command;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ commandArgs;
NimStringV2 commandLine;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ extraCmds;
NIM_BOOL keepComments;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ implicitImports;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ implicitIncludes;
NimStringV2 docSeeSrcUrl;
NimStringV2 docRoot;
NimStringV2 docCmd;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ configFiles;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ cIncludes;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ cLibs;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ cLinkedLibs;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ externalToLink;
NimStringV2 linkOptionsCmd;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ compileOptionsCmd;
NimStringV2 linkOptions;
NimStringV2 compileOptions;
NimStringV2 cCompilerPath;
tySequence__SE64IkxZVzsW0aLsNjnJHg toCompile;
tyProc__UwsGaXGCDEc7Akhwij5HRA suggestionResultHook;
NI suggestVersion;
NI suggestMaxResults;
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg lastLineInfo;
tyProc__k2HFjxisIgDALbEUFojxaQ writelnHook;
tyProc__9a8L4QvXftisHTVzCsMCKUA structuredErrorHook;
NimStringV2 cppCustomNamespace;
NimStringV2 nimMainPrefix;
tyObject_ProfileDatacolonObjectType___0tIytioPEQIg9axPcCaYjTQ* vmProfileData;
};
typedef NU8 tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw;
typedef NU8 tyEnum_FileMode__4sJyy9aOSN8X63XdWXl5iDg;
struct TNimTypeV2 {
void* destructor;
NI size;
NI16 align;
NI16 depth;
NU32* display;
void* traceImpl;
void* typeInfoV1;
NI flags;
};
struct RootObj {
TNimTypeV2* m_type;
};
typedef NU8 tySet_tyEnum_ProcessOption__bnU6W8LhTMnT4JaSWtGlSA;
struct tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg {
RootObj Sup;
int inHandle;
int outHandle;
int errHandle;
pid_t id;
tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* inStream;
tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* outStream;
tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* errStream;
int exitStatus;
NIM_BOOL exitFlag;
tySet_tyEnum_ProcessOption__bnU6W8LhTMnT4JaSWtGlSA options;
};
typedef NimStringV2 tyArray__8ZvwQIddfpj2THRVPsFzIQ[1];
typedef N_NIMCALL_PTR(void, tyProc__JQrsH08b4uPTH9cyFPlVOZg) (tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* s);
typedef N_NIMCALL_PTR(NIM_BOOL, tyProc__9bmhFrLahRsL2hltfRDVtlQ) (tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* s);
typedef N_NIMCALL_PTR(void, tyProc__3svSoGIUJIsHkaBL7q4DAQ) (tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* s, NI pos);
typedef N_NIMCALL_PTR(NI, tyProc__xflqkf2D1uVClg70czEDHA) (tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* s);
typedef N_NIMCALL_PTR(NI, tyProc__c9c0f59ak4YGQ6neEym8LPKw) (tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* s, NimStringV2* buffer, tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA slice);
typedef N_NIMCALL_PTR(NIM_BOOL, tyProc__7jFfqMk9ajToCz6Hv9atCA4A) (tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* s, NimStringV2* line);
typedef N_NIMCALL_PTR(NI, tyProc__2VVzVL9bOnKhj1eZKkf9cEuA) (tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* s, void* buffer, NI bufLen);
typedef N_NIMCALL_PTR(void, tyProc__ki6p1QyfOkJLQJ9aw5NI0AQ) (tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* s, void* buffer, NI bufLen);
struct tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ {
RootObj Sup;
tyProc__JQrsH08b4uPTH9cyFPlVOZg closeImpl;
tyProc__9bmhFrLahRsL2hltfRDVtlQ atEndImpl;
tyProc__3svSoGIUJIsHkaBL7q4DAQ setPositionImpl;
tyProc__xflqkf2D1uVClg70czEDHA getPositionImpl;
tyProc__c9c0f59ak4YGQ6neEym8LPKw readDataStrImpl;
tyProc__7jFfqMk9ajToCz6Hv9atCA4A readLineImpl;
tyProc__2VVzVL9bOnKhj1eZKkf9cEuA readDataImpl;
tyProc__2VVzVL9bOnKhj1eZKkf9cEuA peekDataImpl;
tyProc__ki6p1QyfOkJLQJ9aw5NI0AQ writeDataImpl;
tyProc__JQrsH08b4uPTH9cyFPlVOZg flushImpl;
};
struct tySequence__uB9b75OUPRENsBAu4AnoePA {
NI len; tySequence__uB9b75OUPRENsBAu4AnoePA_Content* p;
};
struct Exception {
RootObj Sup;
Exception* parent;
NCSTRING name;
NimStringV2 message;
tySequence__uB9b75OUPRENsBAu4AnoePA trace;
Exception* up;
};
struct tyTuple__3N9c2HK9cpi9cfEKxHnvsLXkg {
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg Field0;
NimStringV2 Field1;
};
#ifndef tySequence__npXKLeClRo4ZDs6rPxQ9bRA_Content_PP
#define tySequence__npXKLeClRo4ZDs6rPxQ9bRA_Content_PP
struct tySequence__npXKLeClRo4ZDs6rPxQ9bRA_Content { NI cap; tyTuple__3N9c2HK9cpi9cfEKxHnvsLXkg data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
NI Field0;
NimStringV2 Field1;
NI32 Field2;
};
#ifndef tySequence__7lEisrXlQEzwtUKW5pzRCw_Content_PP
#define tySequence__7lEisrXlQEzwtUKW5pzRCw_Content_PP
struct tySequence__7lEisrXlQEzwtUKW5pzRCw_Content { NI cap; tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE];};
#endif
struct tyObject_TFileInfo__2aBuGcbJEvokyJmg1PN0eg {
NimStringV2 fullPath;
NimStringV2 projPath;
NimStringV2 shortName;
NimStringV2 quotedName;
NimStringV2 quotedFullName;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ lines;
NimStringV2 dirtyFile;
NimStringV2 hash;
NIM_BOOL dirty;
};
#ifndef tySequence__o8paxaScVM7VHajE9a8rbyw_Content_PP
#define tySequence__o8paxaScVM7VHajE9a8rbyw_Content_PP
struct tySequence__o8paxaScVM7VHajE9a8rbyw_Content { NI cap; tyObject_TFileInfo__2aBuGcbJEvokyJmg1PN0eg data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw {
NI Field0;
NimStringV2 Field1;
};
#ifndef tySequence__4eRCaZmrYLLw2k30GPTiMw_Content_PP
#define tySequence__4eRCaZmrYLLw2k30GPTiMw_Content_PP
struct tySequence__4eRCaZmrYLLw2k30GPTiMw_Content { NI cap; tyTuple__QeWl6B6ffS4pU6WWrtcrDw data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
typedef NU8 tySet_tyEnum_CfileFlag__quKxtOiNkuU9aFwgmRK07Og;
struct tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ {
NimStringV2 nimname;
NimStringV2 cname;
NimStringV2 obj;
tySet_tyEnum_CfileFlag__quKxtOiNkuU9aFwgmRK07Og flags;
NimStringV2 customArgs;
};
#ifndef tySequence__SE64IkxZVzsW0aLsNjnJHg_Content_PP
#define tySequence__SE64IkxZVzsW0aLsNjnJHg_Content_PP
struct tySequence__SE64IkxZVzsW0aLsNjnJHg_Content { NI cap; tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ data[SEQ_DECL_SIZE];};
#endif
struct tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA {
NI a;
NI b;
};
struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA {
NCSTRING procname;
NI line;
NCSTRING filename;
};
#ifndef tySequence__uB9b75OUPRENsBAu4AnoePA_Content_PP
#define tySequence__uB9b75OUPRENsBAu4AnoePA_Content_PP
struct tySequence__uB9b75OUPRENsBAu4AnoePA_Content { NI cap; tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
static N_INLINE(void, nimZeroMem)(void* p, NI size);
static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nosparentDir)(NimStringV2 path);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, toFullPath__msgs_589)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NI32 fileIdx);
N_LIB_PRIVATE N_NIMCALL(void, secureHash__stdZsha49_844)(NIM_CHAR* str, NI strLen_0, tyArray__YtcvxHNKV4YiecPE9ap1mcA Result);
static N_INLINE(void, appendString)(NimStringV2* dest, NimStringV2 src);
static N_INLINE(void, copyMem__system_1719)(void* dest, void* source, NI size);
static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, rawNewString)(NI space);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, toGeneratedFile__options_5122)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 path, NimStringV2 ext);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___stdZsha49_892)(tyArray__YtcvxHNKV4YiecPE9ap1mcA self);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, open__stdZsyncio_405)(FILE** f, NimStringV2 filename, tyEnum_FileMode__4sJyy9aOSN8X63XdWXl5iDg mode, NI bufSize);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, readAll__stdZsyncio_363)(FILE* file);
N_LIB_PRIVATE N_NIMCALL(void, close__stdZsyncio_243)(FILE* f);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___stdZassertions_13)(NimStringV2* dest);
N_LIB_PRIVATE N_NIMCALL(tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg*, nospstartProcess)(NimStringV2 command, NimStringV2 workingDir, NimStringV2* args, NI argsLen_0, tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* env, tySet_tyEnum_ProcessOption__bnU6W8LhTMnT4JaSWtGlSA options);
N_LIB_PRIVATE N_NIMCALL(void, write__pureZstreams_184)(tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* s, NimStringV2 x);
N_LIB_PRIVATE N_NIMCALL(tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ*, nospinputStream)(tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg* p);
N_LIB_PRIVATE N_NIMCALL(void, close__pureZstreams_58)(tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* s);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZstreams_613)(tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ** dest);
N_LIB_PRIVATE N_NIMCALL(tyTuple__XOVT24GHXwqiEj5GCsEGCA, readOutput__gorgeimpl_10)(tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg* p);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___stdZassertions_19)(NimStringV2* dest, NimStringV2 src);
N_LIB_PRIVATE N_NIMCALL(tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ*, nospoutputStream)(tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg* p);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, atEnd__pureZstreams_67)(tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* s);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, readLine__pureZstreams_558)(tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* s);
N_LIB_PRIVATE N_NIMCALL(void, prepareAdd)(NimStringV2* s, NI addlen);
N_LIB_PRIVATE N_NIMCALL(void, setLengthStrV2)(NimStringV2* s, NI newLen);
N_LIB_PRIVATE N_NIMCALL(NI, nospwaitForExit)(tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg* p, NI timeout);
N_LIB_PRIVATE N_NIMCALL(void, nospclose)(tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg* p);
N_LIB_PRIVATE N_NIMCALL(void, writeFile__stdZsyncio_484)(NimStringV2 filename, NimStringV2 content);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZosproc_203)(tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg** dest);
static N_INLINE(NIM_BOOL, isObjDisplayCheck)(TNimTypeV2* source, NI16 targetDepth, NU32 token);
static N_INLINE(Exception*, nimBorrowCurrentException)(void);
static N_INLINE(NimStringV2, getCurrentExceptionMsg__system_6878)(void);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___stdZassertions_16)(NimStringV2* dest, NimStringV2 src);
static N_INLINE(void, popCurrentException)(void);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___stdZassertions_33)(Exception** dest, Exception* src, NIM_BOOL cyclic);
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__A04lj5tT6ly3Jo7R9ckk5iw_2 = { 1 | NIM_STRLIT_FLAG, "\011" };
static const NimStringV2 TM__A04lj5tT6ly3Jo7R9ckk5iw_3 = {1, (NimStrPayload*)&TM__A04lj5tT6ly3Jo7R9ckk5iw_2};
static const NimStringV2 TM__A04lj5tT6ly3Jo7R9ckk5iw_4 = {1, (NimStrPayload*)&TM__A04lj5tT6ly3Jo7R9ckk5iw_2};
static const struct {
NI cap; NIM_CHAR data[6+1];
} TM__A04lj5tT6ly3Jo7R9ckk5iw_5 = { 6 | NIM_STRLIT_FLAG, "gorge_" };
static const NimStringV2 TM__A04lj5tT6ly3Jo7R9ckk5iw_6 = {6, (NimStrPayload*)&TM__A04lj5tT6ly3Jo7R9ckk5iw_5};
static const struct {
NI cap; NIM_CHAR data[3+1];
} TM__A04lj5tT6ly3Jo7R9ckk5iw_7 = { 3 | NIM_STRLIT_FLAG, "txt" };
static const NimStringV2 TM__A04lj5tT6ly3Jo7R9ckk5iw_8 = {3, (NimStrPayload*)&TM__A04lj5tT6ly3Jo7R9ckk5iw_7};
static const struct {
NI cap; NIM_CHAR data[0+1];
} TM__A04lj5tT6ly3Jo7R9ckk5iw_9 = { 0 | NIM_STRLIT_FLAG, "" };
static const NimStringV2 TM__A04lj5tT6ly3Jo7R9ckk5iw_10 = {0, (NimStrPayload*)&TM__A04lj5tT6ly3Jo7R9ckk5iw_9};
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__A04lj5tT6ly3Jo7R9ckk5iw_11 = { 1 | NIM_STRLIT_FLAG, "\012" };
static const NimStringV2 TM__A04lj5tT6ly3Jo7R9ckk5iw_12 = {1, (NimStrPayload*)&TM__A04lj5tT6ly3Jo7R9ckk5iw_11};
static const struct {
NI cap; NIM_CHAR data[28+1];
} TM__A04lj5tT6ly3Jo7R9ckk5iw_13 = { 28 | NIM_STRLIT_FLAG, "Error running startProcess: " };
static const NimStringV2 TM__A04lj5tT6ly3Jo7R9ckk5iw_14 = {28, (NimStrPayload*)&TM__A04lj5tT6ly3Jo7R9ckk5iw_13};
static const NimStringV2 TM__A04lj5tT6ly3Jo7R9ckk5iw_15 = {0, (NimStrPayload*)&TM__A04lj5tT6ly3Jo7R9ckk5iw_9};
static const NimStringV2 TM__A04lj5tT6ly3Jo7R9ckk5iw_16 = {28, (NimStrPayload*)&TM__A04lj5tT6ly3Jo7R9ckk5iw_13};
extern NIM_BOOL nimInErrorMode__system_4003;
extern Exception* currException__system_3677;
extern Exception* currException__system_3677;
extern Exception* currException__system_3677;
extern Exception* currException__system_3677;
extern Exception* currException__system_3677;
static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size) {
void* T1_;
T1_ = (void*)0;
T1_ = memset(a, v, ((size_t) (size)));
}
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) {
NIM_BOOL* result;
result = (NIM_BOOL*)0;
result = (&nimInErrorMode__system_4003);
return result;
}
static N_INLINE(void, nimZeroMem)(void* p, NI size) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimSetMem__systemZmemory_7(p, ((int)0), size);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) {
void* T1_;
T1_ = (void*)0;
T1_ = memcpy(dest, source, ((size_t) (size)));
}
static N_INLINE(void, copyMem__system_1719)(void* dest, void* source, NI size) {
nimCopyMem(dest, source, size);
}
static N_INLINE(void, appendString)(NimStringV2* dest, NimStringV2 src) {
{
if (!(((NI)0) < src.len)) goto LA3_;
copyMem__system_1719(((void*) ((&(*(*dest).p).data[(*dest).len]))), ((void*) ((&(*src.p).data[((NI)0)]))), ((NI) ((NI)(src.len + ((NI)1)))));
(*dest).len += src.len;
}
LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyTuple__XOVT24GHXwqiEj5GCsEGCA, readOutput__gorgeimpl_10)(tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg* p) {
tyTuple__XOVT24GHXwqiEj5GCsEGCA result;
tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* output;
NI T12_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimZeroMem((void*)(&result), sizeof(tyTuple__XOVT24GHXwqiEj5GCsEGCA));
output = NIM_NIL;
eqsink___stdZassertions_19((&result.Field0), TM__A04lj5tT6ly3Jo7R9ckk5iw_10);
output = nospoutputStream(p);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
while (1) {
NIM_BOOL T4_;
NimStringV2 colontmpD_;
T4_ = (NIM_BOOL)0;
T4_ = atEnd__pureZstreams_67(output);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!!(T4_)) goto LA3 ;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD_ = readLine__pureZstreams_558(output);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
prepareAdd((&result.Field0), colontmpD_.len + 0);
appendString((&result.Field0), colontmpD_);
prepareAdd((&result.Field0), 1);
appendString((&result.Field0), TM__A04lj5tT6ly3Jo7R9ckk5iw_12);
{
LA5_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
} LA3: ;
}
{
if (!(((NI)0) < result.Field0.len)) goto LA10_;
setLengthStrV2((&result.Field0), ((NI) ((NI)(result.Field0.len - ((NI)1)))));
}
LA10_: ;
T12_ = (NI)0;
T12_ = nospwaitForExit(p, ((NI)-1));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
result.Field1 = T12_;
{
LA1_:;
}
{
eqdestroy___pureZstreams_613(&output);
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
static N_INLINE(NIM_BOOL, isObjDisplayCheck)(TNimTypeV2* source, NI16 targetDepth, NU32 token) {
NIM_BOOL result;
NIM_BOOL T1_;
result = (NIM_BOOL)0;
T1_ = (NIM_BOOL)0;
T1_ = (targetDepth <= (*source).depth);
if (!(T1_)) goto LA2_;
T1_ = ((*source).display[targetDepth] == token);
LA2_: ;
result = T1_;
return result;
}
static N_INLINE(Exception*, nimBorrowCurrentException)(void) {
Exception* result;
result = NIM_NIL;
result = currException__system_3677;
return result;
}
static N_INLINE(NimStringV2, getCurrentExceptionMsg__system_6878)(void) {
NimStringV2 result;
NimStringV2 T1_;
{ result.len = 0; result.p = NIM_NIL;
T1_.len = 0; T1_.p = NIM_NIL;
{
if (!(currException__system_3677 == ((Exception*) NIM_NIL))) goto LA4_;
result = TM__A04lj5tT6ly3Jo7R9ckk5iw_15;
}
goto LA2_;
LA4_: ;
{
eqcopy___stdZassertions_16((&result), (*currException__system_3677).message);
}
LA2_: ;
goto BeforeRet_;
}BeforeRet_: ;
return result;
}
static N_INLINE(void, popCurrentException)(void) {
eqcopy___stdZassertions_33(&currException__system_3677, (*currException__system_3677).up, NIM_FALSE);
}
N_LIB_PRIVATE N_NIMCALL(tyTuple__XOVT24GHXwqiEj5GCsEGCA, opGorge__gorgeimpl_14)(NimStringV2 cmd, NimStringV2 input, NimStringV2 cache, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf) {
tyTuple__XOVT24GHXwqiEj5GCsEGCA result;
NimStringV2 workingDir;
NimStringV2 colontmpD_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimZeroMem((void*)(&result), sizeof(tyTuple__XOVT24GHXwqiEj5GCsEGCA));
workingDir.len = 0; workingDir.p = NIM_NIL;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD_ = toFullPath__msgs_589(conf, info.fileIndex);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
workingDir = nosparentDir(colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NimStringV2 colontmpD__2;
NimStringV2 filename;
NimStringV2 colontmpD__3;
NimStringV2 colontmpD__4;
tyArray__YtcvxHNKV4YiecPE9ap1mcA h;
NimStringV2 T7_;
NimStringV2 T8_;
FILE* f;
NIM_BOOL readSuccessful;
tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg* p;
tyArray__8ZvwQIddfpj2THRVPsFzIQ T20_;
tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg* T21_;
tyTuple__XOVT24GHXwqiEj5GCsEGCA T31_;
if (!(((NI)0) < cache.len)) goto LA4_;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
filename.len = 0; filename.p = NIM_NIL;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
nimZeroMem((void*)h, sizeof(tyArray__YtcvxHNKV4YiecPE9ap1mcA));
T7_.len = 0; T7_.p = NIM_NIL;
T7_ = rawNewString(cmd.len + input.len + cache.len + 2);
appendString((&T7_), cmd);
appendString((&T7_), TM__A04lj5tT6ly3Jo7R9ckk5iw_3);
appendString((&T7_), input);
appendString((&T7_), TM__A04lj5tT6ly3Jo7R9ckk5iw_4);
appendString((&T7_), cache);
colontmpD__2 = T7_;
secureHash__stdZsha49_844(((colontmpD__2).p) ? (colontmpD__2.p->data) : NIM_NIL, colontmpD__2.len, h);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
T8_.len = 0; T8_.p = NIM_NIL;
colontmpD__3 = dollar___stdZsha49_892(h);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
T8_ = rawNewString(colontmpD__3.len + 6);
appendString((&T8_), TM__A04lj5tT6ly3Jo7R9ckk5iw_6);
appendString((&T8_), colontmpD__3);
colontmpD__4 = T8_;
filename = toGeneratedFile__options_5122(conf, colontmpD__4, TM__A04lj5tT6ly3Jo7R9ckk5iw_8);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
f = (FILE*)0;
{
NIM_BOOL T11_;
NimStringV2 colontmp_;
NI colontmp__2;
NimStringV2 blitTmp;
T11_ = (NIM_BOOL)0;
T11_ = !((((*conf).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)1)))&63U)))!=0));
if (!(T11_)) goto LA12_;
T11_ = open__stdZsyncio_405(&f, filename, ((tyEnum_FileMode__4sJyy9aOSN8X63XdWXl5iDg)0), ((NI)-1));
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
LA12_: ;
if (!T11_) goto LA13_;
colontmp_.len = 0; colontmp_.p = NIM_NIL;
colontmp_ = readAll__stdZsyncio_363(f);
if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
colontmp__2 = ((NI)0);
blitTmp = colontmp_;
colontmp_.len = 0; colontmp_.p = NIM_NIL;
result.Field0 = blitTmp;
result.Field1 = colontmp__2;
close__stdZsyncio_243(f);
if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
eqdestroy___stdZassertions_13((&colontmp_));
eqdestroy___stdZassertions_13((&colontmpD__4));
eqdestroy___stdZassertions_13((&colontmpD__3));
eqdestroy___stdZassertions_13((&filename));
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___stdZassertions_13((&colontmpD_));
eqdestroy___stdZassertions_13((&workingDir));
goto BeforeRet_;
{
LA15_:;
}
{
eqdestroy___stdZassertions_13((&colontmp_));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
}
LA13_: ;
readSuccessful = NIM_FALSE;
p = NIM_NIL;
T21_ = NIM_NIL;
T21_ = nospstartProcess(cmd, workingDir, T20_, 0, ((tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg*) NIM_NIL), 12);
if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
p = T21_;
{
tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* colontmpD__5;
tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* colontmpD__6;
tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* T27_;
tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* T28_;
if (!!((input.len == ((NI)0)))) goto LA24_;
colontmpD__5 = NIM_NIL;
colontmpD__6 = NIM_NIL;
T27_ = NIM_NIL;
T27_ = nospinputStream(p);
if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
colontmpD__5 = T27_;
write__pureZstreams_184(colontmpD__5, input);
if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
T28_ = NIM_NIL;
T28_ = nospinputStream(p);
if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
colontmpD__6 = T28_;
close__pureZstreams_58(colontmpD__6);
if (NIM_UNLIKELY(*nimErr_)) goto LA26_;
{
LA26_:;
}
{
eqdestroy___pureZstreams_613(&colontmpD__6);
eqdestroy___pureZstreams_613(&colontmpD__5);
}
if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
}
LA24_: ;
nimZeroMem((void*)(&T31_), sizeof(tyTuple__XOVT24GHXwqiEj5GCsEGCA));
T31_ = readOutput__gorgeimpl_10(p);
if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
result = T31_;
nospclose(p);
if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
readSuccessful = NIM_TRUE;
{
if (!(result.Field1 == ((NI)0))) goto LA34_;
writeFile__stdZsyncio_484(filename, result.Field0);
if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
}
LA34_: ;
{
LA19_:;
}
{
eqdestroy___pureZosproc_203(&p);
}
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
if (NIM_UNLIKELY(*nimErr_)) {
LA18_:;
if (isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 3, 1335990016)||isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 3, 3829286656)) {
*nimErr_ = NIM_FALSE;
{
NimStringV2 colontmp__3;
NimStringV2 colontmpD__7;
NimStringV2 T45_;
NI colontmp__4;
NimStringV2 blitTmp_2;
if (!!(readSuccessful)) goto LA43_;
colontmp__3.len = 0; colontmp__3.p = NIM_NIL;
colontmpD__7.len = 0; colontmpD__7.p = NIM_NIL;
T45_.len = 0; T45_.p = NIM_NIL;
colontmpD__7 = getCurrentExceptionMsg__system_6878();
T45_ = rawNewString(colontmpD__7.len + 28);
appendString((&T45_), TM__A04lj5tT6ly3Jo7R9ckk5iw_14);
appendString((&T45_), colontmpD__7);
colontmp__3 = T45_;
colontmp__4 = ((NI)-1);
blitTmp_2 = colontmp__3;
result.Field0 = blitTmp_2;
result.Field1 = colontmp__4;
eqdestroy___stdZassertions_13((&colontmpD__7));
}
LA43_: ;
popCurrentException();
LA39_:;
}
}
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
{
LA6_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__4));
eqdestroy___stdZassertions_13((&colontmpD__3));
eqdestroy___stdZassertions_13((&filename));
eqdestroy___stdZassertions_13((&colontmpD__2));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
goto LA2_;
LA4_: ;
{
tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg* p_2;
tyArray__8ZvwQIddfpj2THRVPsFzIQ T51_;
tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg* T52_;
tyTuple__XOVT24GHXwqiEj5GCsEGCA T62_;
p_2 = NIM_NIL;
T52_ = NIM_NIL;
T52_ = nospstartProcess(cmd, workingDir, T51_, 0, ((tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg*) NIM_NIL), 12);
if (NIM_UNLIKELY(*nimErr_)) goto LA50_;
p_2 = T52_;
{
tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* colontmpD__8;
tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* colontmpD__9;
tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* T58_;
tyObject_StreamObj__THYguAi9bSgidczZ3ywEIMQ* T59_;
if (!!((input.len == ((NI)0)))) goto LA55_;
colontmpD__8 = NIM_NIL;
colontmpD__9 = NIM_NIL;
T58_ = NIM_NIL;
T58_ = nospinputStream(p_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA57_;
colontmpD__8 = T58_;
write__pureZstreams_184(colontmpD__8, input);
if (NIM_UNLIKELY(*nimErr_)) goto LA57_;
T59_ = NIM_NIL;
T59_ = nospinputStream(p_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA57_;
colontmpD__9 = T59_;
close__pureZstreams_58(colontmpD__9);
if (NIM_UNLIKELY(*nimErr_)) goto LA57_;
{
LA57_:;
}
{
eqdestroy___pureZstreams_613(&colontmpD__9);
eqdestroy___pureZstreams_613(&colontmpD__8);
}
if (NIM_UNLIKELY(*nimErr_)) goto LA50_;
}
LA55_: ;
nimZeroMem((void*)(&T62_), sizeof(tyTuple__XOVT24GHXwqiEj5GCsEGCA));
T62_ = readOutput__gorgeimpl_10(p_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA50_;
result = T62_;
nospclose(p_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA50_;
{
LA50_:;
}
{
eqdestroy___pureZosproc_203(&p_2);
}
if (NIM_UNLIKELY(*nimErr_)) goto LA49_;
if (NIM_UNLIKELY(*nimErr_)) {
LA49_:;
if (isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 3, 1335990016)||isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 3, 3829286656)) {
NimStringV2 colontmp__5;
NimStringV2 colontmpD__10;
NimStringV2 T68_;
NI colontmp__6;
NimStringV2 blitTmp_3;
*nimErr_ = NIM_FALSE;
colontmp__5.len = 0; colontmp__5.p = NIM_NIL;
colontmpD__10.len = 0; colontmpD__10.p = NIM_NIL;
T68_.len = 0; T68_.p = NIM_NIL;
colontmpD__10 = getCurrentExceptionMsg__system_6878();
T68_ = rawNewString(colontmpD__10.len + 28);
appendString((&T68_), TM__A04lj5tT6ly3Jo7R9ckk5iw_16);
appendString((&T68_), colontmpD__10);
colontmp__5 = T68_;
colontmp__6 = ((NI)-1);
blitTmp_3 = colontmp__5;
result.Field0 = blitTmp_3;
result.Field1 = colontmp__6;
eqdestroy___stdZassertions_13((&colontmpD__10));
popCurrentException();
LA66_:;
}
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA2_: ;
{
LA1_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD_));
eqdestroy___stdZassertions_13((&workingDir));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}