9491 lines
329 KiB
C
9491 lines
329 KiB
C
/* Generated by Nim Compiler v1.9.0 */
|
|
#define NIM_INTBITS 32
|
|
|
|
#include "nimbase.h"
|
|
#include <string.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 tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA;
|
|
typedef struct NimStrPayload NimStrPayload;
|
|
typedef struct NimStringV2 NimStringV2;
|
|
typedef struct tyObject_TLLStream__f9cpUXDA3VY8pIlUfIovHaw tyObject_TLLStream__f9cpUXDA3VY8pIlUfIovHaw;
|
|
typedef struct tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ;
|
|
typedef struct tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg;
|
|
typedef struct tyObject_Token__kYhYXOlGtXyCuQli9biTdZA tyObject_Token__kYhYXOlGtXyCuQli9biTdZA;
|
|
typedef struct tyObject_Lexer__UvQf9aXrtW2JG4IMwuSv9cXA tyObject_Lexer__UvQf9aXrtW2JG4IMwuSv9cXA;
|
|
typedef struct tyObject_TBaseLexer__mLz9bnmJDkH9bqmvnqNS49apw tyObject_TBaseLexer__mLz9bnmJDkH9bqmvnqNS49apw;
|
|
typedef struct RootObj RootObj;
|
|
typedef struct TNimTypeV2 TNimTypeV2;
|
|
typedef struct tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg;
|
|
typedef struct tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA;
|
|
typedef struct tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q;
|
|
typedef struct tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA;
|
|
typedef struct tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA;
|
|
typedef struct tySequence__xxu3GgaFAGO6lOns9aHaeLQ tySequence__xxu3GgaFAGO6lOns9aHaeLQ;
|
|
typedef struct tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content;
|
|
typedef struct tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A;
|
|
struct NimStrPayload {
|
|
NI cap;
|
|
NIM_CHAR data[SEQ_DECL_SIZE];
|
|
};
|
|
struct NimStringV2 {
|
|
NI len;
|
|
NimStrPayload* p;
|
|
};
|
|
struct TNimTypeV2 {
|
|
void* destructor;
|
|
NI size;
|
|
NI16 align;
|
|
NI16 depth;
|
|
NU32* display;
|
|
void* traceImpl;
|
|
void* typeInfoV1;
|
|
NI flags;
|
|
};
|
|
struct RootObj {
|
|
TNimTypeV2* m_type;
|
|
};
|
|
struct tyObject_TBaseLexer__mLz9bnmJDkH9bqmvnqNS49apw {
|
|
RootObj Sup;
|
|
NI bufpos;
|
|
NCSTRING buf;
|
|
NimStringV2 bufStorage;
|
|
NI bufLen;
|
|
tyObject_TLLStream__f9cpUXDA3VY8pIlUfIovHaw* stream;
|
|
NI lineNumber;
|
|
NI sentinel;
|
|
NI lineStart;
|
|
NI offsetBase;
|
|
};
|
|
typedef NU8 tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA;
|
|
typedef struct {
|
|
N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info, tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA msg, NimStringV2 arg, void* ClE_0);
|
|
void* ClE_0;
|
|
} tyProc__ARwI3dj1dFJlCkFrlsuq2A;
|
|
struct tyObject_Lexer__UvQf9aXrtW2JG4IMwuSv9cXA {
|
|
tyObject_TBaseLexer__mLz9bnmJDkH9bqmvnqNS49apw Sup;
|
|
NI32 fileIdx;
|
|
NI indentAhead;
|
|
NI currLineIndent;
|
|
NIM_BOOL strongSpaces;
|
|
NIM_BOOL allowTabs;
|
|
tyProc__ARwI3dj1dFJlCkFrlsuq2A errorHandler;
|
|
tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ* cache;
|
|
tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* config;
|
|
};
|
|
typedef NU8 tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ;
|
|
typedef NU8 tyEnum_NumericalBase__AbSe5ri9aXAVP9cA1JY4Ahdw;
|
|
typedef NU8 tyEnum_TokenSpacing__perxzrRsffkZSokgB16rRw;
|
|
struct tyObject_Token__kYhYXOlGtXyCuQli9biTdZA {
|
|
tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ tokType;
|
|
NI indent;
|
|
tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* ident;
|
|
NI64 iNumber;
|
|
NF fNumber;
|
|
tyEnum_NumericalBase__AbSe5ri9aXAVP9cA1JY4Ahdw base;
|
|
NIM_BOOL strongSpaceA;
|
|
tyEnum_TokenSpacing__perxzrRsffkZSokgB16rRw strongSpaceB;
|
|
NimStringV2 literal;
|
|
NI line;
|
|
NI col;
|
|
};
|
|
struct tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA {
|
|
NI currInd;
|
|
NIM_BOOL firstTok;
|
|
NIM_BOOL hasProgress;
|
|
tyObject_Lexer__UvQf9aXrtW2JG4IMwuSv9cXA lex;
|
|
tyObject_Token__kYhYXOlGtXyCuQli9biTdZA tok;
|
|
NI lineStartPrevious;
|
|
NI lineNumberPrevious;
|
|
NI bufposPrevious;
|
|
NI inPragma;
|
|
NI inSemiStmtList;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* emptyNode;
|
|
};
|
|
typedef NU8 tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ;
|
|
struct tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg {
|
|
NU16 line;
|
|
NI16 col;
|
|
NI32 fileIndex;
|
|
};
|
|
typedef NU32 tySet_tyEnum_TNodeFlag__69c8WThOUT3nlaj2cOZ9c2dw;
|
|
struct tySequence__xxu3GgaFAGO6lOns9aHaeLQ {
|
|
NI len; tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content* p;
|
|
};
|
|
struct tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q {
|
|
tyObject_TType__qs8ld9cHTjcxh7xYsvWduXA* typ;
|
|
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info;
|
|
tySet_tyEnum_TNodeFlag__69c8WThOUT3nlaj2cOZ9c2dw flags;
|
|
tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind;
|
|
union{
|
|
struct {NI64 intVal;
|
|
} _kind_1;
|
|
struct {NF floatVal;
|
|
} _kind_2;
|
|
struct {NimStringV2 strVal;
|
|
} _kind_3;
|
|
struct {tyObject_TSym__9cob5UPXvLCxy8mslvxEYzA* sym;
|
|
} _kind_4;
|
|
struct {tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* ident;
|
|
} _kind_5;
|
|
struct {tySequence__xxu3GgaFAGO6lOns9aHaeLQ sons;
|
|
} _kind_6;
|
|
};
|
|
};
|
|
typedef NU8 tyEnum_SymbolMode__MITZcP1QsFlXqKTZFVDgdQ;
|
|
struct tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA {
|
|
NI id;
|
|
NimStringV2 s;
|
|
tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* next;
|
|
NI h;
|
|
};
|
|
typedef NU8 tySet_tyEnum_DeclaredIdentFlag__HSPwuC2cA03GCInmy9c3ngw;
|
|
typedef NU8 tyEnum_DeclaredIdentFlag__HSPwuC2cA03GCInmy9c3ngw;
|
|
typedef NU8 tyEnum_TNodeKind__ibNAumaBpWjeer4yEB9aB2w;
|
|
typedef NU8 tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA;
|
|
typedef NU8 tySet_tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ[15];
|
|
typedef NU8 tyEnum_TNodeFlag__69c8WThOUT3nlaj2cOZ9c2dw;
|
|
typedef tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* tyArray__ITlg8UhAbnS7vsiPAhcspQ[1];
|
|
typedef NimStringV2 tyArray__nHXaesL0DJZHyVS07ARPRA[1];
|
|
typedef N_NIMCALL_PTR(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, tyProc__ksIJfeCPYsGjESaAKPnWWQ) (tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
struct tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A {
|
|
NI rc;
|
|
NI rootIdx;
|
|
};
|
|
typedef NU8 tyEnum_TLLStreamKind__9cSQ7roMMT510UcuCxRX05w;
|
|
typedef struct {
|
|
N_NIMCALL_PTR(NI, ClP_0) (tyObject_TLLStream__f9cpUXDA3VY8pIlUfIovHaw* s, void* buf, NI bufLen, void* ClE_0);
|
|
void* ClE_0;
|
|
} tyProc__oi9b0z9awBBnvGw9arizvgdNw;
|
|
typedef struct {
|
|
N_NIMCALL_PTR(void, ClP_0) (void* ClE_0);
|
|
void* ClE_0;
|
|
} tyProc__HzVCwACFYM9cx9aV62PdjtuA;
|
|
struct tyObject_TLLStream__f9cpUXDA3VY8pIlUfIovHaw {
|
|
RootObj Sup;
|
|
tyEnum_TLLStreamKind__9cSQ7roMMT510UcuCxRX05w kind;
|
|
FILE* f;
|
|
NimStringV2 s;
|
|
NI rd;
|
|
NI wr;
|
|
NI lineOffset;
|
|
tyProc__oi9b0z9awBBnvGw9arizvgdNw repl;
|
|
tyProc__HzVCwACFYM9cx9aV62PdjtuA onPrompt;
|
|
};
|
|
|
|
|
|
#ifndef tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content_PP
|
|
#define tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content_PP
|
|
struct tySequence__xxu3GgaFAGO6lOns9aHaeLQ_Content { NI cap; tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* data[SEQ_DECL_SIZE];};
|
|
#endif
|
|
|
|
N_LIB_PRIVATE N_NIMCALL(void, openParser__parser_126)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, NI32 fileIdx, tyObject_TLLStream__f9cpUXDA3VY8pIlUfIovHaw* inputStream, tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ* cache, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* config);
|
|
N_LIB_PRIVATE N_NIMCALL(void, initToken__lexer_261)(tyObject_Token__kYhYXOlGtXyCuQli9biTdZA* L);
|
|
N_LIB_PRIVATE N_NIMCALL(void, openLexer__lexer_289)(tyObject_Lexer__UvQf9aXrtW2JG4IMwuSv9cXA* lex, NI32 fileIdx, tyObject_TLLStream__f9cpUXDA3VY8pIlUfIovHaw* inputstream, tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ* cache, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* config);
|
|
N_LIB_PRIVATE N_NIMCALL(void, getTok__parser_46)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(void, rawGetTok__lexer_1806)(tyObject_Lexer__UvQf9aXrtW2JG4IMwuSv9cXA* L, tyObject_Token__kYhYXOlGtXyCuQli9biTdZA* tok);
|
|
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
|
|
N_LIB_PRIVATE N_NIMCALL(void, eqsink___ast_3460)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q** dest, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* src);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newNode__ast_3934)(tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind);
|
|
N_LIB_PRIVATE N_NIMCALL(NI32, fileInfoIdx__msgs_403)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 filename);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newNodeP__parser_55)(tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind, tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newNodeI__ast_3949)(tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg, parLineInfo__parser_77)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
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(tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg, getLineInfo__lexer_203)(tyObject_Lexer__UvQf9aXrtW2JG4IMwuSv9cXA* L, tyObject_Token__kYhYXOlGtXyCuQli9biTdZA* tok);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg, newLineInfo__msgs_408)(NI32 fileInfoIdx, NI line, NI col);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, complexOrSimpleStmt__parser_630)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseIfOrWhen__parser_1637)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind);
|
|
N_LIB_PRIVATE N_NIMCALL(void, optInd__parser_86)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
|
|
N_LIB_PRIVATE N_NIMCALL(void, skipComment__parser_52)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* node);
|
|
N_LIB_PRIVATE N_NIMCALL(void, rawSkipComment__parser_166)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* node);
|
|
N_LIB_PRIVATE N_NIMCALL(NimStringV2, comment__ast_1148)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
|
|
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(void, prepareAdd)(NimStringV2* s, NI addlen);
|
|
N_LIB_PRIVATE N_NIMCALL(void, commenteq___ast_1512)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, NimStringV2 a);
|
|
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___stdZassertions_13)(NimStringV2* dest);
|
|
N_LIB_PRIVATE N_NIMCALL(void, parMessage__parser_48)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA msg, NimStringV2 arg);
|
|
N_LIB_PRIVATE N_NIMCALL(void, lexMessageTok__lexer_394)(tyObject_Lexer__UvQf9aXrtW2JG4IMwuSv9cXA* L, tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA msg, tyObject_Token__kYhYXOlGtXyCuQli9biTdZA* tok, NimStringV2 arg);
|
|
N_LIB_PRIVATE N_NIMCALL(void, skipInd__parser_82)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(void, parMessage__parser_148)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, NimStringV2 arg);
|
|
N_LIB_PRIVATE N_NIMCALL(void, add__ast_6233)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* father, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* son);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseExpr__parser_257)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseBlock__parser_113)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(void, getTokNoInd__parser_197)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseSymbol__parser_96)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_SymbolMode__MITZcP1QsFlXqKTZFVDgdQ mode);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newIdentNodeP__parser_70)(tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* ident, tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___idents_136)(tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA** dest, tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* src);
|
|
N_LIB_PRIVATE N_NIMCALL(void, parMessage__parser_144)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, NimStringV2 msg, tyObject_Token__kYhYXOlGtXyCuQli9biTdZA* tok);
|
|
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuFormatSingleElem)(NimStringV2 formatstr, NimStringV2 a);
|
|
N_LIB_PRIVATE N_NIMCALL(NimStringV2, prettyTok__lexer_252)(tyObject_Token__kYhYXOlGtXyCuQli9biTdZA* tok);
|
|
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___ast_3457)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q** dest, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* src);
|
|
static N_INLINE(NI, len__ast_3325)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
|
|
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___lexer_243)(tyObject_Token__kYhYXOlGtXyCuQli9biTdZA* tok);
|
|
N_LIB_PRIVATE N_NIMCALL(void, eqsink___idents_139)(tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA** dest, tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* src);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA*, getIdent__idents_166)(tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ* ic, NimStringV2 identifier);
|
|
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_3454)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q** dest);
|
|
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___idents_133)(tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA** dest);
|
|
N_LIB_PRIVATE N_NIMCALL(void, eat__parser_79)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ tokType);
|
|
N_LIB_PRIVATE N_NIMCALL(void, lexMessage__lexer_390)(tyObject_Lexer__UvQf9aXrtW2JG4IMwuSv9cXA* L, tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA msg, NimStringV2 arg);
|
|
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___lexer_142)(tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ e);
|
|
N_LIB_PRIVATE N_NIMCALL(NimStringV2, rawNewString)(NI space);
|
|
N_LIB_PRIVATE N_NIMCALL(void, colcom__parser_311)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseStmt__parser_259)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, simpleStmt__parser_2446)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseReturnOrRaise__parser_1616)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind);
|
|
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isExprStart__parser_1196)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, postExprBlocks__parser_108)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* x);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseParamList__parser_266)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, NIM_BOOL retColon);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseIdentColonEquals__parser_1012)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tySet_tyEnum_DeclaredIdentFlag__HSPwuC2cA03GCInmy9c3ngw flags);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, identWithPragma__parser_987)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, NIM_BOOL allowDot);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, identVis__parser_966)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, NIM_BOOL allowDot);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, dotExpr__parser_486)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a);
|
|
N_LIB_PRIVATE N_NIMCALL(void, exprList__parser_402)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ endTok, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result);
|
|
N_LIB_PRIVATE N_NIMCALL(void, exprColonEqExprListAux__parser_449)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ endTok, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result);
|
|
N_LIB_PRIVATE N_NIMCALL(void, flexComment__parser_184)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* node);
|
|
N_LIB_PRIVATE N_NIMCALL(void, optPar__parser_84)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, exprColonEqExpr__parser_386)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, colonOrEquals__parser_370)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, equals__parser_354)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a);
|
|
N_LIB_PRIVATE N_NIMCALL(void, transitionSonsKind__ast_5759)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyEnum_TNodeKind__ibNAumaBpWjeer4yEB9aB2w kind);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parsePragma__parser_106)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseTypeDesc__parser_261)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, NIM_BOOL fullExpr);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, simpleExpr__parser_632)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA mode);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, simpleExprAux__parser_118)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, NI limit, tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA mode);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, primary__parser_115)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA mode);
|
|
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isOperator__parser_44)(tyObject_Token__kYhYXOlGtXyCuQli9biTdZA* tok);
|
|
static N_INLINE(NIM_BOOL, isSigilLike__parser_269)(tyObject_Token__kYhYXOlGtXyCuQli9biTdZA* tok);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, identOrLiteral__parser_766)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA mode);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseGStrLit__parser_610)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newStrNodeP__parser_66)(tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind, NimStringV2 strVal, tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___stdZassertions_16)(NimStringV2* dest, NimStringV2 src);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newIntNodeP__parser_58)(tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind, NI64 intVal, tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(void, setBaseFlags__parser_93)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyEnum_NumericalBase__AbSe5ri9aXAVP9cA1JY4Ahdw base);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newFloatNodeP__parser_62)(tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind, NF floatVal, tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(NimStringV2, substr__system_7548)(NimStringV2 s, NI first, NI last);
|
|
N_LIB_PRIVATE N_NIMCALL(NimStringV2, substr__system_7560)(NimStringV2 s, NI first);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, exprColonEqExprList__parser_481)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind, tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ endTok);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parsePar__parser_679)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(void, semiStmtList__parser_638)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseIfOrWhenExpr__parser_635)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseStmtPragma__parser_104)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, setOrTableConstr__parser_548)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseCast__parser_572)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, primarySuffix__parser_839)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* r, NI baseIndent, tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA mode);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, commandExpr__parser_814)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* r, tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA mode);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, commandParam__parser_800)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, NIM_BOOL* isFirstParam, tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA mode);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, exprEqExpr__parser_394)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, namedParams__parser_789)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* callee, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind, tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ endTok);
|
|
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isDotLike__parser_832)(tyObject_Token__kYhYXOlGtXyCuQli9biTdZA* tok);
|
|
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isDefined__options_2481)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 symbol);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, dotLikeExpr__parser_523)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a);
|
|
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isUnary__parser_283)(tyObject_Token__kYhYXOlGtXyCuQli9biTdZA* tok);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseProcExpr__parser_1163)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, NIM_BOOL isExpr, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, optPragmas__parser_1134)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newProcNode__ast_4889)(tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* body, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* params, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* name, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* pattern, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* genericParams, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* pragmas, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* exceptions);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseOperators__parser_862)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* headNode, NI limit, tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA mode);
|
|
N_LIB_PRIVATE N_NIMCALL(NI, getPrecedence__lexer_1562)(tyObject_Token__kYhYXOlGtXyCuQli9biTdZA* tok);
|
|
static N_INLINE(void, checkBinary__parser_294)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
static N_INLINE(NIM_BOOL, isRightAssociative__parser_276)(tyObject_Token__kYhYXOlGtXyCuQli9biTdZA* tok);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseTuple__parser_1070)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, NIM_BOOL indentAllowed);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseTypeDescKAux__parser_1215)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind, tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA mode);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseTypeDefValue__parser_264)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseEnum__parser_1302)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseObject__parser_1304)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseObjectPart__parser_2099)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseObjectWhen__parser_2101)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseObjectCase__parser_2134)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseTypeClass__parser_1306)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseTypeClassParam__parser_2211)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
static N_INLINE(NIM_BOOL, validInd__parser_163)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
static N_INLINE(NIM_BOOL, isNewStyleConcept__ast_6679)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, binaryNot__parser_1354)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a);
|
|
static N_INLINE(NIM_BOOL, eqStrings)(NimStringV2 a, NimStringV2 b);
|
|
static N_INLINE(NIM_BOOL, equalMem__system_1727)(void* a, void* b, NI size);
|
|
static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size);
|
|
N_LIB_PRIVATE N_NIMCALL(void, parseSymbolList__parser_1199)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, makeCall__parser_1400)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseDoBlock__parser_1141)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info);
|
|
N_LIB_PRIVATE N_NIMCALL(void, optionalExprList__parser_428)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ endTok, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseImport__parser_1546)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseModuleName__parser_1542)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseFromStmt__parser_1596)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseIncludeStmt__parser_1580)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newCommentStmt__parser_2004)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseExprStmt__parser_111)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newTreeI__ast_4003)(tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q** children, NI childrenLen_0);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseFor__parser_1257)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseVarTuple__parser_1255)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseCase__parser_102)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseTry__parser_99)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, NIM_BOOL isExpr);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseWhile__parser_1705)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseExceptBlock__parser_1768)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseStaticOrDefer__parser_1795)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ k);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseAsm__parser_1803)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseRoutine__parser_1906)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parsePattern__parser_1903)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseGenericParamList__parser_1887)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseGenericParam__parser_1834)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(void, expectIdent__parser_75)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(void, indAndComment__parser_89)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, NIM_BOOL maybeMissEquals);
|
|
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuFormatOpenArray)(NimStringV2 formatstr, NimStringV2* a, NI aLen_0);
|
|
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___msgs_675)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseSection__parser_2007)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind, tyProc__ksIJfeCPYsGjESaAKPnWWQ defparser);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseTypeDef__parser_2296)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseConstant__parser_2380)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseVariable__parser_2359)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseBind__parser_2417)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ k);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, qualifiedIdent__parser_541)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(void, closeLexer__lexer_366)(tyObject_Lexer__UvQf9aXrtW2JG4IMwuSv9cXA* lex);
|
|
static N_INLINE(NIM_BOOL, nimDecRefIsLastCyclicDyn)(void* p);
|
|
static N_INLINE(NI, minuspercent___system_790)(NI x, NI y);
|
|
N_LIB_PRIVATE N_NOINLINE(void, rememberCycle__system_3167)(NIM_BOOL isDestroyAction, tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A* s, TNimTypeV2* desc);
|
|
N_LIB_PRIVATE N_NIMCALL(void, nimDestroyAndDispose)(void* p);
|
|
static N_INLINE(NIM_BOOL, nimDecRefIsLastCyclicStatic)(void* p, TNimTypeV2* desc);
|
|
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___idents_224)(tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ* dest);
|
|
N_LIB_PRIVATE N_NIMCALL(void, nimRawDispose)(void* p, NI alignment);
|
|
static N_INLINE(NIM_BOOL, nimDecRefIsLast)(void* p);
|
|
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___options_3149)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* dest);
|
|
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___idents_145)(tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* dest);
|
|
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___ast_3466)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* dest);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TLLStream__f9cpUXDA3VY8pIlUfIovHaw*, llStreamOpen__llstream_31)(NimStringV2 data);
|
|
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___parser_2612)(tyProc__ARwI3dj1dFJlCkFrlsuq2A* dest, tyProc__ARwI3dj1dFJlCkFrlsuq2A src, NIM_BOOL cyclic);
|
|
N_LIB_PRIVATE N_NIMCALL(void, openParser__parser_132)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, NimStringV2 filename, tyObject_TLLStream__f9cpUXDA3VY8pIlUfIovHaw* inputStream, tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ* cache, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* config);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseAll__parser_38)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(void, closeParser__parser_40)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p);
|
|
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___parser_2563)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* dest);
|
|
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___llstream_68)(tyObject_TLLStream__f9cpUXDA3VY8pIlUfIovHaw** dest);
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[11+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_2 = { 11 | NIM_STRLIT_FLAG, "skipComment" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_3 = {11, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_2};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[19+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_4 = { 19 | NIM_STRLIT_FLAG, "invalid indentation" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_5 = {19, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_4};
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_6 = {19, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_4};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[33+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_7 = { 33 | NIM_STRLIT_FLAG, "identifier expected, but got \'$1\'" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_8 = {33, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_7};
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_9 = {33, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_7};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[0+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_10 = { 0 | NIM_STRLIT_FLAG, "" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_11 = {0, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_10};
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_12 = {33, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_7};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[11+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_13 = { 11 | NIM_STRLIT_FLAG, "expected: \'" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_14 = {11, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_13};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[13+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_15 = { 13 | NIM_STRLIT_FLAG, "\', but got: \'" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_16 = {13, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_15};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[1+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_17 = { 1 | NIM_STRLIT_FLAG, "\'" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_18 = {1, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_17};
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_19 = {33, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_7};
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_20 = {19, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_4};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[35+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_21 = { 35 | NIM_STRLIT_FLAG, "expression expected, but found \'$1\'" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_22 = {35, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_21};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[39+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_23 = { 39 | NIM_STRLIT_FLAG, "nestable statement requires indentation" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_24 = {39, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_23};
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_25 = {19, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_4};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[13+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_26 = { 13 | NIM_STRLIT_FLAG, "expected \'.}\'" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_27 = {13, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_26};
|
|
static NIM_CONST tySet_tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ TM__FlWBYIOz13qHfz9ae813gBA_28 = {
|
|
0x30, 0x00, 0x08, 0x20, 0x32, 0x68, 0x03, 0x03,
|
|
0x08, 0x00, 0x00, 0x00, 0x00, 0x50, 0x00}
|
|
;
|
|
static NIM_CONST tySet_tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ TM__FlWBYIOz13qHfz9ae813gBA_29 = {
|
|
0x0c, 0x08, 0x00, 0x00, 0x00, 0x10, 0x04, 0x44,
|
|
0xe0, 0xff, 0xff, 0x57, 0x00, 0x00, 0x01}
|
|
;
|
|
static NIM_CONST tySet_tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ TM__FlWBYIOz13qHfz9ae813gBA_30 = {
|
|
0x00, 0x25, 0x03, 0x9a, 0x84, 0x04, 0x00, 0x10,
|
|
0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
|
|
;
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_31 = {19, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_4};
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_32 = {35, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_21};
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_33 = {35, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_21};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[20+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_34 = { 20 | NIM_STRLIT_FLAG, "nimPreviewDotLikeOps" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_35 = {20, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_34};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[76+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_36 = { 76 | NIM_STRLIT_FLAG, "dot-like operators will be parsed differently with `-d:nimPreviewDotLikeOps`" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_37 = {76, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_36};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[95+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_38 = { 95 | NIM_STRLIT_FLAG, "func keyword is not allowed in type descriptions, use proc with {.noSideEffect.} pragma instead" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_39 = {95, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_38};
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_40 = {33, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_7};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[60+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_41 = { 60 | NIM_STRLIT_FLAG, "the syntax for tuple types is \'tuple[...]\', not \'tuple(...)\'" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_42 = {60, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_41};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[54+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_43 = { 54 | NIM_STRLIT_FLAG, "the \'concept\' keyword is only valid in \'type\' sections" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_44 = {54, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_43};
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_45 = {33, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_7};
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_46 = {33, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_7};
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_47 = {33, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_7};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[76+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_48 = { 76 | NIM_STRLIT_FLAG, "routine expected, but found \'$1\' (empty new-styled concepts are not allowed)" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_49 = {76, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_48};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[4+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_50 = { 4 | NIM_STRLIT_FLAG, "with" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_51 = {4, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_50};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[7+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_52 = { 7 | NIM_STRLIT_FLAG, "without" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_53 = {7, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_52};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[33+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_54 = { 33 | NIM_STRLIT_FLAG, "\':\' or \'=\' expected, but got \'$1\'" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_55 = {33, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_54};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[56+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_56 = { 56 | NIM_STRLIT_FLAG, "the syntax is \'parameter: var T\', not \'var parameter: T\'" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_57 = {56, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_56};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[20+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_58 = { 20 | NIM_STRLIT_FLAG, "expected closing \')\'" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_59 = {20, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_58};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[2+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_60 = { 2 | NIM_STRLIT_FLAG, "->" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_61 = {2, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_60};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[12+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_62 = { 12 | NIM_STRLIT_FLAG, "expected \':\'" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_63 = {12, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_62};
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_64 = {35, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_21};
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_65 = {19, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_4};
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_66 = {35, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_21};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[17+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_67 = { 17 | NIM_STRLIT_FLAG, "expected \'except\'" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_68 = {17, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_67};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[42+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_69 = { 42 | NIM_STRLIT_FLAG, "the \'asm\' statement takes a string literal" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_70 = {42, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_69};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[2+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_71 = { 2 | NIM_STRLIT_FLAG, "in" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_72 = {2, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_71};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[3+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_73 = { 3 | NIM_STRLIT_FLAG, "out" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_74 = {3, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_73};
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_75 = {33, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_7};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[51+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_76 = { 51 | NIM_STRLIT_FLAG, "invalid indentation, maybe you forgot a \'=\' at $1 \?" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_77 = {51, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_76};
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_78 = {19, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_4};
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_79 = {0, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_10};
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_80 = {33, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_7};
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_81 = {33, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_7};
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_82 = {33, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_7};
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_83 = {35, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_21};
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_84 = {19, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_4};
|
|
extern TNimTypeV2 NTIv2__4yiDOEx3Y9aOTV1fsziBtCQ_;
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_85 = {19, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_4};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[1+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_86 = { 1 | NIM_STRLIT_FLAG, "*" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_87 = {1, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_86};
|
|
static const struct {
|
|
NI cap; NIM_CHAR data[73+1];
|
|
} TM__FlWBYIOz13qHfz9ae813gBA_88 = { 73 | NIM_STRLIT_FLAG, "invalid indentation; an export marker \'*\' follows the declared identifier" };
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_89 = {73, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_88};
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_90 = {19, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_4};
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_91 = {19, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_4};
|
|
static const NimStringV2 TM__FlWBYIOz13qHfz9ae813gBA_92 = {35, (NimStrPayload*)&TM__FlWBYIOz13qHfz9ae813gBA_21};
|
|
extern TNimTypeV2 NTIv2__UvQf9aXrtW2JG4IMwuSv9cXA_;
|
|
static NIM_CONST tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA TM__FlWBYIOz13qHfz9ae813gBA_93 = {0, NIM_FALSE, NIM_FALSE, {{{(&NTIv2__UvQf9aXrtW2JG4IMwuSv9cXA_)}, 0, NIM_NIL, {0, NIM_NIL}, 0, NIM_NIL, 0, 0, 0, 0}, 0, 0, 0, NIM_FALSE, NIM_FALSE, {NIM_NIL, NIM_NIL}, NIM_NIL, NIM_NIL}, {0, 0, NIM_NIL, 0, 0.0, 0, NIM_FALSE, 0, {0, NIM_NIL}, 0, 0}, 0, 0, 0, 0, 0, NIM_NIL}
|
|
;
|
|
extern NIM_BOOL nimInErrorMode__system_4004;
|
|
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) {
|
|
NIM_BOOL* result;
|
|
result = (NIM_BOOL*)0;
|
|
result = (&nimInErrorMode__system_4004);
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, getTok__parser_46)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
(*p).lineNumberPrevious = (*p).lex.Sup.lineNumber;
|
|
(*p).lineStartPrevious = (*p).lex.Sup.lineStart;
|
|
(*p).bufposPrevious = (*p).lex.Sup.bufpos;
|
|
rawGetTok__lexer_1806((&(*p).lex), (&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
(*p).hasProgress = NIM_TRUE;
|
|
}BeforeRet_: ;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, openParser__parser_126)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, NI32 fileIdx, tyObject_TLLStream__f9cpUXDA3VY8pIlUfIovHaw* inputStream, tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ* cache, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* config) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
initToken__lexer_261((&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
openLexer__lexer_289((&(*p).lex), fileIdx, inputStream, cache, config);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
(*p).firstTok = NIM_TRUE;
|
|
T1_ = NIM_NIL;
|
|
T1_ = newNode__ast_3934(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqsink___ast_3460(&(*p).emptyNode, T1_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, openParser__parser_132)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, NimStringV2 filename, tyObject_TLLStream__f9cpUXDA3VY8pIlUfIovHaw* inputStream, tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ* cache, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* config) {
|
|
NI32 T1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
T1_ = (NI32)0;
|
|
T1_ = fileInfoIdx__msgs_403(config, filename);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
openParser__parser_126(p, T1_, inputStream, cache, config);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
}
|
|
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(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(tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg, getLineInfo__lexer_203)(tyObject_Lexer__UvQf9aXrtW2JG4IMwuSv9cXA* L, tyObject_Token__kYhYXOlGtXyCuQli9biTdZA* tok) {
|
|
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg result;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
nimZeroMem((void*)(&result), sizeof(tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg));
|
|
result = newLineInfo__msgs_408((*L).fileIdx, (*tok).line, (*tok).col);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg, parLineInfo__parser_77)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg result;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
nimZeroMem((void*)(&result), sizeof(tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg));
|
|
result = getLineInfo__lexer_203((&(*p).lex), (&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newNodeP__parser_55)(tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind, tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg T1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
T1_ = parLineInfo__parser_77(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
result = newNodeI__ast_3949(kind, T1_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
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(void, parMessage__parser_48)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA msg, NimStringV2 arg) {
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
lexMessageTok__lexer_394((&(*p).lex), msg, (&(*p).tok), arg);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, rawSkipComment__parser_166)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* node) {
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)111))) goto LA3_;
|
|
{
|
|
NimStringV2 rhs;
|
|
NimStringV2 colontmpD_;
|
|
if (!!((node == ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL)))) goto LA7_;
|
|
rhs.len = 0; rhs.p = NIM_NIL;
|
|
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
|
|
rhs = comment__ast_1148(node);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
|
|
prepareAdd((&rhs), (*p).tok.literal.len + 0);
|
|
appendString((&rhs), (*p).tok.literal);
|
|
colontmpD_ = rhs;
|
|
rhs.len = 0; rhs.p = NIM_NIL;
|
|
commenteq___ast_1512(node, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
|
|
{
|
|
LA9_:;
|
|
}
|
|
{
|
|
eqdestroy___stdZassertions_13((&colontmpD_));
|
|
eqdestroy___stdZassertions_13((&rhs));
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA5_;
|
|
LA7_: ;
|
|
{
|
|
parMessage__parser_48((&(*p)), ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)2), TM__FlWBYIOz13qHfz9ae813gBA_3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA5_: ;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA3_: ;
|
|
}BeforeRet_: ;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, skipComment__parser_52)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* node) {
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
{
|
|
if (!((*p).tok.indent < ((NI)0))) goto LA3_;
|
|
rawSkipComment__parser_166(p, node);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA3_: ;
|
|
}BeforeRet_: ;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, parMessage__parser_148)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, NimStringV2 arg) {
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
lexMessageTok__lexer_394((&(*p).lex), ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), (&(*p).tok), arg);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, skipInd__parser_82)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
{
|
|
if (!(((NI)0) <= (*p).tok.indent)) goto LA3_;
|
|
{
|
|
if (!!(((*p).currInd < (*p).tok.indent))) goto LA7_;
|
|
parMessage__parser_148((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_5);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA7_: ;
|
|
}
|
|
LA3_: ;
|
|
}BeforeRet_: ;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, optInd__parser_86)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
skipComment__parser_52(p, n);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
skipInd__parser_82(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, getTokNoInd__parser_197)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
if (!(((NI)0) <= (*p).tok.indent)) goto LA3_;
|
|
parMessage__parser_148((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_6);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA3_: ;
|
|
}BeforeRet_: ;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newIdentNodeP__parser_70)(tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* ident, tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)2), p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqcopy___idents_136(&(*result)._kind_5.ident, ident);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, parMessage__parser_144)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, NimStringV2 msg, tyObject_Token__kYhYXOlGtXyCuQli9biTdZA* tok) {
|
|
NimStringV2 colontmpD_;
|
|
NimStringV2 T2_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
|
|
T2_.len = 0; T2_.p = NIM_NIL;
|
|
T2_ = prettyTok__lexer_252(tok);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
colontmpD_ = nsuFormatSingleElem(msg, T2_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
parMessage__parser_48(p, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
eqdestroy___stdZassertions_13((&colontmpD_));
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
}
|
|
static N_INLINE(NI, len__ast_3325)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
|
|
NI result;
|
|
NI T1_;
|
|
result = (NI)0;
|
|
T1_ = (*n)._kind_6.sons.len;
|
|
result = T1_;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, eat__parser_79)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ tokType) {
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
{
|
|
if (!((*p).tok.tokType == tokType)) goto LA3_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA1_;
|
|
LA3_: ;
|
|
{
|
|
NimStringV2 colontmpD_;
|
|
NimStringV2 colontmpD__2;
|
|
NimStringV2 colontmpD__3;
|
|
NimStringV2 T7_;
|
|
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
|
|
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
|
|
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
|
|
T7_.len = 0; T7_.p = NIM_NIL;
|
|
colontmpD_ = dollar___lexer_142(tokType);
|
|
colontmpD__2 = prettyTok__lexer_252((&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
T7_ = rawNewString(colontmpD_.len + colontmpD__2.len + 25);
|
|
appendString((&T7_), TM__FlWBYIOz13qHfz9ae813gBA_14);
|
|
appendString((&T7_), colontmpD_);
|
|
appendString((&T7_), TM__FlWBYIOz13qHfz9ae813gBA_16);
|
|
appendString((&T7_), colontmpD__2);
|
|
appendString((&T7_), TM__FlWBYIOz13qHfz9ae813gBA_18);
|
|
colontmpD__3 = T7_;
|
|
lexMessage__lexer_390((&(*p).lex), ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
{
|
|
LA6_:;
|
|
}
|
|
{
|
|
eqdestroy___stdZassertions_13((&colontmpD__3));
|
|
eqdestroy___stdZassertions_13((&colontmpD__2));
|
|
eqdestroy___stdZassertions_13((&colontmpD_));
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA1_: ;
|
|
}BeforeRet_: ;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseSymbol__parser_96)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_SymbolMode__MITZcP1QsFlXqKTZFVDgdQ mode) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin25_;
|
|
NIM_BOOL oldNimErrFin35_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)2):
|
|
{
|
|
result = newIdentNodeP__parser_70((*p).tok.ident, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)3) ... ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)68):
|
|
{
|
|
{
|
|
NIM_BOOL T5_;
|
|
T5_ = (NIM_BOOL)0;
|
|
T5_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)62) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)58) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)3));
|
|
if (T5_) goto LA6_;
|
|
T5_ = (mode == ((tyEnum_SymbolMode__MITZcP1QsFlXqKTZFVDgdQ)2));
|
|
LA6_: ;
|
|
if (!T5_) goto LA7_;
|
|
result = newIdentNodeP__parser_70((*p).tok.ident, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA3_;
|
|
LA7_: ;
|
|
{
|
|
NIM_BOOL T10_;
|
|
T10_ = (NIM_BOOL)0;
|
|
T10_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)44));
|
|
if (!(T10_)) goto LA11_;
|
|
T10_ = (mode == ((tyEnum_SymbolMode__MITZcP1QsFlXqKTZFVDgdQ)1));
|
|
LA11_: ;
|
|
if (!T10_) goto LA12_;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)23), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA3_;
|
|
LA12_: ;
|
|
{
|
|
parMessage__parser_144((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_8, (&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqcopy___ast_3457(&result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA3_: ;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)112):
|
|
{
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)53), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
while (1) {
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)112):
|
|
{
|
|
{
|
|
NI T21_;
|
|
T21_ = (NI)0;
|
|
T21_ = len__ast_3325(result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
if (!(T21_ == ((NI)0))) goto LA22_;
|
|
parMessage__parser_144((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_9, (&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA22_: ;
|
|
goto LA16;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)110):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)107):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)108):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)106):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)90) ... ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)101):
|
|
{
|
|
NimStringV2 accm;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* node;
|
|
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg lineinfo;
|
|
tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* T31_;
|
|
accm.len = 0; accm.p = NIM_NIL;
|
|
node = NIM_NIL;
|
|
lineinfo = parLineInfo__parser_77((&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
|
|
accm = TM__FlWBYIOz13qHfz9ae813gBA_11;
|
|
{
|
|
while (1) {
|
|
NimStringV2 colontmpD_;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)110) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)107) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)108) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)106) || (*p).tok.tokType >= ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)90) && (*p).tok.tokType <= ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)101))) goto LA27 ;
|
|
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
|
|
colontmpD_ = dollar___lexer_243((&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA28_;
|
|
prepareAdd((&accm), colontmpD_.len + 0);
|
|
appendString((&accm), colontmpD_);
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA28_;
|
|
{
|
|
LA28_:;
|
|
}
|
|
{
|
|
eqdestroy___stdZassertions_13((&colontmpD_));
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
|
|
} LA27: ;
|
|
}
|
|
node = newNodeI__ast_3949(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)2), lineinfo);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
|
|
T31_ = NIM_NIL;
|
|
T31_ = getIdent__idents_166((*p).lex.cache, accm);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
|
|
eqsink___idents_139(&(*node)._kind_5.ident, T31_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
|
|
add__ast_6233(result, node);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
|
|
{
|
|
LA25_:;
|
|
}
|
|
{
|
|
oldNimErrFin25_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&node);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___stdZassertions_13((&accm));
|
|
*nimErr_ = oldNimErrFin25_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)3) ... ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)68):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)2):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)69) ... ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)89):
|
|
{
|
|
NimStringV2 colontmpD__2;
|
|
tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* colontmpD__3;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__4;
|
|
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
|
|
colontmpD__3 = NIM_NIL;
|
|
colontmpD__4 = NIM_NIL;
|
|
colontmpD__2 = dollar___lexer_243((&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA35_;
|
|
colontmpD__3 = getIdent__idents_166((*p).lex.cache, colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA35_;
|
|
colontmpD__4 = newIdentNodeP__parser_70(colontmpD__3, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA35_;
|
|
add__ast_6233(result, colontmpD__4);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA35_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA35_;
|
|
{
|
|
LA35_:;
|
|
}
|
|
{
|
|
oldNimErrFin35_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__4);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___idents_133(&colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___stdZassertions_13((&colontmpD__2));
|
|
*nimErr_ = oldNimErrFin35_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
parMessage__parser_144((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_12, (&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA16;
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
} LA16: ;
|
|
eat__parser_79(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)112));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
parMessage__parser_144((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_19, (&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqcopy___ast_3457(&result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
}
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, colcom__parser_311)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
eat__parser_79(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)104));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
skipComment__parser_52(p, n);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isExprStart__parser_1196)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
NIM_BOOL result;
|
|
result = (NIM_BOOL)0;
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)2):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)112):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)110):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)45):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)44):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)11):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)31):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)28):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)51):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)30):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)38):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)7):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)3):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)90):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)92):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)94):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)69) ... ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)89):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)64):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)54):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)52):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)24):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)61):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)47):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)65):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)10):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)50):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)60):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)8):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)58):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)62):
|
|
{
|
|
result = NIM_TRUE;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
result = NIM_FALSE;
|
|
}
|
|
break;
|
|
}
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, exprList__parser_402)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ endTok, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
NIM_BOOL oldNimErrFin6_;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
a = NIM_NIL;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
a = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
while (1) {
|
|
NIM_BOOL T4_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a_2;
|
|
T4_ = (NIM_BOOL)0;
|
|
T4_ = !(((*p).tok.tokType == endTok));
|
|
if (!(T4_)) goto LA5_;
|
|
T4_ = !(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)1)));
|
|
LA5_: ;
|
|
if (!T4_) goto LA3 ;
|
|
a_2 = NIM_NIL;
|
|
{
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)102)))) goto LA9_;
|
|
eqdestroy___ast_3454(&a_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
goto LA2;
|
|
}
|
|
LA9_: ;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
optInd__parser_86(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
a_2 = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
add__ast_6233(result, a_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
{
|
|
LA6_:;
|
|
}
|
|
{
|
|
oldNimErrFin6_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin6_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
} LA3: ;
|
|
} LA2: ;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, flexComment__parser_184)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* node) {
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
{
|
|
NIM_BOOL T3_;
|
|
T3_ = (NIM_BOOL)0;
|
|
T3_ = ((*p).tok.indent < ((NI)0));
|
|
if (T3_) goto LA4_;
|
|
T3_ = ((*p).currInd < (*p).tok.indent);
|
|
LA4_: ;
|
|
if (!T3_) goto LA5_;
|
|
rawSkipComment__parser_166(p, node);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA5_: ;
|
|
}BeforeRet_: ;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, optPar__parser_84)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
{
|
|
if (!(((NI)0) <= (*p).tok.indent)) goto LA3_;
|
|
{
|
|
if (!((*p).tok.indent < (*p).currInd)) goto LA7_;
|
|
parMessage__parser_148((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_25);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA7_: ;
|
|
}
|
|
LA3_: ;
|
|
}BeforeRet_: ;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, equals__parser_354)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin5_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)106))) goto LA3_;
|
|
colontmpD_ = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)33), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
colontmpD_ = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
{
|
|
LA5_:;
|
|
}
|
|
{
|
|
oldNimErrFin5_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin5_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA1_;
|
|
LA3_: ;
|
|
{
|
|
eqcopy___ast_3457(&result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA1_: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, colonOrEquals__parser_370)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin5_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)104))) goto LA3_;
|
|
colontmpD_ = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)34), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
colontmpD_ = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
{
|
|
LA5_:;
|
|
}
|
|
{
|
|
oldNimErrFin5_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin5_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA1_;
|
|
LA3_: ;
|
|
{
|
|
result = equals__parser_354(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA1_: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, exprColonEqExpr__parser_386)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
a = NIM_NIL;
|
|
a = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)20))) goto LA4_;
|
|
result = postExprBlocks__parser_108(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
goto LA2_;
|
|
LA4_: ;
|
|
{
|
|
result = colonOrEquals__parser_370(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA2_: ;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, exprColonEqExprListAux__parser_449)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ endTok, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result) {
|
|
NIM_BOOL oldNimErrFin5_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
flexComment__parser_184(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
optPar__parser_84(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
while (1) {
|
|
NIM_BOOL T3_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
T3_ = (NIM_BOOL)0;
|
|
T3_ = !(((*p).tok.tokType == endTok));
|
|
if (!(T3_)) goto LA4_;
|
|
T3_ = !(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)1)));
|
|
LA4_: ;
|
|
if (!T3_) goto LA2 ;
|
|
a = NIM_NIL;
|
|
a = exprColonEqExpr__parser_386(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
{
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)102)))) goto LA8_;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA1;
|
|
}
|
|
goto LA6_;
|
|
LA8_: ;
|
|
{
|
|
if (!((*result).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)37))) goto LA11_;
|
|
transitionSonsKind__ast_5759(result, ((tyEnum_TNodeKind__ibNAumaBpWjeer4yEB9aB2w)160));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
}
|
|
goto LA6_;
|
|
LA11_: ;
|
|
LA6_: ;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
skipComment__parser_52(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
{
|
|
LA5_:;
|
|
}
|
|
{
|
|
oldNimErrFin5_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin5_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
} LA2: ;
|
|
} LA1: ;
|
|
optPar__parser_84(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eat__parser_79(p, endTok);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, dotExpr__parser_486)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info;
|
|
NIM_BOOL oldNimErrFin8_;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
colontmpD_ = NIM_NIL;
|
|
info = parLineInfo__parser_77((&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
result = newNodeI__ast_3949(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)45), info);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
colontmpD_ = parseSymbol__parser_96(p, ((tyEnum_SymbolMode__MITZcP1QsFlXqKTZFVDgdQ)2));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
NIM_BOOL T4_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* x;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* y;
|
|
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg T9_;
|
|
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg T10_;
|
|
T4_ = (NIM_BOOL)0;
|
|
T4_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)109));
|
|
if (!(T4_)) goto LA5_;
|
|
T4_ = !((*p).tok.strongSpaceA);
|
|
LA5_: ;
|
|
if (!T4_) goto LA6_;
|
|
x = NIM_NIL;
|
|
y = NIM_NIL;
|
|
T9_ = parLineInfo__parser_77((&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
x = newNodeI__ast_3949(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)42), T9_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
add__ast_6233(x, (*result)._kind_6.sons.p->data[((NI)1)]);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
exprList__parser_402(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)93), x);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
eat__parser_79(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)93));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
T10_ = parLineInfo__parser_77((&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
y = newNodeI__ast_3949(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)27), T10_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
add__ast_6233(y, x);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
add__ast_6233(y, (*result)._kind_6.sons.p->data[((NI)0)]);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
{
|
|
NIM_BOOL T13_;
|
|
T13_ = (NIM_BOOL)0;
|
|
T13_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)90));
|
|
if (!(T13_)) goto LA14_;
|
|
T13_ = !((*p).tok.strongSpaceA);
|
|
LA14_: ;
|
|
if (!T13_) goto LA15_;
|
|
exprColonEqExprListAux__parser_449(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)91), y);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
}
|
|
LA15_: ;
|
|
eqsink___ast_3460(&result, y);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
y = 0;
|
|
{
|
|
LA8_:;
|
|
}
|
|
{
|
|
oldNimErrFin8_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&y);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqdestroy___ast_3454(&x);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin8_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA6_: ;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, identVis__parser_966)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, NIM_BOOL allowDot) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
NIM_BOOL oldNimErrFin6_;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
a = NIM_NIL;
|
|
a = parseSymbol__parser_96(p, ((tyEnum_SymbolMode__MITZcP1QsFlXqKTZFVDgdQ)0));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)110))) goto LA4_;
|
|
colontmpD_ = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)31), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
colontmpD_ = newIdentNodeP__parser_70((*p).tok.ident, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
{
|
|
LA6_:;
|
|
}
|
|
{
|
|
oldNimErrFin6_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin6_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
goto LA2_;
|
|
LA4_: ;
|
|
{
|
|
NIM_BOOL T10_;
|
|
T10_ = (NIM_BOOL)0;
|
|
T10_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)107));
|
|
if (!(T10_)) goto LA11_;
|
|
T10_ = allowDot;
|
|
LA11_: ;
|
|
if (!T10_) goto LA12_;
|
|
result = dotExpr__parser_486(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
goto LA2_;
|
|
LA12_: ;
|
|
{
|
|
result = a;
|
|
a = 0;
|
|
}
|
|
LA2_: ;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parsePragma__parser_106)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin3_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)90), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
(*p).inPragma += ((NI)1);
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
while (1) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)99) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)95) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)1)))) goto LA2 ;
|
|
a = NIM_NIL;
|
|
(*p).hasProgress = NIM_FALSE;
|
|
a = exprColonEqExpr__parser_386(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
{
|
|
if (!!((*p).hasProgress)) goto LA6_;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA1;
|
|
}
|
|
LA6_: ;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)102))) goto LA10_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
skipComment__parser_52(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
}
|
|
LA10_: ;
|
|
{
|
|
LA3_:;
|
|
}
|
|
{
|
|
oldNimErrFin3_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin3_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
} LA2: ;
|
|
} LA1: ;
|
|
optPar__parser_84(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)99) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)95))) goto LA16_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA14_;
|
|
LA16_: ;
|
|
{
|
|
parMessage__parser_148((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_27);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA14_: ;
|
|
(*p).inPragma -= ((NI)1);
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, identWithPragma__parser_987)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, NIM_BOOL allowDot) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
NIM_BOOL oldNimErrFin6_;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
a = NIM_NIL;
|
|
a = identVis__parser_966(p, allowDot);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)98))) goto LA4_;
|
|
colontmpD_ = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)43), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
colontmpD_ = parsePragma__parser_106(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
{
|
|
LA6_:;
|
|
}
|
|
{
|
|
oldNimErrFin6_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin6_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
goto LA2_;
|
|
LA4_: ;
|
|
{
|
|
result = a;
|
|
a = 0;
|
|
}
|
|
LA2_: ;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isOperator__parser_44)(tyObject_Token__kYhYXOlGtXyCuQli9biTdZA* tok) {
|
|
NIM_BOOL result;
|
|
result = (NIM_BOOL)0;
|
|
result = ((TM__FlWBYIOz13qHfz9ae813gBA_28[(NU)(((*tok).tokType))>>3] &(1U<<((NU)(((*tok).tokType))&7U)))!=0);
|
|
return result;
|
|
}
|
|
static N_INLINE(NIM_BOOL, isSigilLike__parser_269)(tyObject_Token__kYhYXOlGtXyCuQli9biTdZA* tok) {
|
|
NIM_BOOL result;
|
|
NIM_BOOL T1_;
|
|
result = (NIM_BOOL)0;
|
|
T1_ = (NIM_BOOL)0;
|
|
T1_ = ((*tok).tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)110));
|
|
if (!(T1_)) goto LA2_;
|
|
T1_ = ((NU8)((*(*tok).ident).s.p->data[((NI)0)]) == (NU8)(64));
|
|
LA2_: ;
|
|
result = T1_;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newStrNodeP__parser_66)(tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind, NimStringV2 strVal, tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = newNodeP__parser_55(kind, p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqcopy___stdZassertions_16((&(*result)._kind_3.strVal), strVal);
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseGStrLit__parser_610)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin2_;
|
|
NIM_BOOL oldNimErrFin6_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)86):
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
colontmpD_ = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)28), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
|
|
colontmpD_ = newStrNodeP__parser_66(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)21), (*p).tok.literal, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA2_;
|
|
{
|
|
LA2_:;
|
|
}
|
|
{
|
|
oldNimErrFin2_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin2_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)87):
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
|
|
colontmpD__2 = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)28), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
colontmpD__2 = newStrNodeP__parser_66(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)22), (*p).tok.literal, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
add__ast_6233(result, colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
{
|
|
LA6_:;
|
|
}
|
|
{
|
|
oldNimErrFin6_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin6_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
eqcopy___ast_3457(&result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
}
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newIntNodeP__parser_58)(tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind, NI64 intVal, tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = newNodeP__parser_55(kind, p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
(*result)._kind_1.intVal = intVal;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, setBaseFlags__parser_93)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, tyEnum_NumericalBase__AbSe5ri9aXAVP9cA1JY4Ahdw base) {
|
|
switch (base) {
|
|
case ((tyEnum_NumericalBase__AbSe5ri9aXAVP9cA1JY4Ahdw)0):
|
|
{
|
|
}
|
|
break;
|
|
case ((tyEnum_NumericalBase__AbSe5ri9aXAVP9cA1JY4Ahdw)1):
|
|
{
|
|
(*n).flags |= ((NU32)1)<<(((((tyEnum_TNodeFlag__69c8WThOUT3nlaj2cOZ9c2dw)1))) & 31);
|
|
}
|
|
break;
|
|
case ((tyEnum_NumericalBase__AbSe5ri9aXAVP9cA1JY4Ahdw)2):
|
|
{
|
|
(*n).flags |= ((NU32)1)<<(((((tyEnum_TNodeFlag__69c8WThOUT3nlaj2cOZ9c2dw)2))) & 31);
|
|
}
|
|
break;
|
|
case ((tyEnum_NumericalBase__AbSe5ri9aXAVP9cA1JY4Ahdw)3):
|
|
{
|
|
(*n).flags |= ((NU32)1)<<(((((tyEnum_TNodeFlag__69c8WThOUT3nlaj2cOZ9c2dw)3))) & 31);
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newFloatNodeP__parser_62)(tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind, NF floatVal, tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = newNodeP__parser_55(kind, p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
(*result)._kind_2.floatVal = floatVal;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, exprColonEqExprList__parser_481)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind, tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ endTok) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = newNodeP__parser_55(kind, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
exprColonEqExprListAux__parser_449(p, endTok, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseIfOrWhenExpr__parser_635)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin3_;
|
|
NIM_BOOL oldNimErrFin14_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = newNodeP__parser_55(kind, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
while (1) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* branch;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
|
|
branch = NIM_NIL;
|
|
colontmpD_ = NIM_NIL;
|
|
colontmpD__2 = NIM_NIL;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
branch = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)49), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
optInd__parser_86(p, branch);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
colontmpD_ = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
add__ast_6233(branch, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
colcom__parser_311(p, branch);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
colontmpD__2 = parseStmt__parser_259(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
add__ast_6233(branch, colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
skipComment__parser_52(p, branch);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
add__ast_6233(result, branch);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
{
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)21)))) goto LA6_;
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&branch);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA1;
|
|
}
|
|
LA6_: ;
|
|
{
|
|
LA3_:;
|
|
}
|
|
{
|
|
oldNimErrFin3_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&branch);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin3_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
} LA1: ;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* branch_2;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__3;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)22))) goto LA12_;
|
|
branch_2 = NIM_NIL;
|
|
colontmpD__3 = NIM_NIL;
|
|
branch_2 = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)50), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
|
|
eat__parser_79(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)22));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
|
|
colcom__parser_311(p, branch_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
|
|
colontmpD__3 = parseStmt__parser_259(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
|
|
add__ast_6233(branch_2, colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
|
|
add__ast_6233(result, branch_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
|
|
{
|
|
LA14_:;
|
|
}
|
|
{
|
|
oldNimErrFin14_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&branch_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin14_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA12_: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, semiStmtList__parser_638)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
NI oldIndX60gensym33_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T2_;
|
|
NIM_BOOL oldNimErrFin8_;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
a = NIM_NIL;
|
|
(*p).inSemiStmtList += ((NI)1);
|
|
oldIndX60gensym33_ = (*p).currInd;
|
|
(*p).currInd = (*p).tok.indent;
|
|
T2_ = NIM_NIL;
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)31):
|
|
{
|
|
a = parseIfOrWhenExpr__parser_635(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)92));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)65):
|
|
{
|
|
a = parseIfOrWhenExpr__parser_635(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)93));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
a = complexOrSimpleStmt__parser_630(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
break;
|
|
}
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
while (1) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a_2;
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)1)))) goto LA7 ;
|
|
a_2 = NIM_NIL;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)103))) goto LA11_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
}
|
|
LA11_: ;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)91))) goto LA15_;
|
|
eqdestroy___ast_3454(&a_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
goto LA6;
|
|
}
|
|
goto LA13_;
|
|
LA15_: ;
|
|
{
|
|
NIM_BOOL T18_;
|
|
T18_ = (NIM_BOOL)0;
|
|
T18_ = ((*p).tok.indent == (*p).currInd);
|
|
if (T18_) goto LA19_;
|
|
T18_ = ((*p).currInd < (*p).tok.indent);
|
|
LA19_: ;
|
|
if (!!(T18_)) goto LA20_;
|
|
parMessage__parser_148((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_31);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
}
|
|
goto LA13_;
|
|
LA20_: ;
|
|
LA13_: ;
|
|
a_2 = complexOrSimpleStmt__parser_630(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
{
|
|
if (!((*a_2).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1))) goto LA24_;
|
|
parMessage__parser_144((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_32, (&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
}
|
|
goto LA22_;
|
|
LA24_: ;
|
|
{
|
|
add__ast_6233(result, a_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
}
|
|
LA22_: ;
|
|
{
|
|
LA8_:;
|
|
}
|
|
{
|
|
oldNimErrFin8_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin8_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
} LA7: ;
|
|
} LA6: ;
|
|
(*p).currInd = oldIndX60gensym33_;
|
|
(*p).inSemiStmtList -= ((NI)1);
|
|
transitionSonsKind__ast_5759(result, ((tyEnum_TNodeKind__ibNAumaBpWjeer4yEB9aB2w)126));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseStmtPragma__parser_104)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin7_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = parsePragma__parser_106(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
NIM_BOOL T3_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T8_;
|
|
T3_ = (NIM_BOOL)0;
|
|
T3_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)104));
|
|
if (!(T3_)) goto LA4_;
|
|
T3_ = ((*p).tok.indent < ((NI)0));
|
|
LA4_: ;
|
|
if (!T3_) goto LA5_;
|
|
a = NIM_NIL;
|
|
colontmpD_ = NIM_NIL;
|
|
a = result;
|
|
result = 0;
|
|
T8_ = NIM_NIL;
|
|
T8_ = newNodeI__ast_3949(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)91), (*a).info);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
eqsink___ast_3460(&result, T8_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
skipComment__parser_52(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
colontmpD_ = parseStmt__parser_259(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
{
|
|
LA7_:;
|
|
}
|
|
{
|
|
oldNimErrFin7_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin7_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA5_: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parsePar__parser_679)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin11_;
|
|
NIM_BOOL oldNimErrFin27_;
|
|
NIM_BOOL oldNimErrFin51_;
|
|
NIM_BOOL oldNimErrFin18_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)37), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
flexComment__parser_184(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
if (!((TM__FlWBYIOz13qHfz9ae813gBA_30[(NU)(((*p).tok.tokType))>>3] &(1U<<((NU)(((*p).tok.tokType))&7U)))!=0)) goto LA3_;
|
|
semiStmtList__parser_638(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA1_;
|
|
LA3_: ;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)103))) goto LA6_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
semiStmtList__parser_638(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA1_;
|
|
LA6_: ;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)98))) goto LA9_;
|
|
colontmpD_ = NIM_NIL;
|
|
colontmpD_ = parseStmtPragma__parser_104(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
|
|
{
|
|
LA11_:;
|
|
}
|
|
{
|
|
oldNimErrFin11_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin11_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA1_;
|
|
LA9_: ;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)91))) goto LA15_;
|
|
transitionSonsKind__ast_5759(result, ((tyEnum_TNodeKind__ibNAumaBpWjeer4yEB9aB2w)160));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA1_;
|
|
LA15_: ;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
a = NIM_NIL;
|
|
a = simpleExpr__parser_632(p, ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)0));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T23_;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)20))) goto LA21_;
|
|
T23_ = NIM_NIL;
|
|
T23_ = postExprBlocks__parser_108(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
|
|
eqsink___ast_3460(&result, T23_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
|
|
}
|
|
goto LA19_;
|
|
LA21_: ;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* asgn;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* b;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)106))) goto LA25_;
|
|
asgn = NIM_NIL;
|
|
b = NIM_NIL;
|
|
asgn = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)73), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
|
|
b = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
|
|
add__ast_6233(asgn, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
|
|
add__ast_6233(asgn, b);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
|
|
add__ast_6233(result, asgn);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)103))) goto LA30_;
|
|
semiStmtList__parser_638(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
|
|
}
|
|
LA30_: ;
|
|
{
|
|
LA27_:;
|
|
}
|
|
{
|
|
oldNimErrFin27_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&b);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
|
|
eqdestroy___ast_3454(&asgn);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
|
|
*nimErr_ = oldNimErrFin27_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
|
|
}
|
|
goto LA19_;
|
|
LA25_: ;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)103))) goto LA35_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
|
|
semiStmtList__parser_638(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
|
|
}
|
|
goto LA19_;
|
|
LA35_: ;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T38_;
|
|
T38_ = NIM_NIL;
|
|
T38_ = colonOrEquals__parser_370(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
|
|
eqsink___ast_3460(&a, T38_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
|
|
{
|
|
if (!((*a).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)34))) goto LA41_;
|
|
transitionSonsKind__ast_5759(result, ((tyEnum_TNodeKind__ibNAumaBpWjeer4yEB9aB2w)160));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
|
|
}
|
|
LA41_: ;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)102))) goto LA45_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
|
|
skipComment__parser_52(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
|
|
transitionSonsKind__ast_5759(result, ((tyEnum_TNodeKind__ibNAumaBpWjeer4yEB9aB2w)160));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
|
|
{
|
|
while (1) {
|
|
NIM_BOOL T49_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a_2;
|
|
T49_ = (NIM_BOOL)0;
|
|
T49_ = !(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)91)));
|
|
if (!(T49_)) goto LA50_;
|
|
T49_ = !(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)1)));
|
|
LA50_: ;
|
|
if (!T49_) goto LA48 ;
|
|
a_2 = NIM_NIL;
|
|
a_2 = exprColonEqExpr__parser_386(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA51_;
|
|
add__ast_6233(result, a_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA51_;
|
|
{
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)102)))) goto LA54_;
|
|
eqdestroy___ast_3454(&a_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
|
|
goto LA47;
|
|
}
|
|
LA54_: ;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA51_;
|
|
skipComment__parser_52(p, a_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA51_;
|
|
{
|
|
LA51_:;
|
|
}
|
|
{
|
|
oldNimErrFin51_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
|
|
*nimErr_ = oldNimErrFin51_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
|
|
} LA48: ;
|
|
} LA47: ;
|
|
}
|
|
LA45_: ;
|
|
}
|
|
LA19_: ;
|
|
{
|
|
LA18_:;
|
|
}
|
|
{
|
|
oldNimErrFin18_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin18_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA1_: ;
|
|
optPar__parser_84(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eat__parser_79(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)91));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, setOrTableConstr__parser_548)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin8_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)39), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)104))) goto LA3_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
transitionSonsKind__ast_5759(result, ((tyEnum_TNodeKind__ibNAumaBpWjeer4yEB9aB2w)54));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA1_;
|
|
LA3_: ;
|
|
{
|
|
{
|
|
while (1) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)95) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)1)))) goto LA7 ;
|
|
a = NIM_NIL;
|
|
a = exprColonEqExpr__parser_386(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
{
|
|
if (!((*a).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)34))) goto LA11_;
|
|
transitionSonsKind__ast_5759(result, ((tyEnum_TNodeKind__ibNAumaBpWjeer4yEB9aB2w)54));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
}
|
|
LA11_: ;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
{
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)102)))) goto LA15_;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA6;
|
|
}
|
|
LA15_: ;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
skipComment__parser_52(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
{
|
|
LA8_:;
|
|
}
|
|
{
|
|
oldNimErrFin8_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin8_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
} LA7: ;
|
|
} LA6: ;
|
|
}
|
|
LA1_: ;
|
|
optPar__parser_84(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eat__parser_79(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)95));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseCast__parser_572)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin5_;
|
|
NIM_BOOL oldNimErrFin9_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)61), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)92))) goto LA3_;
|
|
colontmpD_ = NIM_NIL;
|
|
colontmpD__2 = NIM_NIL;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
colontmpD_ = parseTypeDesc__parser_261(p, NIM_FALSE);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
optPar__parser_84(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
eat__parser_79(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)93));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
eat__parser_79(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)90));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
colontmpD__2 = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
add__ast_6233(result, colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
{
|
|
LA5_:;
|
|
}
|
|
{
|
|
oldNimErrFin5_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin5_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA1_;
|
|
LA3_: ;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__3;
|
|
colontmpD__3 = NIM_NIL;
|
|
add__ast_6233(result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
|
|
eat__parser_79(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)90));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
|
|
colontmpD__3 = exprColonEqExpr__parser_386(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
|
|
add__ast_6233(result, colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
|
|
{
|
|
LA9_:;
|
|
}
|
|
{
|
|
oldNimErrFin9_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin9_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA1_: ;
|
|
optPar__parser_84(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eat__parser_79(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)91));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, identOrLiteral__parser_766)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA mode) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin23_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)2):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)3):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)50):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)58):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)62):
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T2_;
|
|
result = newIdentNodeP__parser_70((*p).tok.ident, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
T2_ = NIM_NIL;
|
|
T2_ = parseGStrLit__parser_610(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqsink___ast_3460(&result, T2_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)112):
|
|
{
|
|
result = parseSymbol__parser_96(p, ((tyEnum_SymbolMode__MITZcP1QsFlXqKTZFVDgdQ)0));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)69):
|
|
{
|
|
result = newIntNodeP__parser_58(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)6), (*p).tok.iNumber, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
setBaseFlags__parser_93(result, (*p).tok.base);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)70):
|
|
{
|
|
result = newIntNodeP__parser_58(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)7), (*p).tok.iNumber, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
setBaseFlags__parser_93(result, (*p).tok.base);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)71):
|
|
{
|
|
result = newIntNodeP__parser_58(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)8), (*p).tok.iNumber, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
setBaseFlags__parser_93(result, (*p).tok.base);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)72):
|
|
{
|
|
result = newIntNodeP__parser_58(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)9), (*p).tok.iNumber, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
setBaseFlags__parser_93(result, (*p).tok.base);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)73):
|
|
{
|
|
result = newIntNodeP__parser_58(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)10), (*p).tok.iNumber, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
setBaseFlags__parser_93(result, (*p).tok.base);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)74):
|
|
{
|
|
result = newIntNodeP__parser_58(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)11), (*p).tok.iNumber, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
setBaseFlags__parser_93(result, (*p).tok.base);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)75):
|
|
{
|
|
result = newIntNodeP__parser_58(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)12), (*p).tok.iNumber, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
setBaseFlags__parser_93(result, (*p).tok.base);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)76):
|
|
{
|
|
result = newIntNodeP__parser_58(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)13), (*p).tok.iNumber, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
setBaseFlags__parser_93(result, (*p).tok.base);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)77):
|
|
{
|
|
result = newIntNodeP__parser_58(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)14), (*p).tok.iNumber, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
setBaseFlags__parser_93(result, (*p).tok.base);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)78):
|
|
{
|
|
result = newIntNodeP__parser_58(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)15), (*p).tok.iNumber, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
setBaseFlags__parser_93(result, (*p).tok.base);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)79):
|
|
{
|
|
result = newFloatNodeP__parser_62(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)16), (*p).tok.fNumber, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
setBaseFlags__parser_93(result, (*p).tok.base);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)80):
|
|
{
|
|
result = newFloatNodeP__parser_62(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)17), (*p).tok.fNumber, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
setBaseFlags__parser_93(result, (*p).tok.base);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)81):
|
|
{
|
|
result = newFloatNodeP__parser_62(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)18), (*p).tok.fNumber, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
setBaseFlags__parser_93(result, (*p).tok.base);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)82):
|
|
{
|
|
result = newFloatNodeP__parser_62(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)19), (*p).tok.fNumber, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
setBaseFlags__parser_93(result, (*p).tok.base);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)83):
|
|
{
|
|
result = newStrNodeP__parser_66(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)20), (*p).tok.literal, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)84):
|
|
{
|
|
result = newStrNodeP__parser_66(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)21), (*p).tok.literal, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)85):
|
|
{
|
|
result = newStrNodeP__parser_66(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)22), (*p).tok.literal, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)88):
|
|
{
|
|
result = newIntNodeP__parser_58(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)5), ((NI64) (((NU8)((*p).tok.literal.p->data[((NI)0)])))), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)89):
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* str;
|
|
NimStringV2 colontmpD_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* callee;
|
|
NimStringV2 colontmpD__2;
|
|
tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* colontmpD__3;
|
|
NI splitPos;
|
|
str = NIM_NIL;
|
|
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
|
|
callee = NIM_NIL;
|
|
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
|
|
colontmpD__3 = NIM_NIL;
|
|
splitPos = ((NI) ((*p).tok.iNumber));
|
|
colontmpD_ = substr__system_7548((*p).tok.literal, ((NI)0), (NI)(splitPos - ((NI)1)));
|
|
str = newStrNodeP__parser_66(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)21), colontmpD_, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
|
|
colontmpD__2 = substr__system_7560((*p).tok.literal, splitPos);
|
|
colontmpD__3 = getIdent__idents_166((*p).lex.cache, colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
|
|
callee = newIdentNodeP__parser_70(colontmpD__3, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)45), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
|
|
add__ast_6233(result, str);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
|
|
add__ast_6233(result, callee);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA23_;
|
|
{
|
|
LA23_:;
|
|
}
|
|
{
|
|
oldNimErrFin23_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___idents_133(&colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___stdZassertions_13((&colontmpD__2));
|
|
eqdestroy___ast_3454(&callee);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___stdZassertions_13((&colontmpD_));
|
|
eqdestroy___ast_3454(&str);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin23_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)44):
|
|
{
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)23), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)90):
|
|
{
|
|
{
|
|
if (!(mode == ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)1) || mode == ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)2))) goto LA30_;
|
|
result = exprColonEqExprList__parser_481(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)37), ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)91));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA28_;
|
|
LA30_: ;
|
|
{
|
|
result = parsePar__parser_679(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA28_: ;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)94):
|
|
{
|
|
result = setOrTableConstr__parser_548(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)92):
|
|
{
|
|
result = exprColonEqExprList__parser_481(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)41), ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)93));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)11):
|
|
{
|
|
result = parseCast__parser_572(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
parMessage__parser_144((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_33, (&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqcopy___ast_3457(&result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
}
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, exprEqExpr__parser_394)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
a = NIM_NIL;
|
|
a = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)20))) goto LA4_;
|
|
result = postExprBlocks__parser_108(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
goto LA2_;
|
|
LA4_: ;
|
|
{
|
|
result = equals__parser_354(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA2_: ;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, commandParam__parser_800)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, NIM_BOOL* isFirstParam, tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA mode) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
{
|
|
if (!(mode == ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)1))) goto LA3_;
|
|
result = simpleExpr__parser_632(p, mode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA1_;
|
|
LA3_: ;
|
|
{
|
|
if (!!((*isFirstParam))) goto LA6_;
|
|
result = exprEqExpr__parser_394(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA1_;
|
|
LA6_: ;
|
|
{
|
|
result = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T13_;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)20))) goto LA11_;
|
|
T13_ = NIM_NIL;
|
|
T13_ = postExprBlocks__parser_108(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqsink___ast_3460(&result, T13_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA11_: ;
|
|
}
|
|
LA1_: ;
|
|
(*isFirstParam) = NIM_FALSE;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, commandExpr__parser_814)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* r, tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA mode) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin6_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
{
|
|
if (!(mode == ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)3))) goto LA3_;
|
|
eqcopy___ast_3457(&result, r);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA1_;
|
|
LA3_: ;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
NIM_BOOL isFirstParam;
|
|
colontmpD_ = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)26), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
add__ast_6233(result, r);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
isFirstParam = NIM_TRUE;
|
|
(*p).hasProgress = NIM_FALSE;
|
|
colontmpD_ = commandParam__parser_800(p, (&isFirstParam), mode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
{
|
|
LA6_:;
|
|
}
|
|
{
|
|
oldNimErrFin6_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin6_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA1_: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, namedParams__parser_789)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* callee, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind, tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ endTok) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
a = NIM_NIL;
|
|
eqcopy___ast_3457(&a, callee);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
result = newNodeP__parser_55(kind, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
exprColonEqExprListAux__parser_449(p, endTok, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isDotLike__parser_832)(tyObject_Token__kYhYXOlGtXyCuQli9biTdZA* tok) {
|
|
NIM_BOOL result;
|
|
NIM_BOOL T1_;
|
|
NIM_BOOL T2_;
|
|
NIM_BOOL T3_;
|
|
result = (NIM_BOOL)0;
|
|
T1_ = (NIM_BOOL)0;
|
|
T2_ = (NIM_BOOL)0;
|
|
T3_ = (NIM_BOOL)0;
|
|
T3_ = ((*tok).tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)110));
|
|
if (!(T3_)) goto LA4_;
|
|
T3_ = (((NI)1) < (*(*tok).ident).s.len);
|
|
LA4_: ;
|
|
T2_ = T3_;
|
|
if (!(T2_)) goto LA5_;
|
|
T2_ = ((NU8)((*(*tok).ident).s.p->data[((NI)0)]) == (NU8)(46));
|
|
LA5_: ;
|
|
T1_ = T2_;
|
|
if (!(T1_)) goto LA6_;
|
|
T1_ = !(((NU8)((*(*tok).ident).s.p->data[((NI)1)]) == (NU8)(46)));
|
|
LA6_: ;
|
|
result = T1_;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, dotLikeExpr__parser_523)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* opNode;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
opNode = NIM_NIL;
|
|
colontmpD_ = NIM_NIL;
|
|
info = parLineInfo__parser_77((&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
result = newNodeI__ast_3949(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)29), info);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
opNode = newIdentNodeP__parser_70((*p).tok.ident, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(result, opNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
colontmpD_ = parseSymbol__parser_96(p, ((tyEnum_SymbolMode__MITZcP1QsFlXqKTZFVDgdQ)2));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&opNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isUnary__parser_283)(tyObject_Token__kYhYXOlGtXyCuQli9biTdZA* tok) {
|
|
NIM_BOOL result;
|
|
NIM_BOOL T1_;
|
|
NIM_BOOL T2_;
|
|
result = (NIM_BOOL)0;
|
|
T1_ = (NIM_BOOL)0;
|
|
T2_ = (NIM_BOOL)0;
|
|
T2_ = ((*tok).tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)110) || (*tok).tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)108));
|
|
if (!(T2_)) goto LA3_;
|
|
T2_ = ((*tok).strongSpaceB == ((tyEnum_TokenSpacing__perxzrRsffkZSokgB16rRw)0));
|
|
LA3_: ;
|
|
T1_ = T2_;
|
|
if (!(T1_)) goto LA4_;
|
|
T1_ = (*tok).strongSpaceA;
|
|
LA4_: ;
|
|
result = T1_;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, primarySuffix__parser_839)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* r, NI baseIndent, tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA mode) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
eqcopy___ast_3457(&result, r);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
while (1) {
|
|
NIM_BOOL T3_;
|
|
NIM_BOOL T5_;
|
|
T3_ = (NIM_BOOL)0;
|
|
T3_ = ((*p).tok.indent < ((NI)0));
|
|
if (T3_) goto LA4_;
|
|
T5_ = (NIM_BOOL)0;
|
|
T5_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)107));
|
|
if (!(T5_)) goto LA6_;
|
|
T5_ = (baseIndent <= (*p).tok.indent);
|
|
LA6_: ;
|
|
T3_ = T5_;
|
|
LA4_: ;
|
|
if (!T3_) goto LA2 ;
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)90):
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T13_;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T12_;
|
|
if (!(*p).tok.strongSpaceA) goto LA10_;
|
|
T12_ = NIM_NIL;
|
|
T12_ = commandExpr__parser_814(p, result, mode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqsink___ast_3460(&result, T12_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA1;
|
|
}
|
|
LA10_: ;
|
|
T13_ = NIM_NIL;
|
|
T13_ = namedParams__parser_789(p, result, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)27), ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)91));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqsink___ast_3460(&result, T13_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
NIM_BOOL T16_;
|
|
NI T17_;
|
|
T16_ = (NIM_BOOL)0;
|
|
T17_ = (NI)0;
|
|
T17_ = len__ast_3325(result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
T16_ = (((NI)1) < T17_);
|
|
if (!(T16_)) goto LA18_;
|
|
T16_ = ((*(*result)._kind_6.sons.p->data[((NI)1)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)34));
|
|
LA18_: ;
|
|
if (!T16_) goto LA19_;
|
|
transitionSonsKind__ast_5759(result, ((tyEnum_TNodeKind__ibNAumaBpWjeer4yEB9aB2w)38));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA19_: ;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)107):
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T22_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T23_;
|
|
T22_ = NIM_NIL;
|
|
T22_ = dotExpr__parser_486(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqsink___ast_3460(&result, T22_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
T23_ = NIM_NIL;
|
|
T23_ = parseGStrLit__parser_610(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqsink___ast_3460(&result, T23_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)92):
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T30_;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T29_;
|
|
if (!(*p).tok.strongSpaceA) goto LA27_;
|
|
T29_ = NIM_NIL;
|
|
T29_ = commandExpr__parser_814(p, result, mode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqsink___ast_3460(&result, T29_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA1;
|
|
}
|
|
LA27_: ;
|
|
T30_ = NIM_NIL;
|
|
T30_ = namedParams__parser_789(p, result, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)42), ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)93));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqsink___ast_3460(&result, T30_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)94):
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T37_;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T36_;
|
|
if (!(*p).tok.strongSpaceA) goto LA34_;
|
|
T36_ = NIM_NIL;
|
|
T36_ = commandExpr__parser_814(p, result, mode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqsink___ast_3460(&result, T36_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA1;
|
|
}
|
|
LA34_: ;
|
|
T37_ = NIM_NIL;
|
|
T37_ = namedParams__parser_789(p, result, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)40), ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)95));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqsink___ast_3460(&result, T37_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)2):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)112):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)69) ... ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)89):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)44):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)11):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)110):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)108):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)64):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)50):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)58):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)62):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)24):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)61):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)47):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)51):
|
|
{
|
|
NIM_BOOL isDotLike2;
|
|
isDotLike2 = isDotLike__parser_832((&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
NIM_BOOL T41_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T45_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T46_;
|
|
T41_ = (NIM_BOOL)0;
|
|
T41_ = isDotLike2;
|
|
if (!(T41_)) goto LA42_;
|
|
T41_ = isDefined__options_2481((*p).lex.config, TM__FlWBYIOz13qHfz9ae813gBA_35);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
LA42_: ;
|
|
if (!T41_) goto LA43_;
|
|
T45_ = NIM_NIL;
|
|
T45_ = dotLikeExpr__parser_523(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqsink___ast_3460(&result, T45_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
T46_ = NIM_NIL;
|
|
T46_ = parseGStrLit__parser_610(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqsink___ast_3460(&result, T46_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA39_;
|
|
LA43_: ;
|
|
{
|
|
{
|
|
if (!isDotLike2) goto LA50_;
|
|
parMessage__parser_48((&(*p)), ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)25), TM__FlWBYIOz13qHfz9ae813gBA_37);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA50_: ;
|
|
{
|
|
NIM_BOOL T54_;
|
|
NIM_BOOL T56_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T60_;
|
|
T54_ = (NIM_BOOL)0;
|
|
T54_ = ((*p).inPragma == ((NI)0));
|
|
if (!(T54_)) goto LA55_;
|
|
T56_ = (NIM_BOOL)0;
|
|
T56_ = isUnary__parser_283((&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
if (T56_) goto LA57_;
|
|
T56_ = !(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)110) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)108)));
|
|
LA57_: ;
|
|
T54_ = T56_;
|
|
LA55_: ;
|
|
if (!T54_) goto LA58_;
|
|
T60_ = NIM_NIL;
|
|
T60_ = commandExpr__parser_814(p, result, mode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqsink___ast_3460(&result, T60_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA58_: ;
|
|
goto LA1;
|
|
}
|
|
LA39_: ;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
goto LA1;
|
|
}
|
|
break;
|
|
}
|
|
} LA2: ;
|
|
} LA1: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, optPragmas__parser_1134)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
{
|
|
NIM_BOOL T3_;
|
|
NIM_BOOL T5_;
|
|
T3_ = (NIM_BOOL)0;
|
|
T3_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)98));
|
|
if (!(T3_)) goto LA4_;
|
|
T5_ = (NIM_BOOL)0;
|
|
T5_ = ((*p).tok.indent < ((NI)0));
|
|
if (T5_) goto LA6_;
|
|
T5_ = ((*p).currInd < (*p).tok.indent);
|
|
LA6_: ;
|
|
T3_ = T5_;
|
|
LA4_: ;
|
|
if (!T3_) goto LA7_;
|
|
result = parsePragma__parser_106(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA1_;
|
|
LA7_: ;
|
|
{
|
|
eqcopy___ast_3457(&result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA1_: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseProcExpr__parser_1163)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, NIM_BOOL isExpr, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* params;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* pragmas;
|
|
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info;
|
|
NIM_BOOL hasSignature;
|
|
NIM_BOOL T2_;
|
|
NIM_BOOL oldNimErrFin10_;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
params = NIM_NIL;
|
|
pragmas = NIM_NIL;
|
|
info = parLineInfo__parser_77((&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
T2_ = (NIM_BOOL)0;
|
|
T2_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)90) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)104));
|
|
if (!(T2_)) goto LA3_;
|
|
T2_ = ((*p).tok.indent < ((NI)0));
|
|
LA3_: ;
|
|
hasSignature = T2_;
|
|
params = parseParamList__parser_266(p, NIM_TRUE);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
pragmas = optPragmas__parser_1134(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
NIM_BOOL T6_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T11_;
|
|
T6_ = (NIM_BOOL)0;
|
|
T6_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)106));
|
|
if (!(T6_)) goto LA7_;
|
|
T6_ = isExpr;
|
|
LA7_: ;
|
|
if (!T6_) goto LA8_;
|
|
colontmpD_ = NIM_NIL;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
|
|
skipComment__parser_52(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
|
|
colontmpD_ = parseStmt__parser_259(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
|
|
T11_ = NIM_NIL;
|
|
T11_ = newProcNode__ast_4889(kind, info, colontmpD_, params, (*p).emptyNode, (*p).emptyNode, (*p).emptyNode, pragmas, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
|
|
eqsink___ast_3460(&result, T11_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
|
|
{
|
|
LA10_:;
|
|
}
|
|
{
|
|
oldNimErrFin10_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin10_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
goto LA4_;
|
|
LA8_: ;
|
|
{
|
|
tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ colontmpD__2;
|
|
tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ colontmpD__3;
|
|
tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ T15_;
|
|
colontmpD__2 = (tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)0;
|
|
colontmpD__3 = (tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)0;
|
|
T15_ = (tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)0;
|
|
{
|
|
if (!(kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)84))) goto LA18_;
|
|
colontmpD__2 = ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)148);
|
|
T15_ = colontmpD__2;
|
|
}
|
|
goto LA16_;
|
|
LA18_: ;
|
|
{
|
|
colontmpD__3 = ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)147);
|
|
T15_ = colontmpD__3;
|
|
}
|
|
LA16_: ;
|
|
result = newNodeI__ast_3949(T15_, info);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
if (!hasSignature) goto LA23_;
|
|
add__ast_6233(result, params);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
if (!(kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)159))) goto LA27_;
|
|
parMessage__parser_148((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_39);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA27_: ;
|
|
add__ast_6233(result, pragmas);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA23_: ;
|
|
}
|
|
LA4_: ;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&pragmas);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(¶ms);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, primary__parser_115)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA mode) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin13_;
|
|
NIM_BOOL oldNimErrFin18_;
|
|
NIM_BOOL oldNimErrFin6_;
|
|
NIM_BOOL oldNimErrFin27_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
{
|
|
NIM_BOOL T3_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
NIM_BOOL isSigil;
|
|
T3_ = (NIM_BOOL)0;
|
|
T3_ = isOperator__parser_44((&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
if (!T3_) goto LA4_;
|
|
a = NIM_NIL;
|
|
isSigil = isSigilLike__parser_269((&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)30), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
a = newIdentNodeP__parser_70((*p).tok.ident, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
optInd__parser_86(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
{
|
|
NIM_BOOL T9_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
NI baseInd;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T14_;
|
|
T9_ = (NIM_BOOL)0;
|
|
T9_ = isSigil;
|
|
if (!(T9_)) goto LA10_;
|
|
T9_ = ((TM__FlWBYIOz13qHfz9ae813gBA_29[(NU)(((*p).tok.tokType))>>3] &(1U<<((NU)(((*p).tok.tokType))&7U)))!=0);
|
|
LA10_: ;
|
|
if (!T9_) goto LA11_;
|
|
colontmpD_ = NIM_NIL;
|
|
baseInd = (*p).lex.currLineIndent;
|
|
colontmpD_ = identOrLiteral__parser_766(p, mode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
|
|
T14_ = NIM_NIL;
|
|
T14_ = primarySuffix__parser_839(p, result, baseInd, mode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
|
|
eqsink___ast_3460(&result, T14_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
|
|
{
|
|
LA13_:;
|
|
}
|
|
{
|
|
oldNimErrFin13_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
*nimErr_ = oldNimErrFin13_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
}
|
|
goto LA7_;
|
|
LA11_: ;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
|
|
colontmpD__2 = NIM_NIL;
|
|
colontmpD__2 = primary__parser_115(p, ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)0));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
|
|
add__ast_6233(result, colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
|
|
{
|
|
LA18_:;
|
|
}
|
|
{
|
|
oldNimErrFin18_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
*nimErr_ = oldNimErrFin18_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
}
|
|
LA7_: ;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto BeforeRet_;
|
|
{
|
|
LA6_:;
|
|
}
|
|
{
|
|
oldNimErrFin6_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin6_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA4_: ;
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)51):
|
|
{
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
result = parseProcExpr__parser_1163(p, !((mode == ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)1))), ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)51));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)30):
|
|
{
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
result = parseProcExpr__parser_1163(p, !((mode == ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)1))), ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)159));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)38):
|
|
{
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
result = parseProcExpr__parser_1163(p, !((mode == ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)1))), ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)84));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)7):
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__3;
|
|
colontmpD__3 = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)55), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
|
|
colontmpD__3 = primary__parser_115(p, ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)0));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
|
|
add__ast_6233(result, colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA27_;
|
|
{
|
|
LA27_:;
|
|
}
|
|
{
|
|
oldNimErrFin27_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin27_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)61):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)24):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)47):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)12):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)64):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)50):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)54):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)52):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)18):
|
|
{
|
|
result = parseTypeDesc__parser_261(p, NIM_FALSE);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
NI baseInd_2;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T32_;
|
|
baseInd_2 = (*p).lex.currLineIndent;
|
|
result = identOrLiteral__parser_766(p, mode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
T32_ = NIM_NIL;
|
|
T32_ = primarySuffix__parser_839(p, result, baseInd_2, mode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqsink___ast_3460(&result, T32_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
}
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
static N_INLINE(void, checkBinary__parser_294)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)110))) goto LA3_;
|
|
{
|
|
NIM_BOOL T7_;
|
|
NimStringV2 colontmpD_;
|
|
T7_ = (NIM_BOOL)0;
|
|
T7_ = ((*p).tok.strongSpaceB == ((tyEnum_TokenSpacing__perxzrRsffkZSokgB16rRw)1));
|
|
if (!(T7_)) goto LA8_;
|
|
T7_ = !((*p).tok.strongSpaceA);
|
|
LA8_: ;
|
|
if (!T7_) goto LA9_;
|
|
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
|
|
colontmpD_ = prettyTok__lexer_252((&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
|
|
parMessage__parser_48(p, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)58), colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
|
|
{
|
|
LA11_:;
|
|
}
|
|
{
|
|
eqdestroy___stdZassertions_13((&colontmpD_));
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA9_: ;
|
|
}
|
|
LA3_: ;
|
|
}BeforeRet_: ;
|
|
}
|
|
static N_INLINE(NIM_BOOL, isRightAssociative__parser_276)(tyObject_Token__kYhYXOlGtXyCuQli9biTdZA* tok) {
|
|
NIM_BOOL result;
|
|
NIM_BOOL T1_;
|
|
result = (NIM_BOOL)0;
|
|
T1_ = (NIM_BOOL)0;
|
|
T1_ = ((*tok).tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)110));
|
|
if (!(T1_)) goto LA2_;
|
|
T1_ = ((NU8)((*(*tok).ident).s.p->data[((NI)0)]) == (NU8)(94));
|
|
LA2_: ;
|
|
result = T1_;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseOperators__parser_862)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* headNode, NI limit, tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA mode) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA colontmpD_;
|
|
tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA colontmpD__2;
|
|
NI opPrec;
|
|
tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA modeB;
|
|
NIM_BOOL oldNimErrFin13_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
colontmpD_ = (tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)0;
|
|
colontmpD__2 = (tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)0;
|
|
eqcopy___ast_3457(&result, headNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
opPrec = getPrecedence__lexer_1562((&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
if (!(mode == ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)2))) goto LA3_;
|
|
colontmpD_ = ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)1);
|
|
modeB = colontmpD_;
|
|
}
|
|
goto LA1_;
|
|
LA3_: ;
|
|
{
|
|
colontmpD__2 = mode;
|
|
modeB = colontmpD__2;
|
|
}
|
|
LA1_: ;
|
|
{
|
|
while (1) {
|
|
NIM_BOOL T8_;
|
|
NIM_BOOL T9_;
|
|
NIM_BOOL T12_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* opNode;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* b;
|
|
NI leftAssoc;
|
|
NIM_BOOL T14_;
|
|
T8_ = (NIM_BOOL)0;
|
|
T9_ = (NIM_BOOL)0;
|
|
T9_ = (limit <= opPrec);
|
|
if (!(T9_)) goto LA10_;
|
|
T9_ = ((*p).tok.indent < ((NI)0));
|
|
LA10_: ;
|
|
T8_ = T9_;
|
|
if (!(T8_)) goto LA11_;
|
|
T12_ = (NIM_BOOL)0;
|
|
T12_ = isUnary__parser_283((&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
T8_ = !(T12_);
|
|
LA11_: ;
|
|
if (!T8_) goto LA7 ;
|
|
a = NIM_NIL;
|
|
opNode = NIM_NIL;
|
|
b = NIM_NIL;
|
|
checkBinary__parser_294((&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
|
|
T14_ = (NIM_BOOL)0;
|
|
T14_ = isRightAssociative__parser_276((&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
|
|
leftAssoc = !(T14_);
|
|
a = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)29), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
|
|
opNode = newIdentNodeP__parser_70((*p).tok.ident, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
|
|
flexComment__parser_184(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
|
|
optPar__parser_84(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
|
|
b = simpleExprAux__parser_118(p, (NI)(opPrec + leftAssoc), modeB);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
|
|
add__ast_6233(a, opNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
|
|
add__ast_6233(a, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
|
|
add__ast_6233(a, b);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
|
|
eqsink___ast_3460(&result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
|
|
a = 0;
|
|
opPrec = getPrecedence__lexer_1562((&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
|
|
{
|
|
LA13_:;
|
|
}
|
|
{
|
|
oldNimErrFin13_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&b);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&opNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin13_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
} LA7: ;
|
|
}
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, simpleExprAux__parser_118)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, NI limit, tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA mode) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA mode_2;
|
|
NIM_BOOL oldNimErrFin15_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T18_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
mode_2 = mode;
|
|
result = primary__parser_115(p, mode_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
if (!(mode_2 == ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)3))) goto LA3_;
|
|
mode_2 = ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)0);
|
|
}
|
|
LA3_: ;
|
|
{
|
|
NIM_BOOL T7_;
|
|
NIM_BOOL T8_;
|
|
NIM_BOOL T10_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* pragmaExp;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
T7_ = (NIM_BOOL)0;
|
|
T8_ = (NIM_BOOL)0;
|
|
T8_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)98));
|
|
if (!(T8_)) goto LA9_;
|
|
T10_ = (NIM_BOOL)0;
|
|
T10_ = ((*p).tok.indent < ((NI)0));
|
|
if (T10_) goto LA11_;
|
|
T10_ = ((*p).currInd < (*p).tok.indent);
|
|
LA11_: ;
|
|
T8_ = T10_;
|
|
LA9_: ;
|
|
T7_ = T8_;
|
|
if (!(T7_)) goto LA12_;
|
|
T7_ = (mode_2 == ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)0));
|
|
LA12_: ;
|
|
if (!T7_) goto LA13_;
|
|
pragmaExp = NIM_NIL;
|
|
colontmpD_ = NIM_NIL;
|
|
pragmaExp = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)43), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
|
|
add__ast_6233(pragmaExp, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
|
|
colontmpD_ = parsePragma__parser_106(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
|
|
add__ast_6233(pragmaExp, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
|
|
eqsink___ast_3460(&result, pragmaExp);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA15_;
|
|
pragmaExp = 0;
|
|
{
|
|
LA15_:;
|
|
}
|
|
{
|
|
oldNimErrFin15_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&pragmaExp);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin15_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA13_: ;
|
|
T18_ = NIM_NIL;
|
|
T18_ = parseOperators__parser_862(p, result, limit, mode_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqsink___ast_3460(&result, T18_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, simpleExpr__parser_632)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA mode) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = simpleExprAux__parser_118(p, ((NI)-1), mode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseTuple__parser_1070)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, NIM_BOOL indentAllowed) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin7_;
|
|
NIM_BOOL oldNimErrFin25_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)134), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)92))) goto LA3_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
while (1) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
tySet_tyEnum_DeclaredIdentFlag__HSPwuC2cA03GCInmy9c3ngw T8_;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)2) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)112))) goto LA6 ;
|
|
a = NIM_NIL;
|
|
T8_ = 0;
|
|
a = parseIdentColonEquals__parser_1012(p, T8_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
{
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)102) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)103)))) goto LA11_;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA5;
|
|
}
|
|
LA11_: ;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
skipComment__parser_52(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
{
|
|
LA7_:;
|
|
}
|
|
{
|
|
oldNimErrFin7_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin7_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
} LA6: ;
|
|
} LA5: ;
|
|
optPar__parser_84(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eat__parser_79(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)93));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA1_;
|
|
LA3_: ;
|
|
{
|
|
if (!indentAllowed) goto LA16_;
|
|
skipComment__parser_52(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
NI oldIndX60gensym63_;
|
|
if (!((*p).currInd < (*p).tok.indent)) goto LA20_;
|
|
oldIndX60gensym63_ = (*p).currInd;
|
|
(*p).currInd = (*p).tok.indent;
|
|
rawSkipComment__parser_166(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
while (1) {
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)2):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)112):
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a_2;
|
|
tySet_tyEnum_DeclaredIdentFlag__HSPwuC2cA03GCInmy9c3ngw T26_;
|
|
a_2 = NIM_NIL;
|
|
T26_ = 0;
|
|
a_2 = parseIdentColonEquals__parser_1012(p, T26_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
|
|
{
|
|
NIM_BOOL T29_;
|
|
T29_ = (NIM_BOOL)0;
|
|
T29_ = ((*p).tok.indent < ((NI)0));
|
|
if (T29_) goto LA30_;
|
|
T29_ = ((*p).currInd <= (*p).tok.indent);
|
|
LA30_: ;
|
|
if (!T29_) goto LA31_;
|
|
rawSkipComment__parser_166(p, a_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
|
|
}
|
|
LA31_: ;
|
|
add__ast_6233(result, a_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
|
|
{
|
|
LA25_:;
|
|
}
|
|
{
|
|
oldNimErrFin25_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin25_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)1):
|
|
{
|
|
goto LA22;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
parMessage__parser_144((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_40, (&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA22;
|
|
}
|
|
break;
|
|
}
|
|
{
|
|
if (!!(((*p).tok.indent == (*p).currInd))) goto LA39_;
|
|
goto LA22;
|
|
}
|
|
LA39_: ;
|
|
}
|
|
} LA22: ;
|
|
(*p).currInd = oldIndX60gensym63_;
|
|
}
|
|
LA20_: ;
|
|
}
|
|
goto LA1_;
|
|
LA16_: ;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)90))) goto LA42_;
|
|
parMessage__parser_48((&(*p)), ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), TM__FlWBYIOz13qHfz9ae813gBA_42);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA1_;
|
|
LA42_: ;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T45_;
|
|
T45_ = NIM_NIL;
|
|
T45_ = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)135), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqsink___ast_3460(&result, T45_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA1_: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseEnum__parser_1302)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin29_;
|
|
NIM_BOOL oldNimErrFin3_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)150), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
add__ast_6233(result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
flexComment__parser_184(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
while (1) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* symPragma;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* pragma;
|
|
a = NIM_NIL;
|
|
symPragma = NIM_NIL;
|
|
pragma = NIM_NIL;
|
|
a = parseSymbol__parser_96(p, ((tyEnum_SymbolMode__MITZcP1QsFlXqKTZFVDgdQ)0));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
{
|
|
if (!((*a).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1))) goto LA6_;
|
|
eqdestroy___ast_3454(&pragma);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&symPragma);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto BeforeRet_;
|
|
}
|
|
LA6_: ;
|
|
eqcopy___ast_3457(&symPragma, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
pragma = 0;
|
|
{
|
|
NIM_BOOL T10_;
|
|
NIM_BOOL T11_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T16_;
|
|
T10_ = (NIM_BOOL)0;
|
|
T11_ = (NIM_BOOL)0;
|
|
T11_ = ((*p).tok.indent < ((NI)0));
|
|
if (T11_) goto LA12_;
|
|
T11_ = ((*p).currInd <= (*p).tok.indent);
|
|
LA12_: ;
|
|
T10_ = T11_;
|
|
if (!(T10_)) goto LA13_;
|
|
T10_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)98));
|
|
LA13_: ;
|
|
if (!T10_) goto LA14_;
|
|
pragma = optPragmas__parser_1134(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
T16_ = NIM_NIL;
|
|
T16_ = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)43), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
eqsink___ast_3460(&symPragma, T16_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
add__ast_6233(symPragma, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
add__ast_6233(symPragma, pragma);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
}
|
|
LA14_: ;
|
|
{
|
|
NIM_BOOL T19_;
|
|
T19_ = (NIM_BOOL)0;
|
|
T19_ = (((NI)0) <= (*p).tok.indent);
|
|
if (!(T19_)) goto LA20_;
|
|
T19_ = ((*p).tok.indent <= (*p).currInd);
|
|
LA20_: ;
|
|
if (!T19_) goto LA21_;
|
|
add__ast_6233(result, symPragma);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
eqdestroy___ast_3454(&pragma);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&symPragma);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA1;
|
|
}
|
|
LA21_: ;
|
|
{
|
|
NIM_BOOL T25_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* b;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T30_;
|
|
T25_ = (NIM_BOOL)0;
|
|
T25_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)106));
|
|
if (!(T25_)) goto LA26_;
|
|
T25_ = ((*p).tok.indent < ((NI)0));
|
|
LA26_: ;
|
|
if (!T25_) goto LA27_;
|
|
b = NIM_NIL;
|
|
colontmpD_ = NIM_NIL;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
|
|
optInd__parser_86(p, symPragma);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
|
|
b = symPragma;
|
|
symPragma = 0;
|
|
T30_ = NIM_NIL;
|
|
T30_ = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)151), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
|
|
eqsink___ast_3460(&symPragma, T30_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
|
|
add__ast_6233(symPragma, b);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
|
|
colontmpD_ = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
|
|
add__ast_6233(symPragma, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
|
|
{
|
|
NIM_BOOL T33_;
|
|
T33_ = (NIM_BOOL)0;
|
|
T33_ = ((*p).tok.indent < ((NI)0));
|
|
if (T33_) goto LA34_;
|
|
T33_ = ((*p).currInd <= (*p).tok.indent);
|
|
LA34_: ;
|
|
if (!T33_) goto LA35_;
|
|
rawSkipComment__parser_166(p, symPragma);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
|
|
}
|
|
LA35_: ;
|
|
{
|
|
LA29_:;
|
|
}
|
|
{
|
|
oldNimErrFin29_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
eqdestroy___ast_3454(&b);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
*nimErr_ = oldNimErrFin29_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
}
|
|
LA27_: ;
|
|
{
|
|
NIM_BOOL T41_;
|
|
T41_ = (NIM_BOOL)0;
|
|
T41_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)102));
|
|
if (!(T41_)) goto LA42_;
|
|
T41_ = ((*p).tok.indent < ((NI)0));
|
|
LA42_: ;
|
|
if (!T41_) goto LA43_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
rawSkipComment__parser_166(p, symPragma);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
}
|
|
goto LA39_;
|
|
LA43_: ;
|
|
{
|
|
{
|
|
NIM_BOOL T48_;
|
|
T48_ = (NIM_BOOL)0;
|
|
T48_ = ((*p).tok.indent < ((NI)0));
|
|
if (T48_) goto LA49_;
|
|
T48_ = ((*p).currInd <= (*p).tok.indent);
|
|
LA49_: ;
|
|
if (!T48_) goto LA50_;
|
|
rawSkipComment__parser_166(p, symPragma);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
}
|
|
LA50_: ;
|
|
}
|
|
LA39_: ;
|
|
add__ast_6233(result, symPragma);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
{
|
|
NIM_BOOL T54_;
|
|
NIM_BOOL T55_;
|
|
T54_ = (NIM_BOOL)0;
|
|
T55_ = (NIM_BOOL)0;
|
|
T55_ = (((NI)0) <= (*p).tok.indent);
|
|
if (!(T55_)) goto LA56_;
|
|
T55_ = ((*p).tok.indent <= (*p).currInd);
|
|
LA56_: ;
|
|
T54_ = T55_;
|
|
if (T54_) goto LA57_;
|
|
T54_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)1));
|
|
LA57_: ;
|
|
if (!T54_) goto LA58_;
|
|
eqdestroy___ast_3454(&pragma);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&symPragma);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA1;
|
|
}
|
|
LA58_: ;
|
|
{
|
|
LA3_:;
|
|
}
|
|
{
|
|
oldNimErrFin3_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&pragma);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&symPragma);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin3_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
} LA1: ;
|
|
{
|
|
NI T64_;
|
|
T64_ = (NI)0;
|
|
T64_ = len__ast_3325(result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
if (!(T64_ <= ((NI)1))) goto LA65_;
|
|
parMessage__parser_144((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_45, (&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA65_: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseObjectWhen__parser_2101)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin3_;
|
|
NIM_BOOL oldNimErrFin16_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)140), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
while (1) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* branch;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
|
|
if (!((*p).tok.indent == (*p).currInd)) goto LA2 ;
|
|
branch = NIM_NIL;
|
|
colontmpD_ = NIM_NIL;
|
|
colontmpD__2 = NIM_NIL;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
branch = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)86), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
optInd__parser_86(p, branch);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
colontmpD_ = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
add__ast_6233(branch, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
colcom__parser_311(p, branch);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
colontmpD__2 = parseObjectPart__parser_2099(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
add__ast_6233(branch, colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
flexComment__parser_184(p, branch);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
add__ast_6233(result, branch);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
{
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)21)))) goto LA6_;
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&branch);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA1;
|
|
}
|
|
LA6_: ;
|
|
{
|
|
LA3_:;
|
|
}
|
|
{
|
|
oldNimErrFin3_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&branch);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin3_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
} LA2: ;
|
|
} LA1: ;
|
|
{
|
|
NIM_BOOL T12_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* branch_2;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__3;
|
|
T12_ = (NIM_BOOL)0;
|
|
T12_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)22));
|
|
if (!(T12_)) goto LA13_;
|
|
T12_ = ((*p).tok.indent == (*p).currInd);
|
|
LA13_: ;
|
|
if (!T12_) goto LA14_;
|
|
branch_2 = NIM_NIL;
|
|
colontmpD__3 = NIM_NIL;
|
|
branch_2 = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)88), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
|
|
eat__parser_79(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)22));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
|
|
colcom__parser_311(p, branch_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
|
|
colontmpD__3 = parseObjectPart__parser_2099(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
|
|
add__ast_6233(branch_2, colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
|
|
flexComment__parser_184(p, branch_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
|
|
add__ast_6233(result, branch_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
|
|
{
|
|
LA16_:;
|
|
}
|
|
{
|
|
oldNimErrFin16_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&branch_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin16_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA14_: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseObjectCase__parser_2134)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
NIM_BOOL wasIndented;
|
|
NI oldInd;
|
|
NIM_BOOL oldNimErrFin12_;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
a = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)139), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
getTokNoInd__parser_197(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
a = parseIdentColonEquals__parser_1012(p, 1);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)104))) goto LA4_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA4_: ;
|
|
flexComment__parser_184(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
wasIndented = NIM_FALSE;
|
|
oldInd = (*p).currInd;
|
|
{
|
|
if (!((*p).currInd < (*p).tok.indent)) goto LA8_;
|
|
(*p).currInd = (*p).tok.indent;
|
|
wasIndented = NIM_TRUE;
|
|
}
|
|
LA8_: ;
|
|
{
|
|
while (1) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* b;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* fields;
|
|
if (!((*p).tok.indent == (*p).currInd)) goto LA11 ;
|
|
b = NIM_NIL;
|
|
fields = NIM_NIL;
|
|
b = 0;
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)48):
|
|
{
|
|
b = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)85), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
exprList__parser_402(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)104), b);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)22):
|
|
{
|
|
b = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)88), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
eqdestroy___ast_3454(&fields);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqdestroy___ast_3454(&b);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
goto LA10;
|
|
}
|
|
break;
|
|
}
|
|
colcom__parser_311(p, b);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
fields = parseObjectPart__parser_2099(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T20_;
|
|
if (!((*fields).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1))) goto LA18_;
|
|
parMessage__parser_144((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_47, (&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
T20_ = NIM_NIL;
|
|
T20_ = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)23), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
eqsink___ast_3460(&fields, T20_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
}
|
|
LA18_: ;
|
|
add__ast_6233(b, fields);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
add__ast_6233(result, b);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
{
|
|
if (!((*b).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)88))) goto LA23_;
|
|
eqdestroy___ast_3454(&fields);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqdestroy___ast_3454(&b);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
goto LA10;
|
|
}
|
|
LA23_: ;
|
|
{
|
|
LA12_:;
|
|
}
|
|
{
|
|
oldNimErrFin12_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&fields);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqdestroy___ast_3454(&b);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin12_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
} LA11: ;
|
|
} LA10: ;
|
|
{
|
|
if (!wasIndented) goto LA29_;
|
|
(*p).currInd = oldInd;
|
|
}
|
|
LA29_: ;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseObjectPart__parser_2099)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin8_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
{
|
|
NI oldIndX60gensym149_;
|
|
if (!((*p).currInd < (*p).tok.indent)) goto LA3_;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)138), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
oldIndX60gensym149_ = (*p).currInd;
|
|
(*p).currInd = (*p).tok.indent;
|
|
rawSkipComment__parser_166(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
while (1) {
|
|
if (!((*p).tok.indent == (*p).currInd)) goto LA6 ;
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)10):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)65):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)2):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)112):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)44):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)17):
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
colontmpD_ = NIM_NIL;
|
|
colontmpD_ = parseObjectPart__parser_2099(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
{
|
|
LA8_:;
|
|
}
|
|
{
|
|
oldNimErrFin8_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin8_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
parMessage__parser_144((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_46, (&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA5;
|
|
}
|
|
break;
|
|
}
|
|
} LA6: ;
|
|
} LA5: ;
|
|
(*p).currInd = oldIndX60gensym149_;
|
|
}
|
|
goto LA1_;
|
|
LA3_: ;
|
|
{
|
|
NIM_BOOL T13_;
|
|
T13_ = (NIM_BOOL)0;
|
|
T13_ = ((*p).tok.indent == (*p).currInd);
|
|
if (T13_) goto LA14_;
|
|
T13_ = ((*p).tok.indent < ((NI)0));
|
|
LA14_: ;
|
|
if (!T13_) goto LA15_;
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)65):
|
|
{
|
|
result = parseObjectWhen__parser_2101(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)10):
|
|
{
|
|
result = parseObjectCase__parser_2134(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)2):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)112):
|
|
{
|
|
result = parseIdentColonEquals__parser_1012(p, 1);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
NIM_BOOL T22_;
|
|
T22_ = (NIM_BOOL)0;
|
|
T22_ = ((*p).tok.indent < ((NI)0));
|
|
if (T22_) goto LA23_;
|
|
T22_ = ((*p).currInd <= (*p).tok.indent);
|
|
LA23_: ;
|
|
if (!T22_) goto LA24_;
|
|
rawSkipComment__parser_166(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA24_: ;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)44):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)17):
|
|
{
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)23), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
eqcopy___ast_3457(&result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
goto LA1_;
|
|
LA15_: ;
|
|
{
|
|
eqcopy___ast_3457(&result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA1_: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseObject__parser_1304)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin7_;
|
|
NIM_BOOL oldNimErrFin20_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)133), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
add__ast_6233(result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
NIM_BOOL T3_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
T3_ = (NIM_BOOL)0;
|
|
T3_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)48));
|
|
if (!(T3_)) goto LA4_;
|
|
T3_ = ((*p).tok.indent < ((NI)0));
|
|
LA4_: ;
|
|
if (!T3_) goto LA5_;
|
|
a = NIM_NIL;
|
|
colontmpD_ = NIM_NIL;
|
|
a = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)77), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
colontmpD_ = parseTypeDesc__parser_261(p, NIM_FALSE);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
add__ast_6233(a, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
{
|
|
LA7_:;
|
|
}
|
|
{
|
|
oldNimErrFin7_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin7_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA1_;
|
|
LA5_: ;
|
|
{
|
|
add__ast_6233(result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA1_: ;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)111))) goto LA13_;
|
|
skipComment__parser_52(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA13_: ;
|
|
{
|
|
if (!!(((*p).currInd < (*p).tok.indent))) goto LA17_;
|
|
add__ast_6233(result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA15_;
|
|
LA17_: ;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
|
|
colontmpD__2 = NIM_NIL;
|
|
colontmpD__2 = parseObjectPart__parser_2099(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
|
|
add__ast_6233(result, colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
|
|
{
|
|
LA20_:;
|
|
}
|
|
{
|
|
oldNimErrFin20_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin20_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA15_: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseTypeClassParam__parser_2211)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ colontmpD_;
|
|
tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ colontmpD__2;
|
|
tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ colontmpD__3;
|
|
tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ colontmpD__4;
|
|
tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ colontmpD__5;
|
|
tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ colontmpD__6;
|
|
tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ modifier;
|
|
NIM_BOOL oldNimErrFin11_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
colontmpD_ = (tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)0;
|
|
colontmpD__2 = (tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)0;
|
|
colontmpD__3 = (tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)0;
|
|
colontmpD__4 = (tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)0;
|
|
colontmpD__5 = (tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)0;
|
|
colontmpD__6 = (tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)0;
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)50):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)64):
|
|
{
|
|
colontmpD_ = ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)143);
|
|
modifier = colontmpD_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)52):
|
|
{
|
|
colontmpD__2 = ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)142);
|
|
modifier = colontmpD__2;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)54):
|
|
{
|
|
colontmpD__3 = ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)141);
|
|
modifier = colontmpD__3;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)58):
|
|
{
|
|
colontmpD__4 = ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)137);
|
|
modifier = colontmpD__4;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)62):
|
|
{
|
|
colontmpD__5 = ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)132);
|
|
modifier = colontmpD__5;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
colontmpD__6 = ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1);
|
|
modifier = colontmpD__6;
|
|
}
|
|
break;
|
|
}
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__7;
|
|
if (!!((modifier == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1)))) goto LA9_;
|
|
colontmpD__7 = NIM_NIL;
|
|
result = newNodeP__parser_55(modifier, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
|
|
colontmpD__7 = parseSymbol__parser_96(p, ((tyEnum_SymbolMode__MITZcP1QsFlXqKTZFVDgdQ)0));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
|
|
add__ast_6233(result, colontmpD__7);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
|
|
{
|
|
LA11_:;
|
|
}
|
|
{
|
|
oldNimErrFin11_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__7);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin11_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA7_;
|
|
LA9_: ;
|
|
{
|
|
result = parseSymbol__parser_96(p, ((tyEnum_SymbolMode__MITZcP1QsFlXqKTZFVDgdQ)0));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA7_: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
static N_INLINE(NIM_BOOL, validInd__parser_163)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
NIM_BOOL result;
|
|
NIM_BOOL T1_;
|
|
result = (NIM_BOOL)0;
|
|
T1_ = (NIM_BOOL)0;
|
|
T1_ = ((*p).tok.indent < ((NI)0));
|
|
if (T1_) goto LA2_;
|
|
T1_ = ((*p).currInd < (*p).tok.indent);
|
|
LA2_: ;
|
|
result = T1_;
|
|
return result;
|
|
}
|
|
static N_INLINE(NIM_BOOL, isNewStyleConcept__ast_6679)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
|
|
NIM_BOOL result;
|
|
result = (NIM_BOOL)0;
|
|
result = ((*(*n)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1));
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseTypeClass__parser_1306)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin12_;
|
|
NIM_BOOL oldNimErrFin9_;
|
|
NIM_BOOL oldNimErrFin24_;
|
|
NIM_BOOL oldNimErrFin37_;
|
|
NIM_BOOL oldNimErrFin34_;
|
|
NIM_BOOL oldNimErrFin61_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)136), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)111))) goto LA3_;
|
|
skipComment__parser_52(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA3_: ;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* args;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
if (!((*p).tok.indent < ((NI)0))) goto LA7_;
|
|
args = NIM_NIL;
|
|
colontmpD_ = NIM_NIL;
|
|
args = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)152), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
|
|
add__ast_6233(result, args);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
|
|
colontmpD_ = parseTypeClassParam__parser_2211(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
|
|
add__ast_6233(args, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
|
|
{
|
|
while (1) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)102))) goto LA11 ;
|
|
colontmpD__2 = NIM_NIL;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
colontmpD__2 = parseTypeClassParam__parser_2211(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
add__ast_6233(args, colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
{
|
|
LA12_:;
|
|
}
|
|
{
|
|
oldNimErrFin12_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
|
|
*nimErr_ = oldNimErrFin12_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
|
|
} LA11: ;
|
|
}
|
|
{
|
|
LA9_:;
|
|
}
|
|
{
|
|
oldNimErrFin9_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&args);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin9_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA5_;
|
|
LA7_: ;
|
|
{
|
|
add__ast_6233(result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA5_: ;
|
|
{
|
|
NIM_BOOL T20_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__3;
|
|
T20_ = (NIM_BOOL)0;
|
|
T20_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)98));
|
|
if (!(T20_)) goto LA21_;
|
|
T20_ = validInd__parser_163(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
LA21_: ;
|
|
if (!T20_) goto LA22_;
|
|
colontmpD__3 = NIM_NIL;
|
|
colontmpD__3 = parsePragma__parser_106(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
|
|
add__ast_6233(result, colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
|
|
{
|
|
LA24_:;
|
|
}
|
|
{
|
|
oldNimErrFin24_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin24_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA18_;
|
|
LA22_: ;
|
|
{
|
|
add__ast_6233(result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA18_: ;
|
|
{
|
|
NIM_BOOL T30_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
T30_ = (NIM_BOOL)0;
|
|
T30_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)48));
|
|
if (!(T30_)) goto LA31_;
|
|
T30_ = ((*p).tok.indent < ((NI)0));
|
|
LA31_: ;
|
|
if (!T30_) goto LA32_;
|
|
a = NIM_NIL;
|
|
a = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)77), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
|
|
{
|
|
while (1) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__4;
|
|
colontmpD__4 = NIM_NIL;
|
|
colontmpD__4 = parseTypeDesc__parser_261(p, NIM_FALSE);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA37_;
|
|
add__ast_6233(a, colontmpD__4);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA37_;
|
|
{
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)102)))) goto LA40_;
|
|
eqdestroy___ast_3454(&colontmpD__4);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
|
|
goto LA35;
|
|
}
|
|
LA40_: ;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA37_;
|
|
{
|
|
LA37_:;
|
|
}
|
|
{
|
|
oldNimErrFin37_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__4);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
|
|
*nimErr_ = oldNimErrFin37_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
|
|
}
|
|
} LA35: ;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
|
|
{
|
|
LA34_:;
|
|
}
|
|
{
|
|
oldNimErrFin34_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin34_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA28_;
|
|
LA32_: ;
|
|
{
|
|
add__ast_6233(result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA28_: ;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)111))) goto LA49_;
|
|
skipComment__parser_52(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA49_: ;
|
|
{
|
|
if (!!(((*p).currInd < (*p).tok.indent))) goto LA53_;
|
|
{
|
|
NIM_BOOL T57_;
|
|
T57_ = (NIM_BOOL)0;
|
|
T57_ = isNewStyleConcept__ast_6679(result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
if (!T57_) goto LA58_;
|
|
parMessage__parser_144((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_49, (&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA58_: ;
|
|
add__ast_6233(result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA51_;
|
|
LA53_: ;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__5;
|
|
colontmpD__5 = NIM_NIL;
|
|
colontmpD__5 = parseStmt__parser_259(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA61_;
|
|
add__ast_6233(result, colontmpD__5);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA61_;
|
|
{
|
|
LA61_:;
|
|
}
|
|
{
|
|
oldNimErrFin61_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__5);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin61_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA51_: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, binaryNot__parser_1354)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin5_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* notOpr;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* b;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)45))) goto LA3_;
|
|
notOpr = NIM_NIL;
|
|
b = NIM_NIL;
|
|
notOpr = newIdentNodeP__parser_70((*p).tok.ident, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
optInd__parser_86(p, notOpr);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
b = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)29), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
add__ast_6233(result, notOpr);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
add__ast_6233(result, b);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
{
|
|
LA5_:;
|
|
}
|
|
{
|
|
oldNimErrFin5_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&b);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(¬Opr);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin5_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA1_;
|
|
LA3_: ;
|
|
{
|
|
eqcopy___ast_3457(&result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA1_: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseTypeDefValue__parser_264)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin19_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T23_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)61):
|
|
{
|
|
result = parseTuple__parser_1070(p, NIM_TRUE);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)54):
|
|
{
|
|
result = parseTypeDescKAux__parser_1215(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)141), ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)2));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)52):
|
|
{
|
|
result = parseTypeDescKAux__parser_1215(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)142), ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)2));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)18):
|
|
{
|
|
result = parseTypeDescKAux__parser_1215(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)146), ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)2));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)24):
|
|
{
|
|
result = parseEnum__parser_1302(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)47):
|
|
{
|
|
result = parseObject__parser_1304(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)12):
|
|
{
|
|
result = parseTypeClass__parser_1306(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
result = simpleExpr__parser_632(p, ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)2));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T22_;
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)45)))) goto LA11_;
|
|
{
|
|
NIM_BOOL isFirstParam;
|
|
if (!((*result).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)26))) goto LA15_;
|
|
isFirstParam = NIM_FALSE;
|
|
{
|
|
while (1) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)102))) goto LA18 ;
|
|
colontmpD_ = NIM_NIL;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
|
|
colontmpD_ = commandParam__parser_800(p, (&isFirstParam), ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)2));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
|
|
{
|
|
LA19_:;
|
|
}
|
|
{
|
|
oldNimErrFin19_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin19_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
} LA18: ;
|
|
}
|
|
}
|
|
LA15_: ;
|
|
T22_ = NIM_NIL;
|
|
T22_ = postExprBlocks__parser_108(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqsink___ast_3460(&result, T22_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA11_: ;
|
|
}
|
|
break;
|
|
}
|
|
T23_ = NIM_NIL;
|
|
T23_ = binaryNot__parser_1354(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqsink___ast_3460(&result, T23_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size) {
|
|
int result;
|
|
result = (int)0;
|
|
result = memcmp(a, b, ((size_t) (size)));
|
|
return result;
|
|
}
|
|
static N_INLINE(NIM_BOOL, equalMem__system_1727)(void* a, void* b, NI size) {
|
|
NIM_BOOL result;
|
|
int T1_;
|
|
result = (NIM_BOOL)0;
|
|
T1_ = (int)0;
|
|
T1_ = nimCmpMem(a, b, size);
|
|
result = (T1_ == ((NI32)0));
|
|
return result;
|
|
}
|
|
static N_INLINE(NIM_BOOL, eqStrings)(NimStringV2 a, NimStringV2 b) {
|
|
NIM_BOOL result;
|
|
NI alen;
|
|
NI blen;
|
|
{ result = (NIM_BOOL)0;
|
|
alen = a.len;
|
|
blen = b.len;
|
|
{
|
|
if (!(alen == blen)) goto LA3_;
|
|
{
|
|
if (!(alen == ((NI)0))) goto LA7_;
|
|
result = NIM_TRUE;
|
|
goto BeforeRet_;
|
|
}
|
|
LA7_: ;
|
|
result = equalMem__system_1727(((void*) ((&a.p->data[((NI)0)]))), ((void*) ((&b.p->data[((NI)0)]))), ((NI) (alen)));
|
|
goto BeforeRet_;
|
|
}
|
|
LA3_: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, parseSymbolList__parser_1199)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result) {
|
|
NIM_BOOL oldNimErrFin3_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
{
|
|
while (1) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* s;
|
|
s = NIM_NIL;
|
|
s = parseSymbol__parser_96(p, ((tyEnum_SymbolMode__MITZcP1QsFlXqKTZFVDgdQ)1));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
{
|
|
if (!((*s).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1))) goto LA6_;
|
|
eqdestroy___ast_3454(&s);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA1;
|
|
}
|
|
LA6_: ;
|
|
add__ast_6233(result, s);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
{
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)102)))) goto LA10_;
|
|
eqdestroy___ast_3454(&s);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA1;
|
|
}
|
|
LA10_: ;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
optInd__parser_86(p, s);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
{
|
|
LA3_:;
|
|
}
|
|
{
|
|
oldNimErrFin3_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&s);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin3_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
} LA1: ;
|
|
}BeforeRet_: ;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseTypeDescKAux__parser_1215)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind, tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA mode) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL isTypedef;
|
|
NIM_BOOL T7_;
|
|
NIM_BOOL oldNimErrFin20_;
|
|
NIM_BOOL oldNimErrFin24_;
|
|
NIM_BOOL oldNimErrFin33_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = newNodeP__parser_55(kind, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
NIM_BOOL T3_;
|
|
T3_ = (NIM_BOOL)0;
|
|
T3_ = !(((*p).tok.indent == ((NI)-1)));
|
|
if (!(T3_)) goto LA4_;
|
|
T3_ = ((*p).tok.indent <= (*p).currInd);
|
|
LA4_: ;
|
|
if (!T3_) goto LA5_;
|
|
goto BeforeRet_;
|
|
}
|
|
LA5_: ;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
T7_ = (NIM_BOOL)0;
|
|
T7_ = (mode == ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)2));
|
|
if (!(T7_)) goto LA8_;
|
|
T7_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)47) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)61));
|
|
LA8_: ;
|
|
isTypedef = T7_;
|
|
{
|
|
NIM_BOOL T11_;
|
|
NIM_BOOL T12_;
|
|
T11_ = (NIM_BOOL)0;
|
|
T12_ = (NIM_BOOL)0;
|
|
T12_ = isOperator__parser_44((&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
T11_ = !(T12_);
|
|
if (!(T11_)) goto LA13_;
|
|
T11_ = isExprStart__parser_1196((&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
LA13_: ;
|
|
if (!T11_) goto LA14_;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
if (!isTypedef) goto LA18_;
|
|
colontmpD_ = NIM_NIL;
|
|
colontmpD_ = parseTypeDefValue__parser_264(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
|
|
{
|
|
LA20_:;
|
|
}
|
|
{
|
|
oldNimErrFin20_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin20_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA16_;
|
|
LA18_: ;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
|
|
colontmpD__2 = NIM_NIL;
|
|
colontmpD__2 = primary__parser_115(p, mode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
|
|
add__ast_6233(result, colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
|
|
{
|
|
LA24_:;
|
|
}
|
|
{
|
|
oldNimErrFin24_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin24_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA16_: ;
|
|
}
|
|
LA14_: ;
|
|
{
|
|
NIM_BOOL T29_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* list;
|
|
tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ nodeKind;
|
|
T29_ = (NIM_BOOL)0;
|
|
T29_ = (kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)146));
|
|
if (!(T29_)) goto LA30_;
|
|
T29_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)2));
|
|
LA30_: ;
|
|
if (!T29_) goto LA31_;
|
|
list = NIM_NIL;
|
|
nodeKind = (tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)0;
|
|
{
|
|
if (!eqStrings((*(*p).tok.ident).s, TM__FlWBYIOz13qHfz9ae813gBA_51)) goto LA36_;
|
|
nodeKind = ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)130);
|
|
}
|
|
goto LA34_;
|
|
LA36_: ;
|
|
{
|
|
if (!eqStrings((*(*p).tok.ident).s, TM__FlWBYIOz13qHfz9ae813gBA_53)) goto LA39_;
|
|
nodeKind = ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)131);
|
|
}
|
|
goto LA34_;
|
|
LA39_: ;
|
|
{
|
|
eqdestroy___ast_3454(&list);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto BeforeRet_;
|
|
}
|
|
LA34_: ;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
|
|
list = newNodeP__parser_55(nodeKind, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
|
|
add__ast_6233(result, list);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
|
|
parseSymbolList__parser_1199(p, list);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
|
|
{
|
|
LA33_:;
|
|
}
|
|
{
|
|
oldNimErrFin33_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&list);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin33_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA31_: ;
|
|
{
|
|
NIM_BOOL T46_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T50_;
|
|
T46_ = (NIM_BOOL)0;
|
|
T46_ = (mode == ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)2));
|
|
if (!(T46_)) goto LA47_;
|
|
T46_ = !(isTypedef);
|
|
LA47_: ;
|
|
if (!T46_) goto LA48_;
|
|
T50_ = NIM_NIL;
|
|
T50_ = parseOperators__parser_862(p, result, ((NI)-1), mode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqsink___ast_3460(&result, T50_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA48_: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseTypeDesc__parser_261)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, NIM_BOOL fullExpr) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T18_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
{
|
|
if (!fullExpr) goto LA3_;
|
|
result = simpleExpr__parser_632(p, ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)1));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA1_;
|
|
LA3_: ;
|
|
{
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)61):
|
|
{
|
|
result = parseTuple__parser_1070(p, NIM_FALSE);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)51):
|
|
{
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
result = parseProcExpr__parser_1163(p, NIM_FALSE, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)51));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)38):
|
|
{
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
result = parseProcExpr__parser_1163(p, NIM_FALSE, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)84));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)24):
|
|
{
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)150), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)47):
|
|
{
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)133), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)12):
|
|
{
|
|
parMessage__parser_148((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_44);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)64):
|
|
{
|
|
result = parseTypeDescKAux__parser_1215(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)143), ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)1));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)50):
|
|
{
|
|
result = parseTypeDescKAux__parser_1215(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)145), ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)1));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)54):
|
|
{
|
|
result = parseTypeDescKAux__parser_1215(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)141), ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)1));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)52):
|
|
{
|
|
result = parseTypeDescKAux__parser_1215(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)142), ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)1));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)18):
|
|
{
|
|
result = parseTypeDescKAux__parser_1215(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)146), ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)1));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
result = simpleExpr__parser_632(p, ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)1));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
LA1_: ;
|
|
T18_ = NIM_NIL;
|
|
T18_ = binaryNot__parser_1354(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqsink___ast_3460(&result, T18_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseIdentColonEquals__parser_1012)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tySet_tyEnum_DeclaredIdentFlag__HSPwuC2cA03GCInmy9c3ngw flags) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
NIM_BOOL oldNimErrFin25_;
|
|
NIM_BOOL oldNimErrFin29_;
|
|
NIM_BOOL oldNimErrFin42_;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
a = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)35), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
while (1) {
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)2):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)112):
|
|
{
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T9_;
|
|
if (!((flags &((NU8)1<<((NU)((((tyEnum_DeclaredIdentFlag__HSPwuC2cA03GCInmy9c3ngw)0)))&7U)))!=0)) goto LA7_;
|
|
T9_ = NIM_NIL;
|
|
T9_ = identWithPragma__parser_987(p, ((flags &((NU8)1<<((NU)((((tyEnum_DeclaredIdentFlag__HSPwuC2cA03GCInmy9c3ngw)2)))&7U)))!=0));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqsink___ast_3460(&a, T9_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
goto LA5_;
|
|
LA7_: ;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T11_;
|
|
T11_ = NIM_NIL;
|
|
T11_ = parseSymbol__parser_96(p, ((tyEnum_SymbolMode__MITZcP1QsFlXqKTZFVDgdQ)0));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqsink___ast_3460(&a, T11_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA5_: ;
|
|
{
|
|
if (!((*a).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1))) goto LA14_;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto BeforeRet_;
|
|
}
|
|
LA14_: ;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
goto LA2;
|
|
}
|
|
break;
|
|
}
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)102)))) goto LA19_;
|
|
goto LA2;
|
|
}
|
|
LA19_: ;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
optInd__parser_86(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
} LA2: ;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)104))) goto LA23_;
|
|
colontmpD_ = NIM_NIL;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
|
|
colontmpD_ = parseTypeDesc__parser_261(p, NIM_TRUE);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
|
|
{
|
|
LA25_:;
|
|
}
|
|
{
|
|
oldNimErrFin25_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin25_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
goto LA21_;
|
|
LA23_: ;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
|
|
colontmpD__2 = NIM_NIL;
|
|
colontmpD__2 = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
|
|
add__ast_6233(result, colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
|
|
{
|
|
NIM_BOOL T32_;
|
|
T32_ = (NIM_BOOL)0;
|
|
T32_ = !(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)106)));
|
|
if (!(T32_)) goto LA33_;
|
|
T32_ = !(((flags &((NU8)1<<((NU)((((tyEnum_DeclaredIdentFlag__HSPwuC2cA03GCInmy9c3ngw)1)))&7U)))!=0));
|
|
LA33_: ;
|
|
if (!T32_) goto LA34_;
|
|
parMessage__parser_144((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_55, (&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA29_;
|
|
}
|
|
LA34_: ;
|
|
{
|
|
LA29_:;
|
|
}
|
|
{
|
|
oldNimErrFin29_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin29_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA21_: ;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__3;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)106))) goto LA40_;
|
|
colontmpD__3 = NIM_NIL;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA42_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA42_;
|
|
colontmpD__3 = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA42_;
|
|
add__ast_6233(result, colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA42_;
|
|
{
|
|
LA42_:;
|
|
}
|
|
{
|
|
oldNimErrFin42_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin42_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
goto LA38_;
|
|
LA40_: ;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__4;
|
|
colontmpD__4 = NIM_NIL;
|
|
colontmpD__4 = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(result, colontmpD__4);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqdestroy___ast_3454(&colontmpD__4);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA38_: ;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseParamList__parser_266)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, NIM_BOOL retColon) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
NIM_BOOL colontmpD_;
|
|
NIM_BOOL colontmpD__2;
|
|
NIM_BOOL hasParLe;
|
|
NIM_BOOL T2_;
|
|
NIM_BOOL hasRet;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
a = NIM_NIL;
|
|
colontmpD_ = (NIM_BOOL)0;
|
|
colontmpD__2 = (NIM_BOOL)0;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)76), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
T2_ = (NIM_BOOL)0;
|
|
T2_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)90));
|
|
if (!(T2_)) goto LA3_;
|
|
T2_ = ((*p).tok.indent < ((NI)0));
|
|
LA3_: ;
|
|
hasParLe = T2_;
|
|
{
|
|
if (!hasParLe) goto LA6_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
while (1) {
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)2):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)112):
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T11_;
|
|
T11_ = NIM_NIL;
|
|
T11_ = parseIdentColonEquals__parser_1012(p, 3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqsink___ast_3460(&a, T11_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)91):
|
|
{
|
|
goto LA8;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)64):
|
|
{
|
|
parMessage__parser_48((&(*p)), ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), TM__FlWBYIOz13qHfz9ae813gBA_57);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
goto LA8;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
parMessage__parser_148((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_59);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
goto LA8;
|
|
}
|
|
break;
|
|
}
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)102) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)103)))) goto LA17_;
|
|
goto LA8;
|
|
}
|
|
LA17_: ;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
skipComment__parser_52(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
} LA8: ;
|
|
optPar__parser_84(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eat__parser_79(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)91));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA6_: ;
|
|
{
|
|
if (!retColon) goto LA21_;
|
|
colontmpD_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)104));
|
|
hasRet = colontmpD_;
|
|
}
|
|
goto LA19_;
|
|
LA21_: ;
|
|
{
|
|
NIM_BOOL T24_;
|
|
T24_ = (NIM_BOOL)0;
|
|
T24_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)110));
|
|
if (!(T24_)) goto LA25_;
|
|
T24_ = eqStrings((*(*p).tok.ident).s, TM__FlWBYIOz13qHfz9ae813gBA_61);
|
|
LA25_: ;
|
|
colontmpD__2 = T24_;
|
|
hasRet = colontmpD__2;
|
|
}
|
|
LA19_: ;
|
|
{
|
|
NIM_BOOL T28_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T32_;
|
|
T28_ = (NIM_BOOL)0;
|
|
T28_ = hasRet;
|
|
if (!(T28_)) goto LA29_;
|
|
T28_ = ((*p).tok.indent < ((NI)0));
|
|
LA29_: ;
|
|
if (!T28_) goto LA30_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
T32_ = NIM_NIL;
|
|
T32_ = parseTypeDesc__parser_261(p, NIM_FALSE);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqsink___ast_3460(&(*result)._kind_6.sons.p->data[((NI)0)], T32_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
goto LA26_;
|
|
LA30_: ;
|
|
{
|
|
NIM_BOOL T34_;
|
|
T34_ = (NIM_BOOL)0;
|
|
T34_ = !(retColon);
|
|
if (!(T34_)) goto LA35_;
|
|
T34_ = !(hasParLe);
|
|
LA35_: ;
|
|
if (!T34_) goto LA36_;
|
|
eqcopy___ast_3457(&result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
goto LA26_;
|
|
LA36_: ;
|
|
LA26_: ;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, makeCall__parser_1400)(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
{
|
|
if (!((*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)27) || (*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)29) || (*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)30) || (*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)31) || (*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)26) || (*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)28) || (*n).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)32))) goto LA3_;
|
|
eqcopy___ast_3457(&result, n);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA1_;
|
|
LA3_: ;
|
|
{
|
|
result = newNodeI__ast_3949(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)27), (*n).info);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
add__ast_6233(result, n);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA1_: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseDoBlock__parser_1141)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* params;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* pragmas;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T2_;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
params = NIM_NIL;
|
|
pragmas = NIM_NIL;
|
|
params = parseParamList__parser_266(p, NIM_FALSE);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
pragmas = optPragmas__parser_1134(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
colcom__parser_311(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
T2_ = NIM_NIL;
|
|
T2_ = parseStmt__parser_259(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqsink___ast_3460(&result, T2_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
NIM_BOOL T5_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T14_;
|
|
T5_ = (NIM_BOOL)0;
|
|
T5_ = !(((*params).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1)));
|
|
if (T5_) goto LA6_;
|
|
T5_ = !(((*pragmas).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1)));
|
|
LA6_: ;
|
|
if (!T5_) goto LA7_;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T13_;
|
|
if (!((*params).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1))) goto LA11_;
|
|
T13_ = NIM_NIL;
|
|
T13_ = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)76), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqsink___ast_3460(¶ms, T13_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(params, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA11_: ;
|
|
T14_ = NIM_NIL;
|
|
T14_ = newProcNode__ast_4889(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)52), info, result, params, (*p).emptyNode, (*p).emptyNode, (*p).emptyNode, pragmas, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqsink___ast_3460(&result, T14_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA7_: ;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&pragmas);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(¶ms);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, optionalExprList__parser_428)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ endTok, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result) {
|
|
NIM_BOOL oldNimErrFin5_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
while (1) {
|
|
NIM_BOOL T3_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
T3_ = (NIM_BOOL)0;
|
|
T3_ = !(((*p).tok.tokType == endTok));
|
|
if (!(T3_)) goto LA4_;
|
|
T3_ = !(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)1)));
|
|
LA4_: ;
|
|
if (!T3_) goto LA2 ;
|
|
a = NIM_NIL;
|
|
a = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
{
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)102)))) goto LA8_;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA1;
|
|
}
|
|
LA8_: ;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
optInd__parser_86(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
{
|
|
LA5_:;
|
|
}
|
|
{
|
|
oldNimErrFin5_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin5_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
} LA2: ;
|
|
} LA1: ;
|
|
}BeforeRet_: ;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, postExprBlocks__parser_108)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* x) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* openingParams;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* openingPragmas;
|
|
NIM_BOOL oldNimErrFin21_;
|
|
NIM_BOOL oldNimErrFin51_;
|
|
NIM_BOOL oldNimErrFin48_;
|
|
NIM_BOOL oldNimErrFin42_;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
openingParams = NIM_NIL;
|
|
openingPragmas = NIM_NIL;
|
|
eqcopy___ast_3457(&result, x);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
if (!(((NI)0) <= (*p).tok.indent)) goto LA4_;
|
|
eqdestroy___ast_3454(&openingPragmas);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&openingParams);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto BeforeRet_;
|
|
}
|
|
LA4_: ;
|
|
eqcopy___ast_3457(&openingParams, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqcopy___ast_3457(&openingPragmas, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T10_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T11_;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)20))) goto LA8_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
T10_ = NIM_NIL;
|
|
T10_ = parseParamList__parser_266(p, NIM_FALSE);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqsink___ast_3460(&openingParams, T10_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
T11_ = NIM_NIL;
|
|
T11_ = optPragmas__parser_1134(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqsink___ast_3460(&openingPragmas, T11_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA8_: ;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T16_;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)104))) goto LA14_;
|
|
T16_ = NIM_NIL;
|
|
T16_ = makeCall__parser_1400(result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqsink___ast_3460(&result, T16_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
skipComment__parser_52(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* stmtList;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)48) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)21) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)22) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)25)))) goto LA19_;
|
|
stmtList = NIM_NIL;
|
|
colontmpD_ = NIM_NIL;
|
|
stmtList = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)115), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
|
|
colontmpD_ = parseStmt__parser_259(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
|
|
add__ast_6233(stmtList, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
|
|
{
|
|
if (!((*(*stmtList)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)115))) goto LA24_;
|
|
eqcopy___ast_3457(&stmtList, (*stmtList)._kind_6.sons.p->data[((NI)0)]);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
|
|
}
|
|
LA24_: ;
|
|
(*stmtList).flags |= ((NU32)1)<<(((((tyEnum_TNodeFlag__69c8WThOUT3nlaj2cOZ9c2dw)16))) & 31);
|
|
{
|
|
NIM_BOOL T28_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
|
|
T28_ = (NIM_BOOL)0;
|
|
T28_ = !(((*openingParams).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1)));
|
|
if (T28_) goto LA29_;
|
|
T28_ = !(((*openingPragmas).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1)));
|
|
LA29_: ;
|
|
if (!T28_) goto LA30_;
|
|
colontmpD__2 = NIM_NIL;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T36_;
|
|
if (!((*openingParams).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1))) goto LA34_;
|
|
T36_ = NIM_NIL;
|
|
T36_ = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)76), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
|
|
eqsink___ast_3460(&openingParams, T36_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
|
|
add__ast_6233(openingParams, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
|
|
}
|
|
LA34_: ;
|
|
colontmpD__2 = newProcNode__ast_4889(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)52), (*stmtList).info, stmtList, openingParams, (*p).emptyNode, (*p).emptyNode, (*p).emptyNode, openingPragmas, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
|
|
add__ast_6233(result, colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
|
|
}
|
|
goto LA26_;
|
|
LA30_: ;
|
|
{
|
|
add__ast_6233(result, stmtList);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
|
|
}
|
|
LA26_: ;
|
|
{
|
|
LA21_:;
|
|
}
|
|
{
|
|
oldNimErrFin21_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqdestroy___ast_3454(&stmtList);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin21_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA19_: ;
|
|
{
|
|
while (1) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* nextBlock;
|
|
tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ nextToken;
|
|
if (!((*p).tok.indent == (*p).currInd)) goto LA41 ;
|
|
nextBlock = NIM_NIL;
|
|
nextBlock = 0;
|
|
nextToken = (*p).tok.tokType;
|
|
{
|
|
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info;
|
|
if (!(nextToken == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)20))) goto LA45_;
|
|
info = parLineInfo__parser_77((&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA42_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA42_;
|
|
nextBlock = parseDoBlock__parser_1141(p, info);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA42_;
|
|
}
|
|
goto LA43_;
|
|
LA45_: ;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__3;
|
|
colontmpD__3 = NIM_NIL;
|
|
switch (nextToken) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)48):
|
|
{
|
|
nextBlock = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)85), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA48_;
|
|
exprList__parser_402(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)104), nextBlock);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA48_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)21):
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__4;
|
|
colontmpD__4 = NIM_NIL;
|
|
nextBlock = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)86), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA51_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA51_;
|
|
optInd__parser_86(p, nextBlock);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA51_;
|
|
colontmpD__4 = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA51_;
|
|
add__ast_6233(nextBlock, colontmpD__4);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA51_;
|
|
{
|
|
LA51_:;
|
|
}
|
|
{
|
|
oldNimErrFin51_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__4);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA48_;
|
|
*nimErr_ = oldNimErrFin51_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA48_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)25):
|
|
{
|
|
nextBlock = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)87), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA48_;
|
|
optionalExprList__parser_428(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)104), nextBlock);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA48_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)27):
|
|
{
|
|
nextBlock = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)107), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA48_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA48_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)22):
|
|
{
|
|
nextBlock = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)88), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA48_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA48_;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
eqdestroy___ast_3454(&colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA42_;
|
|
eqdestroy___ast_3454(&nextBlock);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
goto LA40;
|
|
}
|
|
break;
|
|
}
|
|
eat__parser_79(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)104));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA48_;
|
|
colontmpD__3 = parseStmt__parser_259(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA48_;
|
|
add__ast_6233(nextBlock, colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA48_;
|
|
{
|
|
LA48_:;
|
|
}
|
|
{
|
|
oldNimErrFin48_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA42_;
|
|
*nimErr_ = oldNimErrFin48_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA42_;
|
|
}
|
|
LA43_: ;
|
|
(*nextBlock).flags |= ((NU32)1)<<(((((tyEnum_TNodeFlag__69c8WThOUT3nlaj2cOZ9c2dw)16))) & 31);
|
|
add__ast_6233(result, nextBlock);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA42_;
|
|
{
|
|
if (!((*nextBlock).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)88) || (*nextBlock).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)107))) goto LA62_;
|
|
eqdestroy___ast_3454(&nextBlock);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
goto LA40;
|
|
}
|
|
LA62_: ;
|
|
{
|
|
LA42_:;
|
|
}
|
|
{
|
|
oldNimErrFin42_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&nextBlock);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin42_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
} LA41: ;
|
|
} LA40: ;
|
|
}
|
|
goto LA12_;
|
|
LA14_: ;
|
|
{
|
|
{
|
|
if (!!(((*openingParams).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1)))) goto LA69_;
|
|
parMessage__parser_148((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_63);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA69_: ;
|
|
}
|
|
LA12_: ;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&openingPragmas);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&openingParams);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseReturnOrRaise__parser_1616)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin14_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = newNodeP__parser_55(kind, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)111))) goto LA3_;
|
|
skipComment__parser_52(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
add__ast_6233(result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA1_;
|
|
LA3_: ;
|
|
{
|
|
NIM_BOOL T6_;
|
|
NIM_BOOL T7_;
|
|
NIM_BOOL T10_;
|
|
T6_ = (NIM_BOOL)0;
|
|
T7_ = (NIM_BOOL)0;
|
|
T7_ = (((NI)0) <= (*p).tok.indent);
|
|
if (!(T7_)) goto LA8_;
|
|
T7_ = ((*p).tok.indent <= (*p).currInd);
|
|
LA8_: ;
|
|
T6_ = T7_;
|
|
if (T6_) goto LA9_;
|
|
T10_ = (NIM_BOOL)0;
|
|
T10_ = isExprStart__parser_1196((&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
T6_ = !(T10_);
|
|
LA9_: ;
|
|
if (!T6_) goto LA11_;
|
|
add__ast_6233(result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA1_;
|
|
LA11_: ;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* e;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T15_;
|
|
e = NIM_NIL;
|
|
e = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
|
|
T15_ = NIM_NIL;
|
|
T15_ = postExprBlocks__parser_108(p, e);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
|
|
eqsink___ast_3460(&e, T15_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
|
|
add__ast_6233(result, e);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
|
|
{
|
|
LA14_:;
|
|
}
|
|
{
|
|
oldNimErrFin14_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&e);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin14_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA1_: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseModuleName__parser_1542)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseImport__parser_1546)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
a = NIM_NIL;
|
|
result = newNodeP__parser_55(kind, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
a = parseModuleName__parser_1542(p, kind);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)102) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)25))) goto LA4_;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)25))) goto LA8_;
|
|
transitionSonsKind__ast_5759(result, ((tyEnum_TNodeKind__ibNAumaBpWjeer4yEB9aB2w) ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)(kind + ((NI)1)))));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA8_: ;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
while (1) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T12_;
|
|
(*p).hasProgress = NIM_FALSE;
|
|
T12_ = NIM_NIL;
|
|
T12_ = parseModuleName__parser_1542(p, kind);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqsink___ast_3460(&a, T12_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
NIM_BOOL T15_;
|
|
T15_ = (NIM_BOOL)0;
|
|
T15_ = ((*a).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1));
|
|
if (T15_) goto LA16_;
|
|
T15_ = !((*p).hasProgress);
|
|
LA16_: ;
|
|
if (!T15_) goto LA17_;
|
|
goto LA10;
|
|
}
|
|
LA17_: ;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)102)))) goto LA21_;
|
|
goto LA10;
|
|
}
|
|
LA21_: ;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
optInd__parser_86(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
} LA10: ;
|
|
}
|
|
LA4_: ;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseFromStmt__parser_1596)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
a = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)120), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
a = parseModuleName__parser_1542(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)116));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eat__parser_79(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)32));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
while (1) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T4_;
|
|
(*p).hasProgress = NIM_FALSE;
|
|
T4_ = NIM_NIL;
|
|
T4_ = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqsink___ast_3460(&a, T4_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
NIM_BOOL T7_;
|
|
T7_ = (NIM_BOOL)0;
|
|
T7_ = ((*a).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1));
|
|
if (T7_) goto LA8_;
|
|
T7_ = !((*p).hasProgress);
|
|
LA8_: ;
|
|
if (!T7_) goto LA9_;
|
|
goto LA2;
|
|
}
|
|
LA9_: ;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)102)))) goto LA13_;
|
|
goto LA2;
|
|
}
|
|
LA13_: ;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
optInd__parser_86(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
} LA2: ;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseIncludeStmt__parser_1580)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin3_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)121), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
while (1) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
a = NIM_NIL;
|
|
(*p).hasProgress = NIM_FALSE;
|
|
a = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
{
|
|
NIM_BOOL T6_;
|
|
T6_ = (NIM_BOOL)0;
|
|
T6_ = ((*a).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1));
|
|
if (T6_) goto LA7_;
|
|
T6_ = !((*p).hasProgress);
|
|
LA7_: ;
|
|
if (!T6_) goto LA8_;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA1;
|
|
}
|
|
LA8_: ;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
{
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)102)))) goto LA12_;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA1;
|
|
}
|
|
LA12_: ;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
optInd__parser_86(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
{
|
|
LA3_:;
|
|
}
|
|
{
|
|
oldNimErrFin3_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin3_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
} LA1: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, newCommentStmt__parser_2004)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)125), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
commenteq___ast_1512(result, (*p).tok.literal);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseExprStmt__parser_111)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
NIM_BOOL oldNimErrFin6_;
|
|
NIM_BOOL oldNimErrFin20_;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
a = NIM_NIL;
|
|
a = simpleExpr__parser_632(p, ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)3));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* b;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T7_;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)106))) goto LA4_;
|
|
b = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)73), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
b = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
T7_ = NIM_NIL;
|
|
T7_ = postExprBlocks__parser_108(p, b);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
eqsink___ast_3460(&b, T7_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
add__ast_6233(result, b);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
{
|
|
LA6_:;
|
|
}
|
|
{
|
|
oldNimErrFin6_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&b);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin6_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
goto LA2_;
|
|
LA4_: ;
|
|
{
|
|
NIM_BOOL isFirstParam;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T32_;
|
|
isFirstParam = NIM_FALSE;
|
|
{
|
|
NIM_BOOL T13_;
|
|
tyArray__ITlg8UhAbnS7vsiPAhcspQ T17_;
|
|
NI baseIndent;
|
|
T13_ = (NIM_BOOL)0;
|
|
T13_ = ((*p).tok.indent < ((NI)0));
|
|
if (!(T13_)) goto LA14_;
|
|
T13_ = isExprStart__parser_1196((&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
LA14_: ;
|
|
if (!T13_) goto LA15_;
|
|
nimZeroMem((void*)T17_, sizeof(tyArray__ITlg8UhAbnS7vsiPAhcspQ));
|
|
T17_[0] = a;
|
|
result = newTreeI__ast_4003(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)26), (*a).info, T17_, 1);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
baseIndent = (*p).currInd;
|
|
{
|
|
while (1) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
colontmpD_ = NIM_NIL;
|
|
colontmpD_ = commandParam__parser_800(p, (&isFirstParam), ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)0));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
|
|
{
|
|
NIM_BOOL T23_;
|
|
NIM_BOOL T25_;
|
|
T23_ = (NIM_BOOL)0;
|
|
T23_ = !(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)102)));
|
|
if (T23_) goto LA24_;
|
|
T25_ = (NIM_BOOL)0;
|
|
T25_ = (((NI)0) <= (*p).tok.indent);
|
|
if (!(T25_)) goto LA26_;
|
|
T25_ = ((*p).tok.indent < baseIndent);
|
|
LA26_: ;
|
|
T23_ = T25_;
|
|
LA24_: ;
|
|
if (!T23_) goto LA27_;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
goto LA18;
|
|
}
|
|
LA27_: ;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
|
|
{
|
|
LA20_:;
|
|
}
|
|
{
|
|
oldNimErrFin20_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin20_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
} LA18: ;
|
|
}
|
|
goto LA11_;
|
|
LA15_: ;
|
|
{
|
|
result = a;
|
|
a = 0;
|
|
}
|
|
LA11_: ;
|
|
T32_ = NIM_NIL;
|
|
T32_ = postExprBlocks__parser_108(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqsink___ast_3460(&result, T32_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA2_: ;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, simpleStmt__parser_2446)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)55):
|
|
{
|
|
result = parseReturnOrRaise__parser_1616(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)109));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)53):
|
|
{
|
|
result = parseReturnOrRaise__parser_1616(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)108));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)68):
|
|
{
|
|
result = parseReturnOrRaise__parser_1616(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)104));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)17):
|
|
{
|
|
result = parseReturnOrRaise__parser_1616(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)114));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)9):
|
|
{
|
|
result = parseReturnOrRaise__parser_1616(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)110));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)14):
|
|
{
|
|
result = parseReturnOrRaise__parser_1616(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)111));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)98):
|
|
{
|
|
result = parseStmtPragma__parser_104(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)32):
|
|
{
|
|
result = parseImport__parser_1546(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)116));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)26):
|
|
{
|
|
result = parseImport__parser_1546(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)118));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)29):
|
|
{
|
|
result = parseFromStmt__parser_1596(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)34):
|
|
{
|
|
result = parseIncludeStmt__parser_1580(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)111):
|
|
{
|
|
result = newCommentStmt__parser_2004(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
{
|
|
NIM_BOOL T16_;
|
|
T16_ = (NIM_BOOL)0;
|
|
T16_ = isExprStart__parser_1196((&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
if (!T16_) goto LA17_;
|
|
result = parseExprStmt__parser_111(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA14_;
|
|
LA17_: ;
|
|
{
|
|
eqcopy___ast_3457(&result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA14_: ;
|
|
}
|
|
break;
|
|
}
|
|
{
|
|
if (!!(((*result).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1) || (*result).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)125)))) goto LA22_;
|
|
skipComment__parser_52(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA22_: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseStmt__parser_259)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin7_;
|
|
NIM_BOOL oldNimErrFin66_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
{
|
|
NI oldIndX60gensym180_;
|
|
if (!((*p).currInd < (*p).tok.indent)) goto LA3_;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)115), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
oldIndX60gensym180_ = (*p).currInd;
|
|
(*p).currInd = (*p).tok.indent;
|
|
{
|
|
while (1) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
a = NIM_NIL;
|
|
{
|
|
if (!((*p).tok.indent == (*p).currInd)) goto LA10_;
|
|
}
|
|
goto LA8_;
|
|
LA10_: ;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)103))) goto LA13_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
{
|
|
NIM_BOOL T17_;
|
|
T17_ = (NIM_BOOL)0;
|
|
T17_ = ((*p).tok.indent < ((NI)0));
|
|
if (T17_) goto LA18_;
|
|
T17_ = ((*p).tok.indent == (*p).currInd);
|
|
LA18_: ;
|
|
if (!T17_) goto LA19_;
|
|
}
|
|
goto LA15_;
|
|
LA19_: ;
|
|
{
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA5;
|
|
}
|
|
LA15_: ;
|
|
}
|
|
goto LA8_;
|
|
LA13_: ;
|
|
{
|
|
{
|
|
NIM_BOOL T25_;
|
|
T25_ = (NIM_BOOL)0;
|
|
T25_ = ((*p).currInd < (*p).tok.indent);
|
|
if (!(T25_)) goto LA26_;
|
|
T25_ = !(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)107)));
|
|
LA26_: ;
|
|
if (!T25_) goto LA27_;
|
|
parMessage__parser_148((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_20);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
}
|
|
LA27_: ;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA5;
|
|
}
|
|
LA8_: ;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)95) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)91) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)99) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)93))) goto LA31_;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA5;
|
|
}
|
|
LA31_: ;
|
|
(*p).hasProgress = NIM_FALSE;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)22) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)21))) goto LA35_;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA5;
|
|
}
|
|
LA35_: ;
|
|
a = complexOrSimpleStmt__parser_630(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
{
|
|
NIM_BOOL T39_;
|
|
T39_ = (NIM_BOOL)0;
|
|
T39_ = ((*a).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1));
|
|
if (!(T39_)) goto LA40_;
|
|
T39_ = !((*p).hasProgress);
|
|
LA40_: ;
|
|
if (!T39_) goto LA41_;
|
|
parMessage__parser_144((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_22, (&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA5;
|
|
}
|
|
goto LA37_;
|
|
LA41_: ;
|
|
{
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
}
|
|
LA37_: ;
|
|
{
|
|
NIM_BOOL T46_;
|
|
T46_ = (NIM_BOOL)0;
|
|
T46_ = !((*p).hasProgress);
|
|
if (!(T46_)) goto LA47_;
|
|
T46_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)1));
|
|
LA47_: ;
|
|
if (!T46_) goto LA48_;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA5;
|
|
}
|
|
LA48_: ;
|
|
{
|
|
LA7_:;
|
|
}
|
|
{
|
|
oldNimErrFin7_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin7_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
} LA5: ;
|
|
(*p).currInd = oldIndX60gensym180_;
|
|
}
|
|
goto LA1_;
|
|
LA3_: ;
|
|
{
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)31):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)66):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)10):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)60):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)28):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)8):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)6):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)51):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)30):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)38):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)40):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)62):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)13):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)65):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)64):
|
|
{
|
|
parMessage__parser_148((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_24);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqcopy___ast_3457(&result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
{
|
|
if (!(((NI)0) < (*p).inSemiStmtList)) goto LA57_;
|
|
result = simpleStmt__parser_2446(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
if (!((*result).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1))) goto LA61_;
|
|
parMessage__parser_144((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_64, (&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA61_: ;
|
|
}
|
|
goto LA55_;
|
|
LA57_: ;
|
|
{
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)115), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
while (1) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a_2;
|
|
NIM_BOOL err;
|
|
a_2 = NIM_NIL;
|
|
{
|
|
if (!(((NI)0) <= (*p).tok.indent)) goto LA69_;
|
|
parMessage__parser_148((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_65);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA66_;
|
|
}
|
|
LA69_: ;
|
|
(*p).hasProgress = NIM_FALSE;
|
|
a_2 = simpleStmt__parser_2446(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA66_;
|
|
err = !((*p).hasProgress);
|
|
{
|
|
if (!((*a_2).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1))) goto LA73_;
|
|
parMessage__parser_144((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_66, (&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA66_;
|
|
}
|
|
LA73_: ;
|
|
add__ast_6233(result, a_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA66_;
|
|
{
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)103)))) goto LA77_;
|
|
eqdestroy___ast_3454(&a_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA64;
|
|
}
|
|
LA77_: ;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA66_;
|
|
{
|
|
NIM_BOOL T81_;
|
|
T81_ = (NIM_BOOL)0;
|
|
T81_ = err;
|
|
if (!(T81_)) goto LA82_;
|
|
T81_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)1));
|
|
LA82_: ;
|
|
if (!T81_) goto LA83_;
|
|
eqdestroy___ast_3454(&a_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA64;
|
|
}
|
|
LA83_: ;
|
|
{
|
|
LA66_:;
|
|
}
|
|
{
|
|
oldNimErrFin66_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin66_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
} LA64: ;
|
|
}
|
|
LA55_: ;
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
LA1_: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseBlock__parser_113)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
NIM_BOOL oldNimErrFin7_;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
colontmpD_ = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)112), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
getTokNoInd__parser_197(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)104))) goto LA4_;
|
|
add__ast_6233(result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
goto LA2_;
|
|
LA4_: ;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
|
|
colontmpD__2 = NIM_NIL;
|
|
colontmpD__2 = parseSymbol__parser_96(p, ((tyEnum_SymbolMode__MITZcP1QsFlXqKTZFVDgdQ)0));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
add__ast_6233(result, colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
{
|
|
LA7_:;
|
|
}
|
|
{
|
|
oldNimErrFin7_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin7_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA2_: ;
|
|
colcom__parser_311(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
colontmpD_ = parseStmt__parser_259(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseVarTuple__parser_1255)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin3_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)36), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
while (1) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)2) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)112))) goto LA2 ;
|
|
a = NIM_NIL;
|
|
a = identWithPragma__parser_987(p, NIM_TRUE);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
{
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)102)))) goto LA6_;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA1;
|
|
}
|
|
LA6_: ;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
skipComment__parser_52(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
{
|
|
LA3_:;
|
|
}
|
|
{
|
|
oldNimErrFin3_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin3_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
} LA2: ;
|
|
} LA1: ;
|
|
add__ast_6233(result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
optPar__parser_84(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eat__parser_79(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)91));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseFor__parser_1257)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
|
|
NIM_BOOL oldNimErrFin6_;
|
|
NIM_BOOL oldNimErrFin17_;
|
|
NIM_BOOL oldNimErrFin10_;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
colontmpD_ = NIM_NIL;
|
|
colontmpD__2 = NIM_NIL;
|
|
getTokNoInd__parser_197(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)94), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__3;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)90))) goto LA4_;
|
|
colontmpD__3 = NIM_NIL;
|
|
colontmpD__3 = parseVarTuple__parser_1255(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
add__ast_6233(result, colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
|
|
{
|
|
LA6_:;
|
|
}
|
|
{
|
|
oldNimErrFin6_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin6_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
goto LA2_;
|
|
LA4_: ;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
a = NIM_NIL;
|
|
a = identWithPragma__parser_987(p, NIM_FALSE);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
|
|
{
|
|
while (1) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T20_;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)102))) goto LA12 ;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
|
|
optInd__parser_86(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__4;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)90))) goto LA15_;
|
|
colontmpD__4 = NIM_NIL;
|
|
colontmpD__4 = parseVarTuple__parser_1255(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
|
|
add__ast_6233(result, colontmpD__4);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
|
|
eqdestroy___ast_3454(&colontmpD__4);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
|
|
goto LA11;
|
|
{
|
|
LA17_:;
|
|
}
|
|
{
|
|
oldNimErrFin17_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__4);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
|
|
*nimErr_ = oldNimErrFin17_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
|
|
}
|
|
LA15_: ;
|
|
T20_ = NIM_NIL;
|
|
T20_ = identWithPragma__parser_987(p, NIM_FALSE);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
|
|
eqsink___ast_3460(&a, T20_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
|
|
} LA12: ;
|
|
} LA11: ;
|
|
{
|
|
LA10_:;
|
|
}
|
|
{
|
|
oldNimErrFin10_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin10_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA2_: ;
|
|
eat__parser_79(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)33));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
colontmpD_ = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
colcom__parser_311(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
colontmpD__2 = parseStmt__parser_259(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(result, colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseCase__parser_102)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* b;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
NIM_BOOL inElif;
|
|
NIM_BOOL wasIndented;
|
|
NI oldInd;
|
|
NIM_BOOL oldNimErrFin20_;
|
|
NIM_BOOL oldNimErrFin12_;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
b = NIM_NIL;
|
|
colontmpD_ = NIM_NIL;
|
|
inElif = NIM_FALSE;
|
|
wasIndented = NIM_FALSE;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)97), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
colontmpD_ = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)104))) goto LA4_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA4_: ;
|
|
skipComment__parser_52(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
oldInd = (*p).currInd;
|
|
{
|
|
if (!((*p).currInd < (*p).tok.indent)) goto LA8_;
|
|
(*p).currInd = (*p).tok.indent;
|
|
wasIndented = NIM_TRUE;
|
|
}
|
|
LA8_: ;
|
|
{
|
|
while (1) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
|
|
if (!((*p).tok.indent == (*p).currInd)) goto LA11 ;
|
|
colontmpD__2 = NIM_NIL;
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)48):
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T18_;
|
|
{
|
|
if (!inElif) goto LA16_;
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
goto LA10;
|
|
}
|
|
LA16_: ;
|
|
T18_ = NIM_NIL;
|
|
T18_ = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)85), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
eqsink___ast_3460(&b, T18_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
exprList__parser_402(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)104), b);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)21):
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__3;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T21_;
|
|
colontmpD__3 = NIM_NIL;
|
|
inElif = NIM_TRUE;
|
|
T21_ = NIM_NIL;
|
|
T21_ = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)86), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
|
|
eqsink___ast_3460(&b, T21_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
|
|
optInd__parser_86(p, b);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
|
|
colontmpD__3 = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
|
|
add__ast_6233(b, colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
|
|
{
|
|
LA20_:;
|
|
}
|
|
{
|
|
oldNimErrFin20_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
*nimErr_ = oldNimErrFin20_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)22):
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T25_;
|
|
T25_ = NIM_NIL;
|
|
T25_ = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)88), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
eqsink___ast_3460(&b, T25_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
goto LA10;
|
|
}
|
|
break;
|
|
}
|
|
colcom__parser_311(p, b);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
colontmpD__2 = parseStmt__parser_259(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
add__ast_6233(b, colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
add__ast_6233(result, b);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
{
|
|
if (!((*b).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)88))) goto LA29_;
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
goto LA10;
|
|
}
|
|
LA29_: ;
|
|
{
|
|
LA12_:;
|
|
}
|
|
{
|
|
oldNimErrFin12_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin12_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
} LA11: ;
|
|
} LA10: ;
|
|
{
|
|
if (!wasIndented) goto LA35_;
|
|
(*p).currInd = oldInd;
|
|
}
|
|
LA35_: ;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&b);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseTry__parser_99)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, NIM_BOOL isExpr) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* b;
|
|
NIM_BOOL oldNimErrFin8_;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
colontmpD_ = NIM_NIL;
|
|
b = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)106), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
colcom__parser_311(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
colontmpD_ = parseStmt__parser_259(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
b = ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL);
|
|
{
|
|
while (1) {
|
|
NIM_BOOL T4_;
|
|
NIM_BOOL T5_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
|
|
T4_ = (NIM_BOOL)0;
|
|
T5_ = (NIM_BOOL)0;
|
|
T5_ = ((*p).tok.indent == (*p).currInd);
|
|
if (T5_) goto LA6_;
|
|
T5_ = ((*p).tok.indent < ((NI)0));
|
|
LA6_: ;
|
|
T4_ = T5_;
|
|
if (T4_) goto LA7_;
|
|
T4_ = isExpr;
|
|
LA7_: ;
|
|
if (!T4_) goto LA3 ;
|
|
colontmpD__2 = NIM_NIL;
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)25):
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T10_;
|
|
T10_ = NIM_NIL;
|
|
T10_ = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)87), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
eqsink___ast_3460(&b, T10_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
optionalExprList__parser_428(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)104), b);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)27):
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T12_;
|
|
T12_ = NIM_NIL;
|
|
T12_ = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)107), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
eqsink___ast_3460(&b, T12_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
goto LA2;
|
|
}
|
|
break;
|
|
}
|
|
colcom__parser_311(p, b);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
colontmpD__2 = parseStmt__parser_259(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
add__ast_6233(b, colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
add__ast_6233(result, b);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
|
|
{
|
|
LA8_:;
|
|
}
|
|
{
|
|
oldNimErrFin8_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin8_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
} LA3: ;
|
|
} LA2: ;
|
|
{
|
|
if (!(b == ((tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*) NIM_NIL))) goto LA18_;
|
|
parMessage__parser_148((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_68);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA18_: ;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&b);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseExpr__parser_257)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)8):
|
|
{
|
|
result = parseBlock__parser_113(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)31):
|
|
{
|
|
result = parseIfOrWhenExpr__parser_635(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)48));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)28):
|
|
{
|
|
result = parseFor__parser_1257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)65):
|
|
{
|
|
result = parseIfOrWhenExpr__parser_635(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)93));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)10):
|
|
{
|
|
result = parseCase__parser_102(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)60):
|
|
{
|
|
result = parseTry__parser_99(p, NIM_TRUE);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
result = simpleExpr__parser_632(p, ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)0));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
}
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseIfOrWhen__parser_1637)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin3_;
|
|
NIM_BOOL oldNimErrFin22_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = newNodeP__parser_55(kind, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
while (1) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* branch;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
|
|
branch = NIM_NIL;
|
|
colontmpD_ = NIM_NIL;
|
|
colontmpD__2 = NIM_NIL;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
branch = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)86), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
optInd__parser_86(p, branch);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
colontmpD_ = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
add__ast_6233(branch, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
colcom__parser_311(p, branch);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
colontmpD__2 = parseStmt__parser_259(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
add__ast_6233(branch, colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
skipComment__parser_52(p, branch);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
add__ast_6233(result, branch);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
{
|
|
NIM_BOOL T6_;
|
|
NIM_BOOL T8_;
|
|
T6_ = (NIM_BOOL)0;
|
|
T6_ = !(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)21)));
|
|
if (T6_) goto LA7_;
|
|
T8_ = (NIM_BOOL)0;
|
|
T8_ = ((*p).tok.indent == (*p).currInd);
|
|
if (T8_) goto LA9_;
|
|
T8_ = ((*p).tok.indent < ((NI)0));
|
|
LA9_: ;
|
|
T6_ = !(T8_);
|
|
LA7_: ;
|
|
if (!T6_) goto LA10_;
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&branch);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA1;
|
|
}
|
|
LA10_: ;
|
|
{
|
|
LA3_:;
|
|
}
|
|
{
|
|
oldNimErrFin3_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&branch);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin3_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
} LA1: ;
|
|
{
|
|
NIM_BOOL T16_;
|
|
NIM_BOOL T18_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* branch_2;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__3;
|
|
T16_ = (NIM_BOOL)0;
|
|
T16_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)22));
|
|
if (!(T16_)) goto LA17_;
|
|
T18_ = (NIM_BOOL)0;
|
|
T18_ = ((*p).tok.indent == (*p).currInd);
|
|
if (T18_) goto LA19_;
|
|
T18_ = ((*p).tok.indent < ((NI)0));
|
|
LA19_: ;
|
|
T16_ = T18_;
|
|
LA17_: ;
|
|
if (!T16_) goto LA20_;
|
|
branch_2 = NIM_NIL;
|
|
colontmpD__3 = NIM_NIL;
|
|
branch_2 = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)88), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
|
|
eat__parser_79(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)22));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
|
|
colcom__parser_311(p, branch_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
|
|
colontmpD__3 = parseStmt__parser_259(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
|
|
add__ast_6233(branch_2, colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
|
|
add__ast_6233(result, branch_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
|
|
{
|
|
LA22_:;
|
|
}
|
|
{
|
|
oldNimErrFin22_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&branch_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin22_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA20_: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseWhile__parser_1705)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
colontmpD_ = NIM_NIL;
|
|
colontmpD__2 = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)96), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
colontmpD_ = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
colcom__parser_311(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
colontmpD__2 = parseStmt__parser_259(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(result, colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseExceptBlock__parser_1768)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
colontmpD_ = NIM_NIL;
|
|
result = newNodeP__parser_55(kind, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
colcom__parser_311(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
colontmpD_ = parseStmt__parser_259(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseStaticOrDefer__parser_1795)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ k) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
colontmpD_ = NIM_NIL;
|
|
result = newNodeP__parser_55(k, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
colcom__parser_311(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
colontmpD_ = parseStmt__parser_259(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseAsm__parser_1803)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin5_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)89), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTokNoInd__parser_197(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)98))) goto LA3_;
|
|
colontmpD_ = NIM_NIL;
|
|
colontmpD_ = parsePragma__parser_106(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
{
|
|
LA5_:;
|
|
}
|
|
{
|
|
oldNimErrFin5_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin5_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA1_;
|
|
LA3_: ;
|
|
{
|
|
add__ast_6233(result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA1_: ;
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)83):
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
|
|
colontmpD__2 = NIM_NIL;
|
|
colontmpD__2 = newStrNodeP__parser_66(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)20), (*p).tok.literal, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
add__ast_6233(result, colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)84):
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__3;
|
|
colontmpD__3 = NIM_NIL;
|
|
colontmpD__3 = newStrNodeP__parser_66(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)21), (*p).tok.literal, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
add__ast_6233(result, colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)85):
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__4;
|
|
colontmpD__4 = NIM_NIL;
|
|
colontmpD__4 = newStrNodeP__parser_66(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)22), (*p).tok.literal, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
add__ast_6233(result, colontmpD__4);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&colontmpD__4);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
parMessage__parser_148((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_70);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
add__ast_6233(result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto BeforeRet_;
|
|
}
|
|
break;
|
|
}
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parsePattern__parser_1903)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
eat__parser_79(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)94));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
result = parseStmt__parser_259(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eat__parser_79(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)95));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, expectIdent__parser_75)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
{
|
|
NimStringV2 colontmpD_;
|
|
NimStringV2 T6_;
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)2)))) goto LA3_;
|
|
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
|
|
T6_.len = 0; T6_.p = NIM_NIL;
|
|
T6_ = prettyTok__lexer_252((&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
colontmpD_ = nsuFormatSingleElem(TM__FlWBYIOz13qHfz9ae813gBA_75, T6_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
lexMessage__lexer_390((&(*p).lex), ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
{
|
|
LA5_:;
|
|
}
|
|
{
|
|
eqdestroy___stdZassertions_13((&colontmpD_));
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA3_: ;
|
|
}BeforeRet_: ;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseGenericParam__parser_1834)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
NIM_BOOL oldNimErrFin5_;
|
|
NIM_BOOL oldNimErrFin30_;
|
|
NIM_BOOL oldNimErrFin38_;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
a = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)35), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
while (1) {
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)33):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)50):
|
|
{
|
|
tyObject_TIdent__L29bfCasnfXpB7u88iPkwMA* x;
|
|
NimStringV2 colontmpD_;
|
|
NimStringV2 colontmpD__2;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__3;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__4;
|
|
NimStringV2 T6_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T12_;
|
|
x = NIM_NIL;
|
|
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
|
|
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
|
|
colontmpD__3 = NIM_NIL;
|
|
colontmpD__4 = NIM_NIL;
|
|
T6_.len = 0; T6_.p = NIM_NIL;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)33))) goto LA9_;
|
|
colontmpD_ = TM__FlWBYIOz13qHfz9ae813gBA_72;
|
|
T6_ = colontmpD_;
|
|
}
|
|
goto LA7_;
|
|
LA9_: ;
|
|
{
|
|
colontmpD__2 = TM__FlWBYIOz13qHfz9ae813gBA_74;
|
|
T6_ = colontmpD__2;
|
|
}
|
|
LA7_: ;
|
|
x = getIdent__idents_166((*p).lex.cache, T6_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
T12_ = NIM_NIL;
|
|
T12_ = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)30), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
eqsink___ast_3460(&a, T12_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
colontmpD__3 = newIdentNodeP__parser_70(x, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
add__ast_6233(a, colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
expectIdent__parser_75((&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
colontmpD__4 = parseSymbol__parser_96(p, ((tyEnum_SymbolMode__MITZcP1QsFlXqKTZFVDgdQ)0));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
add__ast_6233(a, colontmpD__4);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
{
|
|
LA5_:;
|
|
}
|
|
{
|
|
oldNimErrFin5_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__4);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqdestroy___ast_3454(&colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqdestroy___stdZassertions_13((&colontmpD__2));
|
|
eqdestroy___stdZassertions_13((&colontmpD_));
|
|
eqdestroy___idents_133(&x);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin5_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)2):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)112):
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T16_;
|
|
T16_ = NIM_NIL;
|
|
T16_ = parseSymbol__parser_96(p, ((tyEnum_SymbolMode__MITZcP1QsFlXqKTZFVDgdQ)0));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqsink___ast_3460(&a, T16_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
if (!((*a).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1))) goto LA19_;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto BeforeRet_;
|
|
}
|
|
LA19_: ;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
goto LA2;
|
|
}
|
|
break;
|
|
}
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)102)))) goto LA24_;
|
|
goto LA2;
|
|
}
|
|
LA24_: ;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
optInd__parser_86(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
} LA2: ;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__5;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)104))) goto LA28_;
|
|
colontmpD__5 = NIM_NIL;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
|
|
colontmpD__5 = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
|
|
add__ast_6233(result, colontmpD__5);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA30_;
|
|
{
|
|
LA30_:;
|
|
}
|
|
{
|
|
oldNimErrFin30_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__5);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin30_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
goto LA26_;
|
|
LA28_: ;
|
|
{
|
|
add__ast_6233(result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA26_: ;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__6;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)106))) goto LA36_;
|
|
colontmpD__6 = NIM_NIL;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA38_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA38_;
|
|
colontmpD__6 = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA38_;
|
|
add__ast_6233(result, colontmpD__6);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA38_;
|
|
{
|
|
LA38_:;
|
|
}
|
|
{
|
|
oldNimErrFin38_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__6);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin38_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
goto LA34_;
|
|
LA36_: ;
|
|
{
|
|
add__ast_6233(result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA34_: ;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseGenericParamList__parser_1887)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin3_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)75), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
while (1) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)2) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)112) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)33) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)50))) goto LA2 ;
|
|
a = NIM_NIL;
|
|
a = parseGenericParam__parser_1834(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
{
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)102) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)103)))) goto LA6_;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA1;
|
|
}
|
|
LA6_: ;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
skipComment__parser_52(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
{
|
|
LA3_:;
|
|
}
|
|
{
|
|
oldNimErrFin3_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin3_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
} LA2: ;
|
|
} LA1: ;
|
|
optPar__parser_84(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eat__parser_79(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)93));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, indAndComment__parser_89)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* n, NIM_BOOL maybeMissEquals) {
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
{
|
|
if (!((*p).currInd < (*p).tok.indent)) goto LA3_;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)111))) goto LA7_;
|
|
rawSkipComment__parser_166(p, n);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA5_;
|
|
LA7_: ;
|
|
{
|
|
NimStringV2 colontmpD_;
|
|
NimStringV2 colontmpD__2;
|
|
NI col;
|
|
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info;
|
|
tyArray__nHXaesL0DJZHyVS07ARPRA T13_;
|
|
if (!maybeMissEquals) goto LA10_;
|
|
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
|
|
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
|
|
col = (NI)((*p).bufposPrevious - (*p).lineStartPrevious);
|
|
info = newLineInfo__msgs_408((*p).lex.fileIdx, (*p).lineNumberPrevious, col);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
colontmpD_ = dollar___msgs_675((*p).lex.config, info);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
T13_[0] = colontmpD_;
|
|
colontmpD__2 = nsuFormatOpenArray(TM__FlWBYIOz13qHfz9ae813gBA_77, T13_, 1);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
parMessage__parser_148((&(*p)), colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
{
|
|
LA12_:;
|
|
}
|
|
{
|
|
eqdestroy___stdZassertions_13((&colontmpD__2));
|
|
eqdestroy___stdZassertions_13((&colontmpD_));
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA5_;
|
|
LA10_: ;
|
|
{
|
|
parMessage__parser_148((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_78);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA5_: ;
|
|
}
|
|
goto LA1_;
|
|
LA3_: ;
|
|
{
|
|
skipComment__parser_52(p, n);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA1_: ;
|
|
}BeforeRet_: ;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseRoutine__parser_1906)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* body;
|
|
NimStringV2 colontmpD__3;
|
|
NIM_BOOL oldNimErrFin21_;
|
|
NIM_BOOL oldNimErrFin31_;
|
|
NIM_BOOL oldNimErrFin41_;
|
|
NIM_BOOL maybeMissEquals;
|
|
NIM_BOOL oldNimErrFin51_;
|
|
NI T55_;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
colontmpD_ = NIM_NIL;
|
|
colontmpD__2 = NIM_NIL;
|
|
body = NIM_NIL;
|
|
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
|
|
result = newNodeP__parser_55(kind, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
NIM_BOOL T4_;
|
|
tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ colontmpD__4;
|
|
tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ colontmpD__5;
|
|
tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ T8_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T14_;
|
|
T4_ = (NIM_BOOL)0;
|
|
T4_ = (kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)79) || kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)51) || kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)84) || kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)159));
|
|
if (!(T4_)) goto LA5_;
|
|
T4_ = !(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)2) || (*p).tok.tokType >= ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)3) && (*p).tok.tokType <= ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)68) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)112)));
|
|
LA5_: ;
|
|
if (!T4_) goto LA6_;
|
|
colontmpD__4 = (tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)0;
|
|
colontmpD__5 = (tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)0;
|
|
T8_ = (tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)0;
|
|
{
|
|
if (!(kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)79))) goto LA11_;
|
|
colontmpD__4 = ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)51);
|
|
T8_ = colontmpD__4;
|
|
}
|
|
goto LA9_;
|
|
LA11_: ;
|
|
{
|
|
colontmpD__5 = kind;
|
|
T8_ = colontmpD__5;
|
|
}
|
|
LA9_: ;
|
|
T14_ = NIM_NIL;
|
|
T14_ = parseProcExpr__parser_1163(p, NIM_TRUE, T8_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqsink___ast_3460(&result, T14_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqdestroy___stdZassertions_13((&colontmpD__3));
|
|
eqdestroy___ast_3454(&body);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto BeforeRet_;
|
|
}
|
|
LA6_: ;
|
|
colontmpD_ = identVis__parser_966(p, NIM_FALSE);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
NIM_BOOL T17_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__6;
|
|
T17_ = (NIM_BOOL)0;
|
|
T17_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)94));
|
|
if (!(T17_)) goto LA18_;
|
|
T17_ = validInd__parser_163(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
LA18_: ;
|
|
if (!T17_) goto LA19_;
|
|
colontmpD__6 = NIM_NIL;
|
|
colontmpD__6 = parsePattern__parser_1903(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
|
|
add__ast_6233(result, colontmpD__6);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA21_;
|
|
{
|
|
LA21_:;
|
|
}
|
|
{
|
|
oldNimErrFin21_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__6);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin21_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
goto LA15_;
|
|
LA19_: ;
|
|
{
|
|
add__ast_6233(result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA15_: ;
|
|
{
|
|
NIM_BOOL T27_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__7;
|
|
T27_ = (NIM_BOOL)0;
|
|
T27_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)92));
|
|
if (!(T27_)) goto LA28_;
|
|
T27_ = validInd__parser_163(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
LA28_: ;
|
|
if (!T27_) goto LA29_;
|
|
colontmpD__7 = NIM_NIL;
|
|
colontmpD__7 = parseGenericParamList__parser_1887(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
|
|
add__ast_6233(result, colontmpD__7);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA31_;
|
|
{
|
|
LA31_:;
|
|
}
|
|
{
|
|
oldNimErrFin31_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__7);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin31_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
goto LA25_;
|
|
LA29_: ;
|
|
{
|
|
add__ast_6233(result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA25_: ;
|
|
colontmpD__2 = parseParamList__parser_266(p, NIM_TRUE);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(result, colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
NIM_BOOL T37_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__8;
|
|
T37_ = (NIM_BOOL)0;
|
|
T37_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)98));
|
|
if (!(T37_)) goto LA38_;
|
|
T37_ = validInd__parser_163(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
LA38_: ;
|
|
if (!T37_) goto LA39_;
|
|
colontmpD__8 = NIM_NIL;
|
|
colontmpD__8 = parsePragma__parser_106(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA41_;
|
|
add__ast_6233(result, colontmpD__8);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA41_;
|
|
{
|
|
LA41_:;
|
|
}
|
|
{
|
|
oldNimErrFin41_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__8);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin41_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
goto LA35_;
|
|
LA39_: ;
|
|
{
|
|
add__ast_6233(result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA35_: ;
|
|
add__ast_6233(result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
maybeMissEquals = !(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)106)));
|
|
{
|
|
NIM_BOOL T47_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__9;
|
|
T47_ = (NIM_BOOL)0;
|
|
T47_ = !(maybeMissEquals);
|
|
if (!(T47_)) goto LA48_;
|
|
T47_ = validInd__parser_163(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
LA48_: ;
|
|
if (!T47_) goto LA49_;
|
|
colontmpD__9 = NIM_NIL;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA51_;
|
|
skipComment__parser_52(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA51_;
|
|
colontmpD__9 = parseStmt__parser_259(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA51_;
|
|
add__ast_6233(result, colontmpD__9);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA51_;
|
|
{
|
|
LA51_:;
|
|
}
|
|
{
|
|
oldNimErrFin51_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__9);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin51_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
goto LA45_;
|
|
LA49_: ;
|
|
{
|
|
add__ast_6233(result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA45_: ;
|
|
indAndComment__parser_89(p, result, maybeMissEquals);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
T55_ = (NI)0;
|
|
T55_ = len__ast_3325(result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqcopy___ast_3457(&body, (*result)._kind_6.sons.p->data[(NI)(T55_ - ((NI)1))]);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
NIM_BOOL T58_;
|
|
NIM_BOOL T59_;
|
|
NIM_BOOL T60_;
|
|
NI T62_;
|
|
NimStringV2 colontmpD__10;
|
|
T58_ = (NIM_BOOL)0;
|
|
T59_ = (NIM_BOOL)0;
|
|
T60_ = (NIM_BOOL)0;
|
|
T60_ = ((*body).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)115));
|
|
if (!(T60_)) goto LA61_;
|
|
T62_ = (NI)0;
|
|
T62_ = len__ast_3325(body);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
T60_ = (((NI)0) < T62_);
|
|
LA61_: ;
|
|
T59_ = T60_;
|
|
if (!(T59_)) goto LA63_;
|
|
colontmpD__3 = comment__ast_1148((*body)._kind_6.sons.p->data[((NI)0)]);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
T59_ = (((NI)0) < colontmpD__3.len);
|
|
LA63_: ;
|
|
T58_ = T59_;
|
|
if (!(T58_)) goto LA64_;
|
|
T58_ = !(((*(*body)._kind_6.sons.p->data[((NI)0)]).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)125)));
|
|
LA64_: ;
|
|
if (!T58_) goto LA65_;
|
|
colontmpD__10.len = 0; colontmpD__10.p = NIM_NIL;
|
|
{
|
|
NimStringV2 colontmpD__11;
|
|
colontmpD__10 = comment__ast_1148(result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA67_;
|
|
if (!(colontmpD__10.len == ((NI)0))) goto LA70_;
|
|
colontmpD__11.len = 0; colontmpD__11.p = NIM_NIL;
|
|
colontmpD__11 = comment__ast_1148((*body)._kind_6.sons.p->data[((NI)0)]);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA72_;
|
|
commenteq___ast_1512(result, colontmpD__11);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA72_;
|
|
commenteq___ast_1512((*body)._kind_6.sons.p->data[((NI)0)], TM__FlWBYIOz13qHfz9ae813gBA_79);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA72_;
|
|
{
|
|
LA72_:;
|
|
}
|
|
{
|
|
eqdestroy___stdZassertions_13((&colontmpD__11));
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA67_;
|
|
}
|
|
LA70_: ;
|
|
{
|
|
LA67_:;
|
|
}
|
|
{
|
|
eqdestroy___stdZassertions_13((&colontmpD__10));
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA65_: ;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___stdZassertions_13((&colontmpD__3));
|
|
eqdestroy___ast_3454(&body);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseSection__parser_2007)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ kind, tyProc__ksIJfeCPYsGjESaAKPnWWQ defparser) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin12_;
|
|
NIM_BOOL oldNimErrFin16_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = newNodeP__parser_55(kind, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
if (!!((kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)98)))) goto LA3_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA3_: ;
|
|
skipComment__parser_52(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
NI oldIndX60gensym133_;
|
|
if (!((*p).currInd < (*p).tok.indent)) goto LA7_;
|
|
oldIndX60gensym133_ = (*p).currInd;
|
|
(*p).currInd = (*p).tok.indent;
|
|
skipComment__parser_52(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
while (1) {
|
|
if (!((*p).tok.indent == (*p).currInd)) goto LA10 ;
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)2):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)112):
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)90):
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
a = NIM_NIL;
|
|
a = defparser(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
skipComment__parser_52(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
{
|
|
LA12_:;
|
|
}
|
|
{
|
|
oldNimErrFin12_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin12_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)111):
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a_2;
|
|
a_2 = NIM_NIL;
|
|
a_2 = newCommentStmt__parser_2004(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
|
|
add__ast_6233(result, a_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA16_;
|
|
{
|
|
LA16_:;
|
|
}
|
|
{
|
|
oldNimErrFin16_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a_2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin16_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
parMessage__parser_144((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_80, (&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA9;
|
|
}
|
|
break;
|
|
}
|
|
} LA10: ;
|
|
} LA9: ;
|
|
(*p).currInd = oldIndX60gensym133_;
|
|
{
|
|
NI T22_;
|
|
T22_ = (NI)0;
|
|
T22_ = len__ast_3325(result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
if (!(T22_ == ((NI)0))) goto LA23_;
|
|
parMessage__parser_144((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_81, (&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA23_: ;
|
|
}
|
|
goto LA5_;
|
|
LA7_: ;
|
|
{
|
|
NIM_BOOL T26_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
T26_ = (NIM_BOOL)0;
|
|
T26_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)2) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)112) || (*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)90));
|
|
if (!(T26_)) goto LA27_;
|
|
T26_ = ((*p).tok.indent < ((NI)0));
|
|
LA27_: ;
|
|
if (!T26_) goto LA28_;
|
|
colontmpD_ = NIM_NIL;
|
|
colontmpD_ = defparser(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA5_;
|
|
LA28_: ;
|
|
{
|
|
parMessage__parser_144((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_82, (&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA5_: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseTypeDef__parser_2296)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* identifier;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* identPragma;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* pragma;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* genericParam;
|
|
NIM_BOOL oldNimErrFin18_;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
identifier = NIM_NIL;
|
|
identPragma = NIM_NIL;
|
|
pragma = NIM_NIL;
|
|
genericParam = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)103), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
identifier = identVis__parser_966(p, NIM_TRUE);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqcopy___ast_3457(&identPragma, identifier);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
NIM_BOOL T4_;
|
|
T4_ = (NIM_BOOL)0;
|
|
T4_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)92));
|
|
if (!(T4_)) goto LA5_;
|
|
T4_ = validInd__parser_163(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
LA5_: ;
|
|
if (!T4_) goto LA6_;
|
|
genericParam = parseGenericParamList__parser_1887(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
goto LA2_;
|
|
LA6_: ;
|
|
{
|
|
eqcopy___ast_3457(&genericParam, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA2_: ;
|
|
pragma = optPragmas__parser_1134(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T13_;
|
|
if (!!(((*pragma).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1)))) goto LA11_;
|
|
T13_ = NIM_NIL;
|
|
T13_ = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)43), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqsink___ast_3460(&identPragma, T13_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(identPragma, identifier);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(identPragma, pragma);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA11_: ;
|
|
add__ast_6233(result, identPragma);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(result, genericParam);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg T19_;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)106))) goto LA16_;
|
|
colontmpD_ = NIM_NIL;
|
|
nimZeroMem((void*)(&T19_), sizeof(tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg));
|
|
T19_ = parLineInfo__parser_77((&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
|
|
(*result).info = T19_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
|
|
colontmpD_ = parseTypeDefValue__parser_264(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
|
|
{
|
|
LA18_:;
|
|
}
|
|
{
|
|
oldNimErrFin18_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin18_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
goto LA14_;
|
|
LA16_: ;
|
|
{
|
|
add__ast_6233(result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA14_: ;
|
|
indAndComment__parser_89(p, result, NIM_FALSE);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&genericParam);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&pragma);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&identPragma);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___ast_3454(&identifier);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseConstant__parser_2380)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
NIM_BOOL oldNimErrFin12_;
|
|
NIM_BOOL oldNimErrFin7_;
|
|
NI T18_;
|
|
NI T19_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T20_;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
colontmpD_ = NIM_NIL;
|
|
{
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)90))) goto LA4_;
|
|
result = parseVarTuple__parser_1255(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
goto LA2_;
|
|
LA4_: ;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__2;
|
|
colontmpD__2 = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)102), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
colontmpD__2 = identWithPragma__parser_987(p, NIM_FALSE);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
add__ast_6233(result, colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD__3;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)104))) goto LA10_;
|
|
colontmpD__3 = NIM_NIL;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
colontmpD__3 = parseTypeDesc__parser_261(p, NIM_FALSE);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
add__ast_6233(result, colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
|
|
{
|
|
LA12_:;
|
|
}
|
|
{
|
|
oldNimErrFin12_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__3);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
*nimErr_ = oldNimErrFin12_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
}
|
|
goto LA8_;
|
|
LA10_: ;
|
|
{
|
|
add__ast_6233(result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA7_;
|
|
}
|
|
LA8_: ;
|
|
{
|
|
LA7_:;
|
|
}
|
|
{
|
|
oldNimErrFin7_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD__2);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
*nimErr_ = oldNimErrFin7_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
}
|
|
LA2_: ;
|
|
eat__parser_79(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)106));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
colontmpD_ = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
T18_ = (NI)0;
|
|
T18_ = len__ast_3325(result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
T19_ = (NI)0;
|
|
T19_ = len__ast_3325(result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
T20_ = NIM_NIL;
|
|
T20_ = postExprBlocks__parser_108(p, (*result)._kind_6.sons.p->data[(NI)(T19_ - ((NI)1))]);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
eqsink___ast_3460(&(*result)._kind_6.sons.p->data[(NI)(T18_ - ((NI)1))], T20_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
indAndComment__parser_89(p, result, NIM_FALSE);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseVariable__parser_2359)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin5_;
|
|
NI T9_;
|
|
NI T10_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T11_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)90))) goto LA3_;
|
|
colontmpD_ = NIM_NIL;
|
|
result = parseVarTuple__parser_1255(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
eat__parser_79(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)106));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
colontmpD_ = parseExpr__parser_257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
|
|
{
|
|
LA5_:;
|
|
}
|
|
{
|
|
oldNimErrFin5_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin5_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA1_;
|
|
LA3_: ;
|
|
{
|
|
result = parseIdentColonEquals__parser_1012(p, 5);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA1_: ;
|
|
T9_ = (NI)0;
|
|
T9_ = len__ast_3325(result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
T10_ = (NI)0;
|
|
T10_ = len__ast_3325(result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
T11_ = NIM_NIL;
|
|
T11_ = postExprBlocks__parser_108(p, (*result)._kind_6.sons.p->data[(NI)(T10_ - ((NI)1))]);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqsink___ast_3460(&(*result)._kind_6.sons.p->data[(NI)(T9_ - ((NI)1))], T11_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
indAndComment__parser_89(p, result, NIM_FALSE);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, qualifiedIdent__parser_541)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = parseSymbol__parser_96(p, ((tyEnum_SymbolMode__MITZcP1QsFlXqKTZFVDgdQ)0));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T5_;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)107))) goto LA3_;
|
|
T5_ = NIM_NIL;
|
|
T5_ = dotExpr__parser_486(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqsink___ast_3460(&result, T5_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA3_: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseBind__parser_2417)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p, tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ k) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin3_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = newNodeP__parser_55(k, (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
optInd__parser_86(p, result);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
while (1) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
a = NIM_NIL;
|
|
a = qualifiedIdent__parser_541(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
{
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)102)))) goto LA6_;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
goto LA1;
|
|
}
|
|
LA6_: ;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
optInd__parser_86(p, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
{
|
|
LA3_:;
|
|
}
|
|
{
|
|
oldNimErrFin3_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin3_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
} LA1: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, complexOrSimpleStmt__parser_630)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin24_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)31):
|
|
{
|
|
result = parseIfOrWhen__parser_1637(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)92));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)66):
|
|
{
|
|
result = parseWhile__parser_1705(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)10):
|
|
{
|
|
result = parseCase__parser_102(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)60):
|
|
{
|
|
result = parseTry__parser_99(p, NIM_FALSE);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)27):
|
|
{
|
|
result = parseExceptBlock__parser_1768(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)107));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)25):
|
|
{
|
|
result = parseExceptBlock__parser_1768(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)87));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)28):
|
|
{
|
|
result = parseFor__parser_1257(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)8):
|
|
{
|
|
result = parseBlock__parser_113(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)58):
|
|
{
|
|
result = parseStaticOrDefer__parser_1795(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)113));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)16):
|
|
{
|
|
result = parseStaticOrDefer__parser_1795(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)105));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)6):
|
|
{
|
|
result = parseAsm__parser_1803(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)51):
|
|
{
|
|
result = parseRoutine__parser_1906(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)79));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)30):
|
|
{
|
|
result = parseRoutine__parser_1906(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)159));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)41):
|
|
{
|
|
result = parseRoutine__parser_1906(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)80));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)38):
|
|
{
|
|
result = parseRoutine__parser_1906(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)84));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)40):
|
|
{
|
|
result = parseRoutine__parser_1906(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)82));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)59):
|
|
{
|
|
result = parseRoutine__parser_1906(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)83));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)15):
|
|
{
|
|
result = parseRoutine__parser_1906(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)81));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)62):
|
|
{
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* colontmpD_;
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T25_;
|
|
if (!((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)90))) goto LA22_;
|
|
colontmpD_ = NIM_NIL;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)132), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
|
|
colontmpD_ = primary__parser_115(p, ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)1));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
|
|
add__ast_6233(result, colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
|
|
eat__parser_79(p, ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)91));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
|
|
T25_ = NIM_NIL;
|
|
T25_ = parseOperators__parser_862(p, result, ((NI)-1), ((tyEnum_PrimaryMode__XljJVQASk9c9bNYcPQs9avH9aA)0));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
|
|
eqsink___ast_3460(&result, T25_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
|
|
{
|
|
LA24_:;
|
|
}
|
|
{
|
|
oldNimErrFin24_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&colontmpD_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin24_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA20_;
|
|
LA22_: ;
|
|
{
|
|
result = parseSection__parser_2007(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)98), parseTypeDef__parser_2296);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA20_: ;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)13):
|
|
{
|
|
result = parseSection__parser_2007(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)101), parseConstant__parser_2380);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)39):
|
|
{
|
|
result = parseSection__parser_2007(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)100), parseVariable__parser_2359);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)64):
|
|
{
|
|
result = parseSection__parser_2007(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)99), parseVariable__parser_2359);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)65):
|
|
{
|
|
result = parseIfOrWhen__parser_1637(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)93));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)7):
|
|
{
|
|
result = parseBind__parser_2417(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)122));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)42):
|
|
{
|
|
result = parseBind__parser_2417(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)123));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)63):
|
|
{
|
|
result = parseSection__parser_2007(p, ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)124), parseVariable__parser_2359);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
result = simpleStmt__parser_2446(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
break;
|
|
}
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseAll__parser_38)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL oldNimErrFin3_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
result = newNodeP__parser_55(((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)115), (&(*p)));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
while (1) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* a;
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)1)))) goto LA2 ;
|
|
a = NIM_NIL;
|
|
(*p).hasProgress = NIM_FALSE;
|
|
a = complexOrSimpleStmt__parser_630(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
{
|
|
NIM_BOOL T6_;
|
|
T6_ = (NIM_BOOL)0;
|
|
T6_ = !(((*a).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1)));
|
|
if (!(T6_)) goto LA7_;
|
|
T6_ = (*p).hasProgress;
|
|
LA7_: ;
|
|
if (!T6_) goto LA8_;
|
|
add__ast_6233(result, a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
}
|
|
goto LA4_;
|
|
LA8_: ;
|
|
{
|
|
parMessage__parser_144((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_83, (&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
}
|
|
LA4_: ;
|
|
{
|
|
if (!!(((*p).tok.indent == ((NI)0)))) goto LA13_;
|
|
parMessage__parser_148((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_84);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
|
|
}
|
|
LA13_: ;
|
|
{
|
|
LA3_:;
|
|
}
|
|
{
|
|
oldNimErrFin3_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___ast_3454(&a);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
*nimErr_ = oldNimErrFin3_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
} LA2: ;
|
|
}
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, closeParser__parser_40)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
closeLexer__lexer_366((&(*p).lex));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
}
|
|
static N_INLINE(NI, minuspercent___system_790)(NI x, NI y) {
|
|
NI result;
|
|
result = (NI)0;
|
|
result = ((NI) ((NU)((NU32)(((NU) (x))) - (NU32)(((NU) (y))))));
|
|
return result;
|
|
}
|
|
static N_INLINE(NIM_BOOL, nimDecRefIsLastCyclicDyn)(void* p) {
|
|
NIM_BOOL result;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = (NIM_BOOL)0;
|
|
{
|
|
tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A* cell;
|
|
NI T5_;
|
|
if (!!((p == NIM_NIL))) goto LA3_;
|
|
T5_ = (NI)0;
|
|
T5_ = minuspercent___system_790(((NI) (ptrdiff_t) (p)), ((NI)8));
|
|
cell = ((tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A*) (T5_));
|
|
{
|
|
if (!((NI)((*cell).rc & ((NI)-16)) == ((NI)0))) goto LA8_;
|
|
result = NIM_TRUE;
|
|
}
|
|
goto LA6_;
|
|
LA8_: ;
|
|
{
|
|
(*cell).rc -= ((NI)16);
|
|
}
|
|
LA6_: ;
|
|
rememberCycle__system_3167(result, cell, (*((TNimTypeV2**) (p))));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA3_: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
static N_INLINE(NIM_BOOL, nimDecRefIsLastCyclicStatic)(void* p, TNimTypeV2* desc) {
|
|
NIM_BOOL result;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = (NIM_BOOL)0;
|
|
{
|
|
tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A* cell;
|
|
NI T5_;
|
|
if (!!((p == NIM_NIL))) goto LA3_;
|
|
T5_ = (NI)0;
|
|
T5_ = minuspercent___system_790(((NI) (ptrdiff_t) (p)), ((NI)8));
|
|
cell = ((tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A*) (T5_));
|
|
{
|
|
if (!((NI)((*cell).rc & ((NI)-16)) == ((NI)0))) goto LA8_;
|
|
result = NIM_TRUE;
|
|
}
|
|
goto LA6_;
|
|
LA8_: ;
|
|
{
|
|
(*cell).rc -= ((NI)16);
|
|
}
|
|
LA6_: ;
|
|
rememberCycle__system_3167(result, cell, desc);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA3_: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
static N_INLINE(NIM_BOOL, nimDecRefIsLast)(void* p) {
|
|
NIM_BOOL result;
|
|
result = (NIM_BOOL)0;
|
|
{
|
|
tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A* cell;
|
|
NI T5_;
|
|
if (!!((p == NIM_NIL))) goto LA3_;
|
|
T5_ = (NI)0;
|
|
T5_ = minuspercent___system_790(((NI) (ptrdiff_t) (p)), ((NI)8));
|
|
cell = ((tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A*) (T5_));
|
|
{
|
|
if (!((NI)((*cell).rc & ((NI)-16)) == ((NI)0))) goto LA8_;
|
|
result = NIM_TRUE;
|
|
}
|
|
goto LA6_;
|
|
LA8_: ;
|
|
{
|
|
(*cell).rc -= ((NI)16);
|
|
}
|
|
LA6_: ;
|
|
}
|
|
LA3_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___parser_2563)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* dest) {
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
eqdestroy___stdZassertions_13((&(*dest).lex.Sup.bufStorage));
|
|
{
|
|
NIM_BOOL T3_;
|
|
T3_ = (NIM_BOOL)0;
|
|
T3_ = nimDecRefIsLastCyclicDyn((*dest).lex.Sup.stream);
|
|
if (!T3_) goto LA4_;
|
|
nimDestroyAndDispose((*dest).lex.Sup.stream);
|
|
}
|
|
LA4_: ;
|
|
{
|
|
NIM_BOOL T8_;
|
|
T8_ = (NIM_BOOL)0;
|
|
T8_ = nimDecRefIsLastCyclicDyn((*dest).lex.errorHandler.ClE_0);
|
|
if (!T8_) goto LA9_;
|
|
nimDestroyAndDispose((*dest).lex.errorHandler.ClE_0);
|
|
}
|
|
LA9_: ;
|
|
{
|
|
NIM_BOOL T13_;
|
|
T13_ = (NIM_BOOL)0;
|
|
T13_ = nimDecRefIsLastCyclicStatic((*dest).lex.cache, (&NTIv2__4yiDOEx3Y9aOTV1fsziBtCQ_));
|
|
if (!T13_) goto LA14_;
|
|
eqdestroy___idents_224((*dest).lex.cache);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
nimRawDispose((*dest).lex.cache, ((NI)4));
|
|
}
|
|
LA14_: ;
|
|
{
|
|
NIM_BOOL T18_;
|
|
T18_ = (NIM_BOOL)0;
|
|
T18_ = nimDecRefIsLast((*dest).lex.config);
|
|
if (!T18_) goto LA19_;
|
|
eqdestroy___options_3149((*dest).lex.config);
|
|
nimRawDispose((*dest).lex.config, ((NI)4));
|
|
}
|
|
LA19_: ;
|
|
{
|
|
NIM_BOOL T23_;
|
|
T23_ = (NIM_BOOL)0;
|
|
T23_ = nimDecRefIsLast((*dest).tok.ident);
|
|
if (!T23_) goto LA24_;
|
|
eqdestroy___idents_145((*dest).tok.ident);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
nimRawDispose((*dest).tok.ident, ((NI)4));
|
|
}
|
|
LA24_: ;
|
|
eqdestroy___stdZassertions_13((&(*dest).tok.literal));
|
|
{
|
|
NIM_BOOL T28_;
|
|
T28_ = (NIM_BOOL)0;
|
|
T28_ = nimDecRefIsLast((*dest).emptyNode);
|
|
if (!T28_) goto LA29_;
|
|
eqdestroy___ast_3466((*dest).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
nimRawDispose((*dest).emptyNode, ((NI)4));
|
|
}
|
|
LA29_: ;
|
|
}BeforeRet_: ;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, checkFirstLineIndentation__parser_2536)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
{
|
|
NIM_BOOL T3_;
|
|
T3_ = (NIM_BOOL)0;
|
|
T3_ = !(((*p).tok.indent == ((NI)0)));
|
|
if (!(T3_)) goto LA4_;
|
|
T3_ = (*p).tok.strongSpaceA;
|
|
LA4_: ;
|
|
if (!T3_) goto LA5_;
|
|
parMessage__parser_148((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_85);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA5_: ;
|
|
}BeforeRet_: ;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseTopLevelStmt__parser_42)(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA* p) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
eqcopy___ast_3457(&result, (*p).emptyNode);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
while (1) {
|
|
{
|
|
if (!!(((*p).tok.indent == ((NI)0)))) goto LA5_;
|
|
{
|
|
NIM_BOOL T9_;
|
|
T9_ = (NIM_BOOL)0;
|
|
T9_ = (*p).firstTok;
|
|
if (!(T9_)) goto LA10_;
|
|
T9_ = ((*p).tok.indent < ((NI)0));
|
|
LA10_: ;
|
|
if (!T9_) goto LA11_;
|
|
}
|
|
goto LA7_;
|
|
LA11_: ;
|
|
{
|
|
if (!!(((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)103)))) goto LA14_;
|
|
{
|
|
NIM_BOOL T18_;
|
|
T18_ = (NIM_BOOL)0;
|
|
T18_ = ((*p).tok.tokType == ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)110));
|
|
if (!(T18_)) goto LA19_;
|
|
T18_ = eqStrings((*(*p).tok.ident).s, TM__FlWBYIOz13qHfz9ae813gBA_87);
|
|
LA19_: ;
|
|
if (!T18_) goto LA20_;
|
|
parMessage__parser_48((&(*p)), ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), TM__FlWBYIOz13qHfz9ae813gBA_89);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
goto LA16_;
|
|
LA20_: ;
|
|
{
|
|
parMessage__parser_148((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_90);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA16_: ;
|
|
}
|
|
goto LA7_;
|
|
LA14_: ;
|
|
LA7_: ;
|
|
}
|
|
LA5_: ;
|
|
(*p).firstTok = NIM_FALSE;
|
|
switch ((*p).tok.tokType) {
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)103):
|
|
{
|
|
getTok__parser_46(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
if (!((*p).tok.indent <= ((NI)0))) goto LA26_;
|
|
}
|
|
goto LA24_;
|
|
LA26_: ;
|
|
{
|
|
parMessage__parser_148((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_91);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA24_: ;
|
|
(*p).firstTok = NIM_TRUE;
|
|
}
|
|
break;
|
|
case ((tyEnum_TokType__FBGVnQ0tiQKJV9co2BPPhQQ)1):
|
|
{
|
|
goto LA1;
|
|
}
|
|
break;
|
|
default:
|
|
{
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* T31_;
|
|
T31_ = NIM_NIL;
|
|
T31_ = complexOrSimpleStmt__parser_630(p);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqsink___ast_3460(&result, T31_);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
{
|
|
if (!((*result).kind == ((tyEnum_TNodeKind__ySM4MdHjvuRpNcphR1xnyQ)1))) goto LA34_;
|
|
parMessage__parser_144((&(*p)), TM__FlWBYIOz13qHfz9ae813gBA_92, (&(*p).tok));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}
|
|
LA34_: ;
|
|
goto LA1;
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
} LA1: ;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q*, parseString__parser_2553)(NimStringV2 s, tyObject_IdentCachecolonObjectType___4yiDOEx3Y9aOTV1fsziBtCQ* cache, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* config, NimStringV2 filename, NI line, tyProc__ARwI3dj1dFJlCkFrlsuq2A errorHandler) {
|
|
tyObject_TNode__1pEudI6ZemBfsBxMjg4u5Q* result;
|
|
tyObject_TLLStream__f9cpUXDA3VY8pIlUfIovHaw* stream;
|
|
tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA parser;
|
|
NIM_BOOL oldNimErrFin1_;
|
|
NIM_BOOL* nimErr_;
|
|
{nimErr_ = nimErrorFlag();
|
|
result = NIM_NIL;
|
|
stream = NIM_NIL;
|
|
nimZeroMem((void*)(&parser), sizeof(tyObject_Parser__v5vNexcoxHVAc0S6NqA1zA));
|
|
parser = TM__FlWBYIOz13qHfz9ae813gBA_93;
|
|
stream = llStreamOpen__llstream_31(s);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
(*stream).lineOffset = line;
|
|
eqcopy___parser_2612((&parser.lex.errorHandler), errorHandler, NIM_TRUE);
|
|
openParser__parser_132((&parser), filename, stream, cache, config);
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
result = parseAll__parser_38((&parser));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
closeParser__parser_40((&parser));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
|
|
{
|
|
LA1_:;
|
|
}
|
|
{
|
|
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
|
|
eqdestroy___parser_2563((&parser));
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
eqdestroy___llstream_68(&stream);
|
|
*nimErr_ = oldNimErrFin1_;
|
|
}
|
|
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
|
|
}BeforeRet_: ;
|
|
return result;
|
|
}
|