1 /* Generated by Nim Compiler v1.6.2 */
2 #define NIM_INTBITS 64
3
4 #include "nimbase.h"
5 #include <string.h>
6 #include <math.h>
7 #undef LANGUAGE_C
8 #undef MIPSEB
9 #undef MIPSEL
10 #undef PPC
11 #undef R3000
12 #undef R4000
13 #undef i386
14 #undef linux
15 #undef mips
16 #undef near
17 #undef far
18 #undef powerpc
19 #undef unix
20 #define nimfr_(x, y)
21 #define nimln_(x, y)
22 typedef struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ;
23 typedef struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw;
24 typedef struct tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA;
25 typedef struct tyObject_Table__GpIQt2f0xrasZObyH6X8bg tyObject_Table__GpIQt2f0xrasZObyH6X8bg;
26 typedef struct tySequence__9chP3SzkaldXzawWQCDsqqg tySequence__9chP3SzkaldXzawWQCDsqqg;
27 typedef struct NimStringDesc NimStringDesc;
28 typedef struct TGenericSeq TGenericSeq;
29 typedef struct tyTuple__aGv2fk9ceddvdC01ZJC2Q2g tyTuple__aGv2fk9ceddvdC01ZJC2Q2g;
30 typedef struct TNimType TNimType;
31 typedef struct TNimNode TNimNode;
32 typedef struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w;
33 typedef struct RootObj RootObj;
34 typedef struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g;
35 typedef struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw;
36 typedef struct tyObject_TType__facALICuu8zUj0hjvbTLFg tyObject_TType__facALICuu8zUj0hjvbTLFg;
37 typedef struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA;
38 typedef struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q;
39 typedef struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA;
40 typedef struct tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA;
41 typedef struct tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA;
42 typedef struct tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A;
43 typedef struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ;
44 typedef struct tyObject_Target__9abOl5DLX8suLujOaHSvGzw tyObject_Target__9abOl5DLX8suLujOaHSvGzw;
45 typedef struct tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg;
46 typedef struct tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A;
47 typedef struct tySequence__tNFrR3kRuS1FSwuiLGoSSA tySequence__tNFrR3kRuS1FSwuiLGoSSA;
48 typedef struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA;
49 typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
50 typedef struct tySequence__Zi9cGbCWofbtABoHJ5RbLNQ tySequence__Zi9cGbCWofbtABoHJ5RbLNQ;
51 typedef struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg;
52 typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw tySequence__4eRCaZmrYLLw2k30GPTiMw;
53 typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
54 typedef struct tyTuple__47w2DboNEPf69aPgubZdd7Q tyTuple__47w2DboNEPf69aPgubZdd7Q;
55 typedef struct tySequence__pK3qSsBZwdXd6qyUMkd5Jw tySequence__pK3qSsBZwdXd6qyUMkd5Jw;
56 typedef struct tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ;
57 typedef struct tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig;
58 typedef struct tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw;
59 typedef struct tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA;
60 typedef struct tySequence__eHqUwlHGGaPw0TDPDeL79cQ tySequence__eHqUwlHGGaPw0TDPDeL79cQ;
61 typedef struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g;
62 typedef struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w;
63 typedef struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ;
64 typedef struct tyObject_GcStack__7fytPA5bBsob6See21YMRA tyObject_GcStack__7fytPA5bBsob6See21YMRA;
65 typedef struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg;
66 typedef struct tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ;
67 typedef struct tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg;
68 typedef struct tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw;
69 typedef struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA;
70 typedef struct tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw;
71 typedef struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw;
72 typedef struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg;
73 typedef struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyTuple__ujsjpB2O9cjj3uDHsXbnSzg;
74 typedef struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg;
75 typedef struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ;
76 typedef struct tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg;
77 typedef struct tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA;
78 typedef struct tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA;
79 typedef struct tySequence__Bre9bNyuQOg1EJKitjSzn8w tySequence__Bre9bNyuQOg1EJKitjSzn8w;
80 typedef struct tyObject_Int128__9a9axPfb75jdWY25AamJewkA tyObject_Int128__9a9axPfb75jdWY25AamJewkA;
81 typedef struct tyObject_TTabIter__VYF5VQsIYEVaBL0fKZJkbg tyObject_TTabIter__VYF5VQsIYEVaBL0fKZJkbg;
82 typedef struct tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q;
83 typedef struct tySequence__Mh9agqM29bm9aP5AUL1x7dZGA tySequence__Mh9agqM29bm9aP5AUL1x7dZGA;
84 typedef struct tyObject_TIdPair__AdFnD2YdADPeuJbG2YJ4vg tyObject_TIdPair__AdFnD2YdADPeuJbG2YJ4vg;
85 typedef struct tyObject_TIdentIter__Oi4goG2ACEsy9cyTe6OCPrA tyObject_TIdentIter__Oi4goG2ACEsy9cyTe6OCPrA;
86 typedef struct tyObject_TIdNodeTable__UWAp0mDjKLG1NEwUafSRhA tyObject_TIdNodeTable__UWAp0mDjKLG1NEwUafSRhA;
87 typedef struct tySequence__K8W16aeLg4OWxniQxtguMw tySequence__K8W16aeLg4OWxniQxtguMw;
88 typedef struct tyObject_TIdNodePair__fUuF71MXGqn0RZORg9clE3w tyObject_TIdNodePair__fUuF71MXGqn0RZORg9clE3w;
89 typedef struct tyTuple__z822nu9bFF1AlQnLrHjdwpA tyTuple__z822nu9bFF1AlQnLrHjdwpA;
90 typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
91 typedef struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw tyTuple__QeWl6B6ffS4pU6WWrtcrDw;
92 typedef struct tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg;
93 struct tyObject_Table__GpIQt2f0xrasZObyH6X8bg {
94 tySequence__9chP3SzkaldXzawWQCDsqqg* data;
95 NI counter;
96 };
97 struct TGenericSeq {
98 NI len;
99 NI reserved;
100 };
101 struct NimStringDesc {
102 TGenericSeq Sup;
103 NIM_CHAR data[SEQ_DECL_SIZE];
104 };
105 struct tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA {
106 tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf;
107 tyObject_Table__GpIQt2f0xrasZObyH6X8bg visited;
108 NIM_BOOL renderSymType;
109 NI indent;
110 NI currentLine;
111 NIM_BOOL firstItem;
112 NIM_BOOL useColor;
113 NimStringDesc* res;
114 };
115 struct tyTuple__aGv2fk9ceddvdC01ZJC2Q2g {
116 NI Field0;
117 void* Field1;
118 NI Field2;
119 };
120 typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
121 typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
122 typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
123 typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
124 struct TNimType {
125 NI size;
126 NI align;
127 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind;
128 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
129 TNimType* base;
130 TNimNode* node;
131 void* finalizer;
132 tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
133 tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
134 };
135 typedef NU8 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ;
136 struct TNimNode {
137 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ kind;
138 NI offset;
139 TNimType* typ;
140 NCSTRING name;
141 NI len;
142 TNimNode** sons;
143 };
144 typedef NU8 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw;
145 struct RootObj {
146 TNimType* m_type;
147 };
148 struct tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g {
149 NI32 module;
150 NI32 item;
151 };
152 struct tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w {
153 RootObj Sup;
154 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g itemId;
155 };
156 typedef NU16 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg;
157 struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q {
158 NU16 line;
159 NI16 col;
160 NI32 fileIndex;
161 };
162 typedef NU64 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw;
163 typedef NU32 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg;
164 typedef NU8 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg;
165 typedef NU8 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw;
166 typedef NU16 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA;
167 struct tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA {
168 tyEnum_TLocKind__O7PRFZKuiBBWbku09cayVBg k;
169 tyEnum_TStorageLoc__JK9cKMX3XnqHaUky9b6gkGEw storage;
170 tySet_tyEnum_TLocFlag__o2bqJgR4ceIupnUSpxiudA flags;
171 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* lode;
172 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r;
173 };
174 struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ {
175 tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w Sup;
176 tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw kind;
177 union{
178 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* gcUnsafetyReason;
179 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* transformedBody;
180 } _kind_1;
181 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* guard;
182 NI bitsize;
183 NI alignment;
184 } _kind_2;
185 };
186 tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg magic;
187 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
188 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* name;
189 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
190 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner;
191 tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw flags;
192 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* ast;
193 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
194 NI position;
195 NI offset;
196 tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc;
197 tyObject_TLib__NBMxlJ6g3utqUlplqTTHkA* annex;
198 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* constraint;
199 };
200 struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA {
201 NI id;
202 NimStringDesc* s;
203 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* next;
204 NI h;
205 };
206 typedef NU8 tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw;
207 typedef NU8 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag;
208 typedef NU8 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA;
209 typedef NU64 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw;
210 struct tyObject_TType__facALICuu8zUj0hjvbTLFg {
211 tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w Sup;
212 tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag kind;
213 tyEnum_TCallingConvention__yjAJ8w0h1PBaSwSGJ3P7IA callConv;
214 tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw flags;
215 tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A* sons;
216 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n;
217 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* owner;
218 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
219 NI64 size;
220 NI16 align;
221 NI16 paddingAtEnd;
222 NI16 lockLevel;
223 tyObject_TLoc__EtHNvCB0bgfu9bFjzx9cb6aA loc;
224 tyObject_TType__facALICuu8zUj0hjvbTLFg* typeInst;
225 tyObject_ItemId__ozxAxZLHTQ9c3akTzYvt67g uniqueId;
226 };
227 typedef NU8 tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw;
228 typedef NU8 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw;
229 typedef NU32 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg;
230 struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw {
231 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
232 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
233 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg flags;
234 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind;
235 union{
236 struct {NI64 intVal;
237 } _kind_1;
238 struct {NF floatVal;
239 } _kind_2;
240 struct {NimStringDesc* strVal;
241 } _kind_3;
242 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
243 } _kind_4;
244 struct {tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* ident;
245 } _kind_5;
246 struct {tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* sons;
247 } _kind_6;
248 };
249 };
250 struct tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA {
251 RootObj Sup;
252 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* left;
253 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* right;
254 NI L;
255 NimStringDesc* data;
256 };
257 typedef tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* tyArray__wqYjTJU9ab2ZgEFMaQc3vNA[3];
258 typedef NU8 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g;
259 typedef NU8 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag;
260 typedef NU8 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ;
261 struct tyObject_Target__9abOl5DLX8suLujOaHSvGzw {
262 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag targetCPU;
263 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag hostCPU;
264 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ targetOS;
265 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ hostOS;
266 NI intSize;
267 NI floatSize;
268 NI ptrSize;
269 NimStringDesc* tnl;
270 };
271 typedef NU64 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw;
272 typedef NU8 tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA;
273 struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA {
274 tySequence__7lEisrXlQEzwtUKW5pzRCw* data;
275 NI counter;
276 };
277 struct tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A {
278 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q trackPos;
279 NIM_BOOL trackPosAttached;
280 tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA errorOutputs;
281 tySequence__tNFrR3kRuS1FSwuiLGoSSA* msgContext;
282 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastError;
283 tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA filenameToIndexTbl;
284 tySequence__Zi9cGbCWofbtABoHJ5RbLNQ* fileInfos;
285 NI32 systemFileIdx;
286 };
287 typedef NU8 tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ;
288 typedef NU8 tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA;
289 typedef NU8 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw;
290 typedef NU8 tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ;
291 typedef NU8 tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ;
292 struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg {
293 tySequence__4eRCaZmrYLLw2k30GPTiMw* data;
294 NI counter;
295 };
296 typedef NU32 tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ;
297 typedef NU8 tySet_tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA;
298 typedef NU8 tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ;
299 typedef NU8 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA;
300 typedef NU8 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug[11];
301 struct tyTuple__47w2DboNEPf69aPgubZdd7Q {
302 NI Field0;
303 NI Field1;
304 NI Field2;
305 };
306 typedef NU8 tySet_tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug;
307 typedef struct {
308 N_NIMCALL_PTR(void, ClP_0) (tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ* result, void* ClE_0);
309 void* ClE_0;
310 } tyProc__YD0MR9bJ2x4beJkZdnjXN9cA;
311 typedef struct {
312 N_NIMCALL_PTR(void, ClP_0) (NimStringDesc* output, void* ClE_0);
313 void* ClE_0;
314 } tyProc__k2HFjxisIgDALbEUFojxaQ;
315 typedef NU8 tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA;
316 typedef struct {
317 N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* msg, tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA severity, void* ClE_0);
318 void* ClE_0;
319 } tyProc__oL9coyIA2VDTGdUcur9aL9bew;
320 struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw {
321 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g backend;
322 tyObject_Target__9abOl5DLX8suLujOaHSvGzw target;
323 NI linesCompiled;
324 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
325 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw globalOptions;
326 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* macrosToExpand;
327 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* arcToExpand;
328 tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A m;
329 tyEnum_FilenameOption__eL86bAtPxXWHj24F5gOMFQ filenameOption;
330 NimStringDesc* unitSep;
331 NI evalTemplateCounter;
332 NI evalMacroCounter;
333 NI8 exitcode;
334 tyEnum_Command__0zjcIQ623TIRGPdtjLwTFA cmd;
335 NimStringDesc* cmdInput;
336 NIM_BOOL projectIsCmd;
337 NIM_BOOL implicitCmd;
338 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw selectedGC;
339 tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ exc;
340 NIM_BOOL hintProcessingDots;
341 NI verbosity;
342 NI numberOfProcessors;
343 NF lastCmdTime;
344 tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ symbolFiles;
345 NI spellSuggestMax;
346 tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg cppDefines;
347 NimStringDesc* headerFile;
348 tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ features;
349 tySet_tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA legacyFeatures;
350 NimStringDesc* arguments;
351 tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ ideCmd;
352 NIM_BOOL oldNewlines;
353 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA cCompiler;
354 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug modifiedyNotes;
355 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug cmdlineNotes;
356 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug foreignPackageNotes;
357 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug notes;
358 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug warningAsErrors;
359 tySet_tyEnum_TMsgKind__7VIi6mabc7hDxpCmSMYIug mainPackageNotes;
360 NI mainPackageId;
361 NI errorCounter;
362 NI hintCounter;
363 NI warnCounter;
364 NI errorMax;
365 NI maxLoopIterationsVM;
366 NIM_BOOL isVmTrace;
367 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* configVars;
368 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* symbols;
369 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* packageCache;
370 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* nimblePaths;
371 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* searchPaths;
372 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lazyPaths;
373 NimStringDesc* outFile;
374 NimStringDesc* outDir;
375 NimStringDesc* jsonBuildFile;
376 NimStringDesc* prefixDir;
377 NimStringDesc* libpath;
378 NimStringDesc* nimcacheDir;
379 tyTuple__47w2DboNEPf69aPgubZdd7Q nimStdlibVersion;
380 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* dllOverrides;
381 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* moduleOverrides;
382 tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* cfileSpecificOptions;
383 NimStringDesc* projectName;
384 NimStringDesc* projectPath;
385 NimStringDesc* projectFull;
386 NIM_BOOL projectIsStdin;
387 tySet_tyEnum_StdOrrKind__6cbmyTzDPaZU9afMe4mz3Ug lastMsgWasDot;
388 NI32 projectMainIdx;
389 NI32 projectMainIdx2;
390 NimStringDesc* command;
391 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* commandArgs;
392 NimStringDesc* commandLine;
393 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* extraCmds;
394 NIM_BOOL keepComments;
395 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitImports;
396 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitIncludes;
397 NimStringDesc* docSeeSrcUrl;
398 NimStringDesc* docRoot;
399 NimStringDesc* docCmd;
400 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* configFiles;
401 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cIncludes;
402 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLibs;
403 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLinkedLibs;
404 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* externalToLink;
405 NimStringDesc* linkOptionsCmd;
406 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* compileOptionsCmd;
407 NimStringDesc* linkOptions;
408 NimStringDesc* compileOptions;
409 NimStringDesc* cCompilerPath;
410 tySequence__pK3qSsBZwdXd6qyUMkd5Jw* toCompile;
411 tyProc__YD0MR9bJ2x4beJkZdnjXN9cA suggestionResultHook;
412 NI suggestVersion;
413 NI suggestMaxResults;
414 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastLineInfo;
415 tyProc__k2HFjxisIgDALbEUFojxaQ writelnHook;
416 tyProc__oL9coyIA2VDTGdUcur9aL9bew structuredErrorHook;
417 NimStringDesc* cppCustomNamespace;
418 NimStringDesc* nimMainPrefix;
419 tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig* vmProfileData;
420 };
421 struct tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw {
422 NimStringDesc* fullPath;
423 NimStringDesc* projPath;
424 NimStringDesc* shortName;
425 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* quotedName;
426 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* quotedFullName;
427 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lines;
428 NimStringDesc* dirtyFile;
429 NimStringDesc* hash;
430 NIM_BOOL dirty;
431 };
432 typedef NU8 tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg;
433 typedef NU8 tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA;
434 typedef NimStringDesc* tyArray__nHXaesL0DJZHyVS07ARPRA[1];
435 struct tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA {
436 NI counter;
437 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* data;
438 };
439 struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g {
440 NI refcount;
441 TNimType* typ;
442 };
443 struct tyObject_GcStack__7fytPA5bBsob6See21YMRA {
444 void* bottom;
445 };
446 struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w {
447 NI len;
448 NI cap;
449 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g** d;
450 };
451 typedef tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ* tyArray__SPr7N6UKfuF549bNPiUvSRw[256];
452 typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24];
453 typedef tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* tyArray__N1u1nqOgmuJN9cSZrnMHgOQ[32];
454 typedef tyArray__N1u1nqOgmuJN9cSZrnMHgOQ tyArray__B6durA4ZCi1xjJvRtyYxMg[24];
455 typedef tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw* tyArray__lh2A89ahMmYg9bCmpVaplLbA[256];
456 struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA {
457 tyArray__lh2A89ahMmYg9bCmpVaplLbA data;
458 };
459 typedef tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* tyArray__0aOLqZchNi8nWtMTi8ND8w[2];
460 struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw {
461 tyArray__0aOLqZchNi8nWtMTi8ND8w link;
462 NI key;
463 NI upperBound;
464 NI level;
465 };
466 struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg {
467 tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* Field0;
468 NI Field1;
469 };
470 typedef tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyArray__LzOv2eCDGiceMKQstCLmhw[30];
471 struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg {
472 NI len;
473 tyArray__LzOv2eCDGiceMKQstCLmhw chunks;
474 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg* next;
475 };
476 struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg {
477 NI minLargeObj;
478 NI maxLargeObj;
479 tyArray__SPr7N6UKfuF549bNPiUvSRw freeSmallChunks;
480 NU32 flBitmap;
481 tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap;
482 tyArray__B6durA4ZCi1xjJvRtyYxMg matrix;
483 tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw* llmem;
484 NI currMem;
485 NI maxMem;
486 NI freeMem;
487 NI occ;
488 NI lastSize;
489 tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA chunkStarts;
490 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* root;
491 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* deleted;
492 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* last;
493 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* freeAvlNodes;
494 NIM_BOOL locked;
495 NIM_BOOL blockChunkSizeIncrease;
496 NI nextChunkSize;
497 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw bottomData;
498 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg heapLinks;
499 };
500 struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg {
501 NI stackScans;
502 NI cycleCollections;
503 NI maxThreshold;
504 NI maxStackSize;
505 NI maxStackCells;
506 NI cycleTableSize;
507 NI64 maxPause;
508 };
509 struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ {
510 NI counter;
511 NI max;
512 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg* head;
513 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg** data;
514 };
515 struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ {
516 tyObject_GcStack__7fytPA5bBsob6See21YMRA stack;
517 NI cycleThreshold;
518 NI zctThreshold;
519 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w zct;
520 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w decStack;
521 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tempStack;
522 NI recGcLock;
523 tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg region;
524 tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg stat;
525 tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ marked;
526 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w additionalRoots;
527 NI gcThreadId;
528 };
529 typedef NI tyArray__emiAJ8okywrJw7ZHLzlXbQ[34];
530 struct tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA {
531 NI elems;
532 NI counter;
533 NI max;
534 tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* head;
535 tySequence__Bre9bNyuQOg1EJKitjSzn8w* data;
536 tyArray__emiAJ8okywrJw7ZHLzlXbQ a;
537 };
538 typedef NU tyArray__VqSA39cBDWnwnJySTumCdjw[8];
539 struct tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA {
540 tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* next;
541 NI key;
542 tyArray__VqSA39cBDWnwnJySTumCdjw bits;
543 };
544 typedef NU32 tyArray__FleBT9cC2nxhgiXmSYYnEKA[4];
545 struct tyObject_Int128__9a9axPfb75jdWY25AamJewkA {
546 tyArray__FleBT9cC2nxhgiXmSYYnEKA udata;
547 };
548 struct tyObject_TTabIter__VYF5VQsIYEVaBL0fKZJkbg {
549 NI h;
550 };
551 struct tyObject_TIdPair__AdFnD2YdADPeuJbG2YJ4vg {
552 tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key;
553 RootObj* val;
554 };
555 struct tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q {
556 NI counter;
557 tySequence__Mh9agqM29bm9aP5AUL1x7dZGA* data;
558 };
559 struct tyObject_TIdentIter__Oi4goG2ACEsy9cyTe6OCPrA {
560 NI h;
561 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* name;
562 };
563 struct tyObject_TIdNodeTable__UWAp0mDjKLG1NEwUafSRhA {
564 NI counter;
565 tySequence__K8W16aeLg4OWxniQxtguMw* data;
566 };
567 struct tyObject_TIdNodePair__fUuF71MXGqn0RZORg9clE3w {
568 tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key;
569 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* val;
570 };
571 typedef NU8 tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA;
572 struct tyTuple__z822nu9bFF1AlQnLrHjdwpA {
573 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q Field0;
574 NimStringDesc* Field1;
575 };
576 struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
577 NI Field0;
578 NimStringDesc* Field1;
579 NI32 Field2;
580 };
581 struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw {
582 NI Field0;
583 NimStringDesc* Field1;
584 };
585 typedef NU8 tySet_tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA;
586 struct tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg {
587 NimStringDesc* nimname;
588 NimStringDesc* cname;
589 NimStringDesc* obj;
590 tySet_tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA flags;
591 NimStringDesc* customArgs;
592 };
593 struct tySequence__9chP3SzkaldXzawWQCDsqqg {
594 TGenericSeq Sup;
595 tyTuple__aGv2fk9ceddvdC01ZJC2Q2g data[SEQ_DECL_SIZE];
596 };
597 struct tySequence__eHqUwlHGGaPw0TDPDeL79cQ {
598 TGenericSeq Sup;
599 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* data[SEQ_DECL_SIZE];
600 };
601 struct tySequence__Mh9agqM29bm9aP5AUL1x7dZGA {
602 TGenericSeq Sup;
603 tyObject_TIdPair__AdFnD2YdADPeuJbG2YJ4vg data[SEQ_DECL_SIZE];
604 };
605 struct tySequence__K8W16aeLg4OWxniQxtguMw {
606 TGenericSeq Sup;
607 tyObject_TIdNodePair__fUuF71MXGqn0RZORg9clE3w data[SEQ_DECL_SIZE];
608 };
609 struct tySequence__9aZVGG5Gtti9cC9bqRpXCtA3A {
610 TGenericSeq Sup;
611 tyObject_TType__facALICuu8zUj0hjvbTLFg* data[SEQ_DECL_SIZE];
612 };
613 struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ {
614 TGenericSeq Sup;
615 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* data[SEQ_DECL_SIZE];
616 };
617 struct tySequence__tNFrR3kRuS1FSwuiLGoSSA {
618 TGenericSeq Sup;
619 tyTuple__z822nu9bFF1AlQnLrHjdwpA data[SEQ_DECL_SIZE];
620 };
621 struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
622 TGenericSeq Sup;
623 tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE];
624 };
625 struct tySequence__Zi9cGbCWofbtABoHJ5RbLNQ {
626 TGenericSeq Sup;
627 tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw data[SEQ_DECL_SIZE];
628 };
629 struct tySequence__4eRCaZmrYLLw2k30GPTiMw {
630 TGenericSeq Sup;
631 tyTuple__QeWl6B6ffS4pU6WWrtcrDw data[SEQ_DECL_SIZE];
632 };
633 struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
634 TGenericSeq Sup;
635 NimStringDesc* data[SEQ_DECL_SIZE];
636 };
637 struct tySequence__pK3qSsBZwdXd6qyUMkd5Jw {
638 TGenericSeq Sup;
639 tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg data[SEQ_DECL_SIZE];
640 };
641 struct tySequence__Bre9bNyuQOg1EJKitjSzn8w {
642 TGenericSeq Sup;
643 tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* data[SEQ_DECL_SIZE];
644 };
645 N_LIB_PRIVATE N_NIMCALL(void, debugSym)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* n, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
646 static N_INLINE(void, nimZeroMem)(void* p, NI size);
647 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size);
648 N_LIB_PRIVATE N_NIMCALL(void, initTable__astalgo_3033)(NI initialSize, tyObject_Table__GpIQt2f0xrasZObyH6X8bg* Result);
649 N_LIB_PRIVATE N_NIMCALL(void, unsureAsgnRef)(void** dest, void* src);
650 static N_INLINE(NI, slotsNeeded__pureZcollectionsZtables_42)(NI count);
651 N_LIB_PRIVATE N_NIMCALL(NI, nextPowerOfTwo__pureZmath_177)(NI x);
652 N_LIB_PRIVATE N_NIMCALL(void*, newSeq)(TNimType* typ, NI len);
653 static N_NIMCALL(void, Marker_tySequence__9chP3SzkaldXzawWQCDsqqg)(void* p, NI op);
654 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_1103)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* value);
655 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src);
656 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size);
657 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
658 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, resizeString)(NimStringDesc* dest, NI addlen);
659 N_LIB_PRIVATE N_NIMCALL(NI, getOrDefault__astalgo_1178)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg t, void* key, NI default_0);
660 static N_INLINE(NI, rawGet__astalgo_1188)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg t, void* key, NI* hc);
661 static N_INLINE(NI, hash__pureZhashes_124)(void* x);
662 static N_INLINE(NI, hash__pureZhashes_128)(NI x);
663 static N_INLINE(NI, hashWangYi1__pureZhashes_136)(NU64 x);
664 static N_INLINE(NU64, hiXorLo__pureZhashes_79)(NU64 a, NU64 b);
665 static N_INLINE(NIM_BOOL, isFilled__pureZcollectionsZtables_31)(NI hcode);
666 static N_INLINE(NI, nextTry__pureZcollectionsZtables_34)(NI h, NI maxHash);
667 N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___astalgo_1522)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg* t, void* key, NI val);
668 static N_INLINE(NIM_BOOL, mustRehash__astalgo_1695)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg t);
669 N_LIB_PRIVATE N_NIMCALL(void, enlarge__astalgo_1848)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg* t);
670 N_LIB_PRIVATE N_NIMCALL(void, rawInsert__astalgo_2152)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg* t, tySequence__9chP3SzkaldXzawWQCDsqqg** data, void* key, NI val, NI hc, NI h);
671 static N_INLINE(NI, rawGetKnownHC__astalgo_2321)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg t, void* key, NI hc);
672 static N_INLINE(void, addInt__stdZprivateZdigitsutils_189)(NimStringDesc** result, NI x);
673 N_LIB_PRIVATE N_NIMCALL(void, addInt__stdZprivateZdigitsutils_167)(NimStringDesc** result, NI64 x);
674 N_LIB_PRIVATE N_NIMCALL(void, openCurly__astalgo_1062)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0);
675 N_LIB_PRIVATE N_NIMCALL(void, indentMore__astalgo_1039)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0);
676 N_LIB_PRIVATE N_NIMCALL(void, key__astalgo_1072)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, NimStringDesc* key);
677 N_LIB_PRIVATE N_NIMCALL(void, newlineAndIndent__astalgo_1051)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0);
678 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, addChar)(NimStringDesc* s, NIM_CHAR c);
679 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2558)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw value);
680 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, reprEnum)(NI e, TNimType* typ);
681 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_1075)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, NimStringDesc* value);
682 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_1078)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, NI64 value);
683 static N_INLINE(NI, countBits64)(NU64 n);
684 static N_INLINE(NI, countSetBitsImpl__systemZcountbits95impl_61)(NU64 x);
685 N_CDECL(int, __builtin_popcountll)(unsigned long long x);
686 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2578)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw value);
687 N_LIB_PRIVATE N_NIMCALL(void, openBracket__astalgo_1068)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0);
688 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2591)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw value);
689 N_LIB_PRIVATE N_NIMCALL(void, comma__astalgo_1066)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0);
690 N_LIB_PRIVATE N_NIMCALL(void, closeBracket__astalgo_1070)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0);
691 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_1097)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyObject_TType__facALICuu8zUj0hjvbTLFg* value);
692 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2734)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag value);
693 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2754)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw value);
694 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2767)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw value);
695 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_1100)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* value);
696 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2933)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw value);
697 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, comment__ast_993)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
698 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___ropes_250)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* r);
699 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, lineInfoToStr__astalgo_28)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
700 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___astalgo_353)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
701 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, runtimeFormat__ropes_271)(NimStringDesc* frmt, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0);
702 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, makeYamlString__astalgo_330)(NimStringDesc* s);
703 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src);
704 N_LIB_PRIVATE N_NIMCALL(void, add__ropes_159)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** a, tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* b);
705 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, rope__ropes_109)(NimStringDesc* s);
706 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toYamlChar__astalgo_320)(NIM_CHAR c);
707 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toHex__pureZstrutils_1792)(NI x, NI len);
708 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, rawNewString)(NI space);
709 static N_INLINE(void, appendChar)(NimStringDesc* dest, NIM_CHAR c);
710 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nimCharToStr)(NIM_CHAR x);
711 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, rope__ropes_115)(NI64 i);
712 static N_INLINE(NI, toLinenumber__msgs_609)(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
713 static N_INLINE(NI, toColumn__msgs_612)(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info);
714 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2948)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg value);
715 static N_INLINE(NI, countBits32)(NU32 n);
716 static N_INLINE(NI, countSetBitsImpl__systemZcountbits95impl_26)(NU32 x);
717 N_CDECL(int, __builtin_popcount)(unsigned int x);
718 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2988)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg value);
719 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toStrMaxPrecision__astalgo_920)(NF f);
720 N_LIB_PRIVATE N_NIMCALL(tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA, classify__pureZmath_147)(NF x);
721 static N_INLINE(NIM_BOOL, signbit__astalgo_926)(NF x);
722 N_LIB_PRIVATE N_NIMCALL(void, addFloatRoundtrip__system_3127)(NimStringDesc** result, NF x);
723 static N_INLINE(NIM_BOOL, eqeq___idents_220)(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* a, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* b);
724 static N_INLINE(NI, len__ast_3198)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
725 N_LIB_PRIVATE N_NIMCALL(void, closeCurly__astalgo_1064)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0);
726 N_LIB_PRIVATE N_NIMCALL(void, indentLess__astalgo_1045)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0);
727 static N_INLINE(NI, len__ast_4002)(tyObject_TType__facALICuu8zUj0hjvbTLFg* n);
728 N_LIB_PRIVATE N_NIMCALL(void, echoBinSafe)(NimStringDesc** args, NI argsLen_0);
729 N_LIB_PRIVATE N_NIMCALL(void, debugType)(tyObject_TType__facALICuu8zUj0hjvbTLFg* n, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
730 N_LIB_PRIVATE N_NIMCALL(void, debugNode)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
731 static N_INLINE(NI, nextTry__astalgo_90)(NI h, NI maxHash);
732 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, mustRehash__astalgo_87)(NI length, NI counter);
733 N_LIB_PRIVATE N_NIMCALL(void, strTableEnlarge__astalgo_3306)(tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA* t);
734 N_LIB_PRIVATE N_NIMCALL(void, strTableRawInsert__astalgo_3252)(tySequence__eHqUwlHGGaPw0TDPDeL79cQ** data, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* n);
735 static N_INLINE(void, asgnRef)(void** dest, void* src);
736 static N_INLINE(void, incRef__system_5309)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
737 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y);
738 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5271)(void* usr);
739 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y);
740 static N_INLINE(void, decRef__system_5316)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
741 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y);
742 static N_INLINE(void, rtlAddZCT__system_5314)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
743 N_LIB_PRIVATE N_NOINLINE(void, addZCT__system_5265)(tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w* s, tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
744 N_LIB_PRIVATE N_NIMCALL(void, incl__pureZcollectionsZintsets_55)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key);
745 N_LIB_PRIVATE N_NIMCALL(tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA*, packedSetGet__astalgo_433)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* t, NI key);
746 static N_INLINE(NI, nextTry__stdZpackedsets_41)(NI h, NI maxHash, NI* perturb);
747 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___int495056_313)(tyObject_Int128__9a9axPfb75jdWY25AamJewkA a, tyObject_Int128__9a9axPfb75jdWY25AamJewkA b);
748 N_LIB_PRIVATE N_NIMCALL(tyObject_Int128__9a9axPfb75jdWY25AamJewkA, getInt__ast_4592)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a);
749 static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b);
750 static N_INLINE(NIM_BOOL, equalMem__system_1735)(void* a, void* b, NI size);
751 static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size);
752 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, nextIter__astalgo_3762)(tyObject_TTabIter__VYF5VQsIYEVaBL0fKZJkbg* ti, tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tab);
753 N_LIB_PRIVATE N_NIMCALL(NI, idTableRawGet__astalgo_3813)(tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q t, NI key);
754 N_LIB_PRIVATE N_NIMCALL(void, idTableRawInsert__astalgo_3905)(tySequence__Mh9agqM29bm9aP5AUL1x7dZGA** data, tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key, RootObj* val);
755 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, nextIdentIter__astalgo_3408)(tyObject_TIdentIter__Oi4goG2ACEsy9cyTe6OCPrA* ti, tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tab);
756 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, sameIgnoreBacktickGensymInfo__astalgo_264)(NimStringDesc* a, NimStringDesc* b);
757 N_LIB_PRIVATE N_NIMCALL(NIM_CHAR, nsuToLowerAsciiChar)(NIM_CHAR c);
758 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, nextIdentExcluding__astalgo_3432)(tyObject_TIdentIter__Oi4goG2ACEsy9cyTe6OCPrA* ti, tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tab, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* excluding);
759 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__astalgo_3496)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key);
760 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, lookupInRecord__astalgo_84)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* field);
761 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, lastSon__ast_4832)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
762 N_LIB_PRIVATE N_NIMCALL(NI, idNodeTableRawGet__astalgo_4024)(tyObject_TIdNodeTable__UWAp0mDjKLG1NEwUafSRhA t, tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key);
763 N_LIB_PRIVATE N_NIMCALL(void, idNodeTableRawInsert__astalgo_4071)(tySequence__K8W16aeLg4OWxniQxtguMw** data, tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* val);
764 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, lteq___int495056_309)(tyObject_Int128__9a9axPfb75jdWY25AamJewkA a, tyObject_Int128__9a9axPfb75jdWY25AamJewkA b);
765 static N_INLINE(NI, cmpStrings)(NimStringDesc* a, NimStringDesc* b);
766 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, leValue__astalgo_135)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b);
767 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, strTableInclReportConflict__astalgo_3342)(tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA* t, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* n, NIM_BOOL onConflictKeepOld);
768 N_LIB_PRIVATE N_NIMCALL(void, symTabReplaceRaw__astalgo_3277)(tySequence__eHqUwlHGGaPw0TDPDeL79cQ** data, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prevSym, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* newSym);
769 N_LIB_PRIVATE TNimType NTIkeyvaluepair__aGv2fk9ceddvdC01ZJC2Q2g_;
770 extern TNimType NTIint__rR5Bzr1D5krxoo1NcNyeMA_;
771 extern TNimType NTIpointer__vr5DoT1jILTGdRlYv1OYpw_;
772 N_LIB_PRIVATE TNimType NTIkeyvaluepairseq__9chP3SzkaldXzawWQCDsqqg_;
773 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_3, "null", 4);
774 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_4, "\033[90m", 5);
775 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_5, "<defined ", 9);
776 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_6, " lines upwards>", 15);
777 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_7, "\033[0m", 4);
778 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_8, "{", 1);
779 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_9, ",", 1);
780 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_10, "\012", 1);
781 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_11, "\"", 1);
782 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_12, "\": ", 3);
783 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_13, "kind", 4);
784 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_14, "\033[34m", 5);
785 extern TNimType NTItsymkind__cNCW9acsSznmEccl1fgQwkw_;
786 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_15, "name", 4);
787 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_16, "\033[32m", 5);
788 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_17, "id", 2);
789 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_18, "\033[33m", 5);
790 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_19, "position", 8);
791 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_20, "flags", 5);
792 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_21, "[", 1);
793 extern TNimType NTItsymflag__K9ay6LWMat9bUiT9bIbMxpDHw_;
794 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_22, ", ", 2);
795 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_23, "]", 1);
796 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_24, "typ", 3);
797 extern TNimType NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_;
798 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_25, "sym", 3);
799 extern TNimType NTIttypeflag__x2m5g1NpbmDig4wLT3Ylhw_;
800 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_26, "n", 1);
801 extern TNimType NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_;
802 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_27, "comment", 7);
803 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_28, "info", 4);
804 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_29, "[$1, $2, $3]", 12);
805 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_30, "\\u", 2);
806 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_31, "command line", 12);
807 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_32, "\?\?\?", 3);
808 extern TNimType NTItnodeflag__jyh9acXHkhZANSSvPIY7ZLg_;
809 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_33, "nil", 3);
810 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_34, "intVal", 6);
811 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_35, "floatVal", 8);
812 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_36, "-NAN", 4);
813 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_37, "NAN", 3);
814 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_38, "-0.0", 4);
815 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_39, "0.0", 3);
816 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_40, "INF", 3);
817 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_41, "-INF", 4);
818 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_42, "strVal", 6);
819 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_43, "ident", 5);
820 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_44, "sons", 4);
821 STRING_LITERAL(TM__uRgrUHgaDgkYkoMPsaodqw_45, "}", 1);
822 extern TNimType NTIseqLpsymT__eHqUwlHGGaPw0TDPDeL79cQ_;
823 extern TNimType NTItidpairseq__Mh9agqM29bm9aP5AUL1x7dZGA_;
824 extern TNimType NTItidnodepairseq__K8W16aeLg4OWxniQxtguMw_;
825 extern tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ gch__system_5218;
N_INLINE(void,nimSetMem__systemZmemory_7)826 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size) {
827 void* T1_;
828 T1_ = (void*)0;
829 T1_ = memset(a, v, ((size_t) (size)));
830 }
N_INLINE(void,nimZeroMem)831 static N_INLINE(void, nimZeroMem)(void* p, NI size) {
832 nimSetMem__systemZmemory_7(p, ((int) 0), size);
833 }
N_INLINE(NI,slotsNeeded__pureZcollectionsZtables_42)834 static N_INLINE(NI, slotsNeeded__pureZcollectionsZtables_42)(NI count) {
835 NI result;
836 result = (NI)0;
837 result = nextPowerOfTwo__pureZmath_177((NI)((NI)((NI)(((NI) (count)) * ((NI) 3)) / ((NI) 2)) + ((NI) 4)));
838 return result;
839 }
N_NIMCALL(void,Marker_tySequence__9chP3SzkaldXzawWQCDsqqg)840 static N_NIMCALL(void, Marker_tySequence__9chP3SzkaldXzawWQCDsqqg)(void* p, NI op) {
841 tySequence__9chP3SzkaldXzawWQCDsqqg* a;
842 NI T1_;
843 a = (tySequence__9chP3SzkaldXzawWQCDsqqg*)p;
844 T1_ = (NI)0;
845 }
N_NIMCALL(void,initTable__astalgo_3033)846 N_LIB_PRIVATE N_NIMCALL(void, initTable__astalgo_3033)(NI initialSize, tyObject_Table__GpIQt2f0xrasZObyH6X8bg* Result) {
847 NI correctSizeX60gensym137_;
848 unsureAsgnRef((void**)&(*Result).data, NIM_NIL);
849 (*Result).counter = 0;
850 correctSizeX60gensym137_ = slotsNeeded__pureZcollectionsZtables_42(((NI) (initialSize)));
851 (*Result).counter = ((NI) 0);
852 unsureAsgnRef((void**) (&(*Result).data), (tySequence__9chP3SzkaldXzawWQCDsqqg*) newSeq((&NTIkeyvaluepairseq__9chP3SzkaldXzawWQCDsqqg_), ((NI) (correctSizeX60gensym137_))));
853 }
N_INLINE(void,nimCopyMem)854 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) {
855 void* T1_;
856 T1_ = (void*)0;
857 T1_ = memcpy(dest, source, ((size_t) (size)));
858 }
N_INLINE(void,copyMem__system_1727)859 static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size) {
860 nimCopyMem(dest, source, size);
861 }
N_INLINE(void,appendString)862 static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src) {
863 {
864 if (!!((src == ((NimStringDesc*) NIM_NIL)))) goto LA3_;
865 copyMem__system_1727(((void*) ((&(*dest).data[(*dest).Sup.len]))), ((void*) ((*src).data)), ((NI) ((NI)((*src).Sup.len + ((NI) 1)))));
866 (*dest).Sup.len += (*src).Sup.len;
867 }
868 LA3_: ;
869 }
N_INLINE(NU64,hiXorLo__pureZhashes_79)870 static N_INLINE(NU64, hiXorLo__pureZhashes_79)(NU64 a, NU64 b) {
871 NU64 result;
872 result = (NU64)0;
873 __uint128_t r = a; r *= b; result = (r >> 64) ^ r;
874 return result;
875 }
N_INLINE(NI,hashWangYi1__pureZhashes_136)876 static N_INLINE(NI, hashWangYi1__pureZhashes_136)(NU64 x) {
877 NI result;
878 NU64 T1_;
879 NU64 T2_;
880 result = (NI)0;
881 T1_ = (NU64)0;
882 T1_ = hiXorLo__pureZhashes_79(11562461410679940143ULL, (NU64)(x ^ 16646288086500911323ULL));
883 T2_ = (NU64)0;
884 T2_ = hiXorLo__pureZhashes_79(T1_, 16952864883938283885ULL);
885 result = ((NI) (T2_));
886 return result;
887 }
N_INLINE(NI,hash__pureZhashes_128)888 static N_INLINE(NI, hash__pureZhashes_128)(NI x) {
889 NI result;
890 result = (NI)0;
891 result = hashWangYi1__pureZhashes_136(((NU64) (x)));
892 return result;
893 }
N_INLINE(NI,hash__pureZhashes_124)894 static N_INLINE(NI, hash__pureZhashes_124)(void* x) {
895 NI result;
896 NI y;
897 result = (NI)0;
898 y = ((NI) (ptrdiff_t) (x));
899 result = hash__pureZhashes_128(y);
900 return result;
901 }
N_INLINE(NIM_BOOL,isFilled__pureZcollectionsZtables_31)902 static N_INLINE(NIM_BOOL, isFilled__pureZcollectionsZtables_31)(NI hcode) {
903 NIM_BOOL result;
904 result = (NIM_BOOL)0;
905 result = !((hcode == ((NI) 0)));
906 return result;
907 }
N_INLINE(NI,nextTry__pureZcollectionsZtables_34)908 static N_INLINE(NI, nextTry__pureZcollectionsZtables_34)(NI h, NI maxHash) {
909 NI result;
910 result = (NI)0;
911 result = (NI)((NI)(h + ((NI) 1)) & maxHash);
912 return result;
913 }
N_INLINE(NI,rawGet__astalgo_1188)914 static N_INLINE(NI, rawGet__astalgo_1188)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg t, void* key, NI* hc) {
915 NI result;
916 NI h;
917 NI T10_;
918 { result = (NI)0;
919 (*hc) = hash__pureZhashes_124(key);
920 {
921 if (!((*hc) == ((NI) 0))) goto LA3_;
922 (*hc) = ((NI) 314159265);
923 }
924 LA3_: ;
925 {
926 NI T7_;
927 T7_ = (t.data ? t.data->Sup.len : 0);
928 if (!(T7_ == ((NI) 0))) goto LA8_;
929 result = ((NI) -1);
930 goto BeforeRet_;
931 }
932 LA8_: ;
933 T10_ = ((t.data ? t.data->Sup.len : 0)-1);
934 h = (NI)((*hc) & T10_);
935 {
936 while (1) {
937 NIM_BOOL T13_;
938 NI T20_;
939 T13_ = (NIM_BOOL)0;
940 T13_ = isFilled__pureZcollectionsZtables_31(t.data->data[h].Field0);
941 if (!T13_) goto LA12;
942 {
943 NIM_BOOL T16_;
944 T16_ = (NIM_BOOL)0;
945 T16_ = (t.data->data[h].Field0 == (*hc));
946 if (!(T16_)) goto LA17_;
947 T16_ = (t.data->data[h].Field1 == key);
948 LA17_: ;
949 if (!T16_) goto LA18_;
950 result = h;
951 goto BeforeRet_;
952 }
953 LA18_: ;
954 T20_ = ((t.data ? t.data->Sup.len : 0)-1);
955 h = nextTry__pureZcollectionsZtables_34(h, T20_);
956 } LA12: ;
957 }
958 result = (NI)(((NI) -1) - h);
959 }BeforeRet_: ;
960 return result;
961 }
N_NIMCALL(NI,getOrDefault__astalgo_1178)962 N_LIB_PRIVATE N_NIMCALL(NI, getOrDefault__astalgo_1178)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg t, void* key, NI default_0) {
963 NI result;
964 NI hcX60gensym97_;
965 NI indexX60gensym97_;
966 result = (NI)0;
967 hcX60gensym97_ = (NI)0;
968 indexX60gensym97_ = rawGet__astalgo_1188(t, key, (&hcX60gensym97_));
969 {
970 if (!(((NI) 0) <= indexX60gensym97_)) goto LA3_;
971 result = t.data->data[indexX60gensym97_].Field2;
972 }
973 goto LA1_;
974 LA3_: ;
975 {
976 result = default_0;
977 }
978 LA1_: ;
979 return result;
980 }
N_INLINE(NIM_BOOL,mustRehash__astalgo_1695)981 static N_INLINE(NIM_BOOL, mustRehash__astalgo_1695)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg t) {
982 NIM_BOOL result;
983 NIM_BOOL T1_;
984 NI T2_;
985 NI T4_;
986 result = (NIM_BOOL)0;
987 T1_ = (NIM_BOOL)0;
988 T2_ = (t.data ? t.data->Sup.len : 0);
989 T1_ = ((NI)(T2_ * ((NI) 2)) < (NI)(t.counter * ((NI) 3)));
990 if (T1_) goto LA3_;
991 T4_ = (t.data ? t.data->Sup.len : 0);
992 T1_ = ((NI)(T4_ - t.counter) < ((NI) 4));
993 LA3_: ;
994 result = T1_;
995 return result;
996 }
N_NIMCALL(void,rawInsert__astalgo_2152)997 N_LIB_PRIVATE N_NIMCALL(void, rawInsert__astalgo_2152)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg* t, tySequence__9chP3SzkaldXzawWQCDsqqg** data, void* key, NI val, NI hc, NI h) {
998 (*data)->data[h].Field1 = key;
999 (*data)->data[h].Field2 = val;
1000 (*data)->data[h].Field0 = hc;
1001 }
N_NIMCALL(void,enlarge__astalgo_1848)1002 N_LIB_PRIVATE N_NIMCALL(void, enlarge__astalgo_1848)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg* t) {
1003 tySequence__9chP3SzkaldXzawWQCDsqqg* n;
1004 NI T1_;
1005 tySequence__9chP3SzkaldXzawWQCDsqqg* T2_;
1006 n = NIM_NIL;
1007 T1_ = ((*t).data ? (*t).data->Sup.len : 0);
1008 n = (tySequence__9chP3SzkaldXzawWQCDsqqg*) newSeq((&NTIkeyvaluepairseq__9chP3SzkaldXzawWQCDsqqg_), ((NI) ((NI)(T1_ * ((NI) 2)))));
1009 T2_ = NIM_NIL;
1010 T2_ = (*t).data;
1011 unsureAsgnRef((void**) (&(*t).data), n);
1012 n = T2_;
1013 {
1014 NI i;
1015 NI colontmp_;
1016 NI T4_;
1017 NI res;
1018 i = (NI)0;
1019 colontmp_ = (NI)0;
1020 T4_ = ((n ? n->Sup.len : 0)-1);
1021 colontmp_ = T4_;
1022 res = ((NI) 0);
1023 {
1024 while (1) {
1025 NI eh;
1026 if (!(res <= colontmp_)) goto LA6;
1027 i = res;
1028 eh = n->data[i].Field0;
1029 {
1030 NIM_BOOL T9_;
1031 NI j;
1032 NI T12_;
1033 void* T17_;
1034 NI T18_;
1035 T9_ = (NIM_BOOL)0;
1036 T9_ = isFilled__pureZcollectionsZtables_31(eh);
1037 if (!T9_) goto LA10_;
1038 T12_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
1039 j = (NI)(eh & T12_);
1040 {
1041 while (1) {
1042 NIM_BOOL T15_;
1043 NI T16_;
1044 T15_ = (NIM_BOOL)0;
1045 T15_ = isFilled__pureZcollectionsZtables_31((*t).data->data[j].Field0);
1046 if (!T15_) goto LA14;
1047 T16_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
1048 j = nextTry__pureZcollectionsZtables_34(j, T16_);
1049 } LA14: ;
1050 }
1051 T17_ = (void*)0;
1052 T17_ = n->data[i].Field1;
1053 n->data[i].Field1 = 0;
1054 T18_ = (NI)0;
1055 T18_ = n->data[i].Field2;
1056 n->data[i].Field2 = 0;
1057 rawInsert__astalgo_2152(t, (&(*t).data), T17_, T18_, eh, j);
1058 }
1059 LA10_: ;
1060 res += ((NI) 1);
1061 } LA6: ;
1062 }
1063 }
1064 }
N_INLINE(NI,rawGetKnownHC__astalgo_2321)1065 static N_INLINE(NI, rawGetKnownHC__astalgo_2321)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg t, void* key, NI hc) {
1066 NI result;
1067 NI h;
1068 NI T6_;
1069 { result = (NI)0;
1070 {
1071 NI T3_;
1072 T3_ = (t.data ? t.data->Sup.len : 0);
1073 if (!(T3_ == ((NI) 0))) goto LA4_;
1074 result = ((NI) -1);
1075 goto BeforeRet_;
1076 }
1077 LA4_: ;
1078 T6_ = ((t.data ? t.data->Sup.len : 0)-1);
1079 h = (NI)(hc & T6_);
1080 {
1081 while (1) {
1082 NIM_BOOL T9_;
1083 NI T16_;
1084 T9_ = (NIM_BOOL)0;
1085 T9_ = isFilled__pureZcollectionsZtables_31(t.data->data[h].Field0);
1086 if (!T9_) goto LA8;
1087 {
1088 NIM_BOOL T12_;
1089 T12_ = (NIM_BOOL)0;
1090 T12_ = (t.data->data[h].Field0 == hc);
1091 if (!(T12_)) goto LA13_;
1092 T12_ = (t.data->data[h].Field1 == key);
1093 LA13_: ;
1094 if (!T12_) goto LA14_;
1095 result = h;
1096 goto BeforeRet_;
1097 }
1098 LA14_: ;
1099 T16_ = ((t.data ? t.data->Sup.len : 0)-1);
1100 h = nextTry__pureZcollectionsZtables_34(h, T16_);
1101 } LA8: ;
1102 }
1103 result = (NI)(((NI) -1) - h);
1104 }BeforeRet_: ;
1105 return result;
1106 }
N_NIMCALL(void,X5BX5Deq___astalgo_1522)1107 N_LIB_PRIVATE N_NIMCALL(void, X5BX5Deq___astalgo_1522)(tyObject_Table__GpIQt2f0xrasZObyH6X8bg* t, void* key, NI val) {
1108 NI hc;
1109 NI index;
1110 {
1111 NI T3_;
1112 NI correctSizeX60gensym102_;
1113 T3_ = ((*t).data ? (*t).data->Sup.len : 0);
1114 if (!(T3_ == ((NI) 0))) goto LA4_;
1115 correctSizeX60gensym102_ = slotsNeeded__pureZcollectionsZtables_42(((NI) 32));
1116 (*t).counter = ((NI) 0);
1117 unsureAsgnRef((void**) (&(*t).data), (tySequence__9chP3SzkaldXzawWQCDsqqg*) newSeq((&NTIkeyvaluepairseq__9chP3SzkaldXzawWQCDsqqg_), ((NI) (correctSizeX60gensym102_))));
1118 }
1119 LA4_: ;
1120 hc = (NI)0;
1121 index = rawGet__astalgo_1188((*t), key, (&hc));
1122 {
1123 if (!(((NI) 0) <= index)) goto LA8_;
1124 (*t).data->data[index].Field2 = val;
1125 }
1126 goto LA6_;
1127 LA8_: ;
1128 {
1129 {
1130 NI T13_;
1131 NI correctSizeX60gensym105_;
1132 T13_ = ((*t).data ? (*t).data->Sup.len : 0);
1133 if (!(T13_ == ((NI) 0))) goto LA14_;
1134 correctSizeX60gensym105_ = slotsNeeded__pureZcollectionsZtables_42(((NI) 32));
1135 (*t).counter = ((NI) 0);
1136 unsureAsgnRef((void**) (&(*t).data), (tySequence__9chP3SzkaldXzawWQCDsqqg*) newSeq((&NTIkeyvaluepairseq__9chP3SzkaldXzawWQCDsqqg_), ((NI) (correctSizeX60gensym105_))));
1137 }
1138 LA14_: ;
1139 {
1140 NIM_BOOL T18_;
1141 T18_ = (NIM_BOOL)0;
1142 T18_ = mustRehash__astalgo_1695((*t));
1143 if (!T18_) goto LA19_;
1144 enlarge__astalgo_1848(t);
1145 index = rawGetKnownHC__astalgo_2321((*t), key, hc);
1146 }
1147 LA19_: ;
1148 index = (NI)(((NI) -1) - index);
1149 rawInsert__astalgo_2152(t, (&(*t).data), key, val, hc, index);
1150 (*t).counter += ((NI) 1);
1151 }
1152 LA6_: ;
1153 }
N_INLINE(void,addInt__stdZprivateZdigitsutils_189)1154 static N_INLINE(void, addInt__stdZprivateZdigitsutils_189)(NimStringDesc** result, NI x) {
1155 addInt__stdZprivateZdigitsutils_167(result, ((NI64) (x)));
1156 }
N_NIMCALL(void,indentMore__astalgo_1039)1157 N_LIB_PRIVATE N_NIMCALL(void, indentMore__astalgo_1039)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0) {
1158 (*this_0).indent += ((NI) 2);
1159 }
N_NIMCALL(void,openCurly__astalgo_1062)1160 N_LIB_PRIVATE N_NIMCALL(void, openCurly__astalgo_1062)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0) {
1161 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1162 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_8));
1163 indentMore__astalgo_1039(this_0);
1164 (*this_0).firstItem = NIM_TRUE;
1165 }
N_NIMCALL(void,newlineAndIndent__astalgo_1051)1166 N_LIB_PRIVATE N_NIMCALL(void, newlineAndIndent__astalgo_1051)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0) {
1167 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1168 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_10));
1169 (*this_0).currentLine += ((NI) 1);
1170 {
1171 NI i;
1172 NI i_2;
1173 i = (NI)0;
1174 i_2 = ((NI) 0);
1175 {
1176 while (1) {
1177 if (!(i_2 < (*this_0).indent)) goto LA3;
1178 i = i_2;
1179 unsureAsgnRef((void**) (&(*this_0).res), addChar((*this_0).res, 32));
1180 i_2 += ((NI) 1);
1181 } LA3: ;
1182 }
1183 }
1184 }
N_NIMCALL(void,key__astalgo_1072)1185 N_LIB_PRIVATE N_NIMCALL(void, key__astalgo_1072)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, NimStringDesc* key) {
1186 {
1187 if (!!((*this_0).firstItem)) goto LA3_;
1188 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1189 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_9));
1190 }
1191 LA3_: ;
1192 (*this_0).firstItem = NIM_FALSE;
1193 newlineAndIndent__astalgo_1051(this_0);
1194 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1195 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1196 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, (key ? key->Sup.len : 0) + 0));
1197 appendString((*this_0).res, key);
1198 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 3));
1199 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_12));
1200 }
N_NIMCALL(void,value__astalgo_2558)1201 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2558)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw value) {
1202 {
1203 if (!(*this_0).useColor) goto LA3_;
1204 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 5));
1205 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_14));
1206 }
1207 LA3_: ;
1208 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1209 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1210 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, (reprEnum((NI)value, (&NTItsymkind__cNCW9acsSznmEccl1fgQwkw_)) ? reprEnum((NI)value, (&NTItsymkind__cNCW9acsSznmEccl1fgQwkw_))->Sup.len : 0) + 0));
1211 appendString((*this_0).res, reprEnum((NI)value, (&NTItsymkind__cNCW9acsSznmEccl1fgQwkw_)));
1212 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1213 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1214 {
1215 if (!(*this_0).useColor) goto LA7_;
1216 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
1217 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_7));
1218 }
1219 LA7_: ;
1220 }
N_NIMCALL(void,value__astalgo_1075)1221 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_1075)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, NimStringDesc* value) {
1222 {
1223 if (!(*this_0).useColor) goto LA3_;
1224 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 5));
1225 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_16));
1226 }
1227 LA3_: ;
1228 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1229 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1230 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, (value ? value->Sup.len : 0) + 0));
1231 appendString((*this_0).res, value);
1232 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1233 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1234 {
1235 if (!(*this_0).useColor) goto LA7_;
1236 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
1237 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_7));
1238 }
1239 LA7_: ;
1240 }
N_NIMCALL(void,value__astalgo_1078)1241 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_1078)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, NI64 value) {
1242 {
1243 if (!(*this_0).useColor) goto LA3_;
1244 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 5));
1245 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_18));
1246 }
1247 LA3_: ;
1248 addInt__stdZprivateZdigitsutils_167((&(*this_0).res), value);
1249 {
1250 if (!(*this_0).useColor) goto LA7_;
1251 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
1252 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_7));
1253 }
1254 LA7_: ;
1255 }
N_INLINE(NI,countSetBitsImpl__systemZcountbits95impl_61)1256 static N_INLINE(NI, countSetBitsImpl__systemZcountbits95impl_61)(NU64 x) {
1257 NI result;
1258 int T1_;
1259 result = (NI)0;
1260 T1_ = (int)0;
1261 T1_ = __builtin_popcountll(x);
1262 result = ((NI) (T1_));
1263 return result;
1264 }
N_INLINE(NI,countBits64)1265 static N_INLINE(NI, countBits64)(NU64 n) {
1266 NI result;
1267 result = (NI)0;
1268 result = countSetBitsImpl__systemZcountbits95impl_61(n);
1269 return result;
1270 }
N_NIMCALL(void,openBracket__astalgo_1068)1271 N_LIB_PRIVATE N_NIMCALL(void, openBracket__astalgo_1068)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0) {
1272 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1273 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_21));
1274 }
N_NIMCALL(void,value__astalgo_2591)1275 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2591)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw value) {
1276 {
1277 if (!(*this_0).useColor) goto LA3_;
1278 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 5));
1279 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_14));
1280 }
1281 LA3_: ;
1282 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1283 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1284 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, (reprEnum((NI)value, (&NTItsymflag__K9ay6LWMat9bUiT9bIbMxpDHw_)) ? reprEnum((NI)value, (&NTItsymflag__K9ay6LWMat9bUiT9bIbMxpDHw_))->Sup.len : 0) + 0));
1285 appendString((*this_0).res, reprEnum((NI)value, (&NTItsymflag__K9ay6LWMat9bUiT9bIbMxpDHw_)));
1286 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1287 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1288 {
1289 if (!(*this_0).useColor) goto LA7_;
1290 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
1291 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_7));
1292 }
1293 LA7_: ;
1294 }
N_NIMCALL(void,comma__astalgo_1066)1295 N_LIB_PRIVATE N_NIMCALL(void, comma__astalgo_1066)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0) {
1296 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 2));
1297 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_22));
1298 }
N_NIMCALL(void,closeBracket__astalgo_1070)1299 N_LIB_PRIVATE N_NIMCALL(void, closeBracket__astalgo_1070)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0) {
1300 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1301 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_23));
1302 }
N_NIMCALL(void,value__astalgo_2578)1303 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2578)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tySet_tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw value) {
1304 NI high;
1305 NI i;
1306 openBracket__astalgo_1068(this_0);
1307 high = (NI)(countBits64(value) - ((NI) 1));
1308 i = ((NI) 0);
1309 {
1310 tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw v;
1311 NI i_2;
1312 v = (tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw)0;
1313 i_2 = ((NI) 0);
1314 {
1315 while (1) {
1316 if (!(i_2 <= ((NI) 47))) goto LA3;
1317 {
1318 if (!((value &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) (i_2)))&63U)))!=0)) goto LA6_;
1319 v = ((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) (i_2));
1320 value__astalgo_2591(this_0, v);
1321 {
1322 if (!!((i == high))) goto LA10_;
1323 comma__astalgo_1066(this_0);
1324 }
1325 LA10_: ;
1326 i += ((NI) 1);
1327 }
1328 LA6_: ;
1329 i_2 += ((NI) 1);
1330 } LA3: ;
1331 }
1332 }
1333 closeBracket__astalgo_1070(this_0);
1334 }
N_NIMCALL(void,value__astalgo_2734)1335 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2734)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag value) {
1336 {
1337 if (!(*this_0).useColor) goto LA3_;
1338 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 5));
1339 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_14));
1340 }
1341 LA3_: ;
1342 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1343 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1344 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, (reprEnum((NI)value, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)) ? reprEnum((NI)value, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_))->Sup.len : 0) + 0));
1345 appendString((*this_0).res, reprEnum((NI)value, (&NTIttypekind__9a3YiReNVD0IJHWFKgXRe9ag_)));
1346 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1347 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1348 {
1349 if (!(*this_0).useColor) goto LA7_;
1350 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
1351 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_7));
1352 }
1353 LA7_: ;
1354 }
N_NIMCALL(void,value__astalgo_2767)1355 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2767)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw value) {
1356 {
1357 if (!(*this_0).useColor) goto LA3_;
1358 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 5));
1359 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_14));
1360 }
1361 LA3_: ;
1362 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1363 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1364 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, (reprEnum((NI)value, (&NTIttypeflag__x2m5g1NpbmDig4wLT3Ylhw_)) ? reprEnum((NI)value, (&NTIttypeflag__x2m5g1NpbmDig4wLT3Ylhw_))->Sup.len : 0) + 0));
1365 appendString((*this_0).res, reprEnum((NI)value, (&NTIttypeflag__x2m5g1NpbmDig4wLT3Ylhw_)));
1366 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1367 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1368 {
1369 if (!(*this_0).useColor) goto LA7_;
1370 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
1371 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_7));
1372 }
1373 LA7_: ;
1374 }
N_NIMCALL(void,value__astalgo_2754)1375 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2754)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tySet_tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw value) {
1376 NI high;
1377 NI i;
1378 openBracket__astalgo_1068(this_0);
1379 high = (NI)(countBits64(value) - ((NI) 1));
1380 i = ((NI) 0);
1381 {
1382 tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw v;
1383 NI i_2;
1384 v = (tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw)0;
1385 i_2 = ((NI) 0);
1386 {
1387 while (1) {
1388 if (!(i_2 <= ((NI) 44))) goto LA3;
1389 {
1390 if (!((value &((NU64)1<<((NU)(((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) (i_2)))&63U)))!=0)) goto LA6_;
1391 v = ((tyEnum_TTypeFlag__x2m5g1NpbmDig4wLT3Ylhw) (i_2));
1392 value__astalgo_2767(this_0, v);
1393 {
1394 if (!!((i == high))) goto LA10_;
1395 comma__astalgo_1066(this_0);
1396 }
1397 LA10_: ;
1398 i += ((NI) 1);
1399 }
1400 LA6_: ;
1401 i_2 += ((NI) 1);
1402 } LA3: ;
1403 }
1404 }
1405 closeBracket__astalgo_1070(this_0);
1406 }
N_NIMCALL(void,value__astalgo_2933)1407 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2933)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw value) {
1408 {
1409 if (!(*this_0).useColor) goto LA3_;
1410 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 5));
1411 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_14));
1412 }
1413 LA3_: ;
1414 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1415 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1416 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, (reprEnum((NI)value, (&NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_)) ? reprEnum((NI)value, (&NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_))->Sup.len : 0) + 0));
1417 appendString((*this_0).res, reprEnum((NI)value, (&NTItnodekind__G4E4Gxe7oI2Cm03rkiOzQw_)));
1418 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1419 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1420 {
1421 if (!(*this_0).useColor) goto LA7_;
1422 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
1423 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_7));
1424 }
1425 LA7_: ;
1426 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,percent___astalgo_353)1427 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, percent___astalgo_353)(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA** args, NI argsLen_0) {
1428 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
1429 result = NIM_NIL;
1430 result = runtimeFormat__ropes_271(((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_29), args, argsLen_0);
1431 return result;
1432 }
N_INLINE(void,appendChar)1433 static N_INLINE(void, appendChar)(NimStringDesc* dest, NIM_CHAR c) {
1434 (*dest).data[(*dest).Sup.len] = c;
1435 (*dest).data[(NI)((*dest).Sup.len + ((NI) 1))] = 0;
1436 (*dest).Sup.len += ((NI) 1);
1437 }
N_NIMCALL(NimStringDesc *,toYamlChar__astalgo_320)1438 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toYamlChar__astalgo_320)(NIM_CHAR c) {
1439 NimStringDesc* result;
1440 result = NIM_NIL;
1441 switch (((NU8)(c))) {
1442 case 0 ... 31:
1443 case 127 ... 255:
1444 {
1445 NimStringDesc* T2_;
1446 NimStringDesc* T3_;
1447 T2_ = NIM_NIL;
1448 T3_ = NIM_NIL;
1449 T3_ = toHex__pureZstrutils_1792(((NU8)(c)), ((NI) 4));
1450 T2_ = rawNewString((T3_ ? T3_->Sup.len : 0) + 2);
1451 appendString(T2_, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_30));
1452 appendString(T2_, T3_);
1453 result = T2_;
1454 }
1455 break;
1456 case 39:
1457 case 34:
1458 case 92:
1459 {
1460 NimStringDesc* T5_;
1461 T5_ = NIM_NIL;
1462 T5_ = rawNewString(2);
1463 appendChar(T5_, 92);
1464 appendChar(T5_, c);
1465 result = T5_;
1466 }
1467 break;
1468 default:
1469 {
1470 result = nimCharToStr(c);
1471 }
1472 break;
1473 }
1474 return result;
1475 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,makeYamlString__astalgo_330)1476 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, makeYamlString__astalgo_330)(NimStringDesc* s) {
1477 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
1478 NimStringDesc* res;
1479 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T10_;
1480 result = NIM_NIL;
1481 result = ((tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*) NIM_NIL);
1482 res = copyString(((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1483 {
1484 NI i;
1485 NI colontmp_;
1486 NI i_2;
1487 i = (NI)0;
1488 colontmp_ = (NI)0;
1489 colontmp_ = (s ? s->Sup.len : 0);
1490 i_2 = ((NI) 0);
1491 {
1492 while (1) {
1493 NimStringDesc* T9_;
1494 if (!(i_2 < colontmp_)) goto LA3;
1495 i = i_2;
1496 {
1497 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T8_;
1498 if (!((NI)((NI)(i + ((NI) 1)) % ((NI) 64)) == ((NI) 0))) goto LA6_;
1499 res = addChar(res, 34);
1500 res = resizeString(res, 1);
1501 appendString(res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_10));
1502 T8_ = NIM_NIL;
1503 T8_ = rope__ropes_109(res);
1504 add__ropes_159(&result, T8_);
1505 res = copyString(((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1506 }
1507 LA6_: ;
1508 T9_ = NIM_NIL;
1509 T9_ = toYamlChar__astalgo_320(s->data[i]);
1510 res = resizeString(res, (T9_ ? T9_->Sup.len : 0) + 0);
1511 appendString(res, T9_);
1512 i_2 += ((NI) 1);
1513 } LA3: ;
1514 }
1515 }
1516 res = addChar(res, 34);
1517 T10_ = NIM_NIL;
1518 T10_ = rope__ropes_109(res);
1519 add__ropes_159(&result, T10_);
1520 return result;
1521 }
N_INLINE(NI,toLinenumber__msgs_609)1522 static N_INLINE(NI, toLinenumber__msgs_609)(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
1523 NI result;
1524 result = (NI)0;
1525 result = ((NI) (info.line));
1526 return result;
1527 }
N_INLINE(NI,toColumn__msgs_612)1528 static N_INLINE(NI, toColumn__msgs_612)(tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
1529 NI result;
1530 result = (NI)0;
1531 result = ((NI) (info.col));
1532 return result;
1533 }
N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA *,lineInfoToStr__astalgo_28)1534 N_LIB_PRIVATE N_NIMCALL(tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA*, lineInfoToStr__astalgo_28)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info) {
1535 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* result;
1536 tyArray__wqYjTJU9ab2ZgEFMaQc3vNA T1_;
1537 NimStringDesc* T2_;
1538 NI T15_;
1539 NI T16_;
1540 result = NIM_NIL;
1541 nimZeroMem((void*)T1_, sizeof(tyArray__wqYjTJU9ab2ZgEFMaQc3vNA));
1542 T2_ = NIM_NIL;
1543 {
1544 NIM_BOOL T5_;
1545 T5_ = (NIM_BOOL)0;
1546 T5_ = (info.fileIndex < ((NI32) 0));
1547 if (T5_) goto LA6_;
1548 T5_ = (conf == ((tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw*) NIM_NIL));
1549 LA6_: ;
1550 if (!T5_) goto LA7_;
1551 {
1552 if (!(info.fileIndex == ((NI32) -3))) goto LA11_;
1553 T2_ = copyString(((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_31));
1554 }
1555 goto LA9_;
1556 LA11_: ;
1557 {
1558 T2_ = copyString(((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_32));
1559 }
1560 LA9_: ;
1561 }
1562 goto LA3_;
1563 LA7_: ;
1564 {
1565 T2_ = copyString((*conf).m.fileInfos->data[info.fileIndex].shortName);
1566 }
1567 LA3_: ;
1568 T1_[0] = makeYamlString__astalgo_330(T2_);
1569 T15_ = (NI)0;
1570 T15_ = toLinenumber__msgs_609(info);
1571 T1_[1] = rope__ropes_115(((NI64) (T15_)));
1572 T16_ = (NI)0;
1573 T16_ = toColumn__msgs_612(info);
1574 T1_[2] = rope__ropes_115(((NI64) (T16_)));
1575 result = percent___astalgo_353(T1_, 3);
1576 return result;
1577 }
N_INLINE(NI,countSetBitsImpl__systemZcountbits95impl_26)1578 static N_INLINE(NI, countSetBitsImpl__systemZcountbits95impl_26)(NU32 x) {
1579 NI result;
1580 int T1_;
1581 result = (NI)0;
1582 T1_ = (int)0;
1583 T1_ = __builtin_popcount(x);
1584 result = ((NI) (T1_));
1585 return result;
1586 }
N_INLINE(NI,countBits32)1587 static N_INLINE(NI, countBits32)(NU32 n) {
1588 NI result;
1589 result = (NI)0;
1590 result = countSetBitsImpl__systemZcountbits95impl_26(n);
1591 return result;
1592 }
N_NIMCALL(void,value__astalgo_2988)1593 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2988)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg value) {
1594 {
1595 if (!(*this_0).useColor) goto LA3_;
1596 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 5));
1597 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_14));
1598 }
1599 LA3_: ;
1600 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1601 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1602 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, (reprEnum((NI)value, (&NTItnodeflag__jyh9acXHkhZANSSvPIY7ZLg_)) ? reprEnum((NI)value, (&NTItnodeflag__jyh9acXHkhZANSSvPIY7ZLg_))->Sup.len : 0) + 0));
1603 appendString((*this_0).res, reprEnum((NI)value, (&NTItnodeflag__jyh9acXHkhZANSSvPIY7ZLg_)));
1604 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1605 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_11));
1606 {
1607 if (!(*this_0).useColor) goto LA7_;
1608 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
1609 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_7));
1610 }
1611 LA7_: ;
1612 }
N_NIMCALL(void,value__astalgo_2948)1613 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_2948)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg value) {
1614 NI high;
1615 NI i;
1616 openBracket__astalgo_1068(this_0);
1617 high = (NI)(countBits32(value) - ((NI) 1));
1618 i = ((NI) 0);
1619 {
1620 tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg v;
1621 NI i_2;
1622 v = (tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg)0;
1623 i_2 = ((NI) 0);
1624 {
1625 while (1) {
1626 if (!(i_2 <= ((NI) 23))) goto LA3;
1627 {
1628 if (!((value &((NU32)1<<((NU)(((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) (i_2)))&31U)))!=0)) goto LA6_;
1629 v = ((tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg) (i_2));
1630 value__astalgo_2988(this_0, v);
1631 {
1632 if (!!((i == high))) goto LA10_;
1633 comma__astalgo_1066(this_0);
1634 }
1635 LA10_: ;
1636 i += ((NI) 1);
1637 }
1638 LA6_: ;
1639 i_2 += ((NI) 1);
1640 } LA3: ;
1641 }
1642 }
1643 closeBracket__astalgo_1070(this_0);
1644 }
N_INLINE(NIM_BOOL,signbit__astalgo_926)1645 static N_INLINE(NIM_BOOL, signbit__astalgo_926)(NF x) {
1646 NIM_BOOL result;
1647 int T1_;
1648 result = (NIM_BOOL)0;
1649 T1_ = (int)0;
1650 T1_ = signbit(x);
1651 result = !((T1_ == ((NI32) 0)));
1652 return result;
1653 }
N_NIMCALL(NimStringDesc *,toStrMaxPrecision__astalgo_920)1654 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toStrMaxPrecision__astalgo_920)(NF f) {
1655 NimStringDesc* result;
1656 tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA T1_;
1657 result = NIM_NIL;
1658 T1_ = (tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA)0;
1659 T1_ = classify__pureZmath_147(f);
1660 switch (T1_) {
1661 case ((tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA) 4):
1662 {
1663 {
1664 NIM_BOOL T5_;
1665 T5_ = (NIM_BOOL)0;
1666 T5_ = signbit__astalgo_926(f);
1667 if (!T5_) goto LA6_;
1668 result = copyString(((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_36));
1669 }
1670 goto LA3_;
1671 LA6_: ;
1672 {
1673 result = copyString(((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_37));
1674 }
1675 LA3_: ;
1676 }
1677 break;
1678 case ((tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA) 3):
1679 {
1680 result = copyString(((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_38));
1681 }
1682 break;
1683 case ((tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA) 2):
1684 {
1685 result = copyString(((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_39));
1686 }
1687 break;
1688 case ((tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA) 5):
1689 {
1690 result = copyString(((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_40));
1691 }
1692 break;
1693 case ((tyEnum_FloatClass__pPga1yW9b8J9cwNnm9b1aPRnA) 6):
1694 {
1695 result = copyString(((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_41));
1696 }
1697 break;
1698 default:
1699 {
1700 addFloatRoundtrip__system_3127((&result), f);
1701 result = resizeString(result, 0);
1702 appendString(result, ((NimStringDesc*) NIM_NIL));
1703 }
1704 break;
1705 }
1706 return result;
1707 }
N_INLINE(NIM_BOOL,eqeq___idents_220)1708 static N_INLINE(NIM_BOOL, eqeq___idents_220)(tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* a, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* b) {
1709 NIM_BOOL result;
1710 result = (NIM_BOOL)0;
1711 {
1712 NIM_BOOL T3_;
1713 T3_ = (NIM_BOOL)0;
1714 T3_ = (a == 0);
1715 if (T3_) goto LA4_;
1716 T3_ = (b == 0);
1717 LA4_: ;
1718 if (!T3_) goto LA5_;
1719 result = (a == b);
1720 }
1721 goto LA1_;
1722 LA5_: ;
1723 {
1724 result = ((*a).id == (*b).id);
1725 }
1726 LA1_: ;
1727 return result;
1728 }
N_INLINE(NI,len__ast_3198)1729 static N_INLINE(NI, len__ast_3198)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
1730 NI result;
1731 NI T1_;
1732 result = (NI)0;
1733 T1_ = ((*n)._kind_6.sons ? (*n)._kind_6.sons->Sup.len : 0);
1734 result = T1_;
1735 return result;
1736 }
N_NIMCALL(void,indentLess__astalgo_1045)1737 N_LIB_PRIVATE N_NIMCALL(void, indentLess__astalgo_1045)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0) {
1738 (*this_0).indent -= ((NI) 2);
1739 }
N_NIMCALL(void,closeCurly__astalgo_1064)1740 N_LIB_PRIVATE N_NIMCALL(void, closeCurly__astalgo_1064)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0) {
1741 indentLess__astalgo_1045(this_0);
1742 newlineAndIndent__astalgo_1051(this_0);
1743 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 1));
1744 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_45));
1745 }
N_NIMCALL(void,value__astalgo_1100)1746 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_1100)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* value) {
1747 NI indexX60gensym127_;
1748 { {
1749 if (!(value == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL))) goto LA3_;
1750 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
1751 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_3));
1752 goto BeforeRet_;
1753 }
1754 LA3_: ;
1755 indexX60gensym127_ = getOrDefault__astalgo_1178((*this_0).visited, ((void*) (value)), ((NI) -1));
1756 {
1757 if (!(indexX60gensym127_ < ((NI) 0))) goto LA7_;
1758 X5BX5Deq___astalgo_1522((&(*this_0).visited), ((void*) (value)), (*this_0).currentLine);
1759 }
1760 goto LA5_;
1761 LA7_: ;
1762 {
1763 {
1764 if (!(*this_0).useColor) goto LA12_;
1765 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 5));
1766 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_4));
1767 }
1768 LA12_: ;
1769 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 9));
1770 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_5));
1771 addInt__stdZprivateZdigitsutils_189((&(*this_0).res), (NI)((*this_0).currentLine - indexX60gensym127_));
1772 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 15));
1773 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_6));
1774 {
1775 if (!(*this_0).useColor) goto LA16_;
1776 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
1777 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_7));
1778 }
1779 LA16_: ;
1780 goto BeforeRet_;
1781 }
1782 LA5_: ;
1783 openCurly__astalgo_1062(this_0);
1784 key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_13));
1785 value__astalgo_2933(this_0, (*value).kind);
1786 {
1787 NimStringDesc* T20_;
1788 NimStringDesc* T23_;
1789 T20_ = NIM_NIL;
1790 T20_ = comment__ast_993(value);
1791 if (!(((NI) 0) < (T20_ ? T20_->Sup.len : 0))) goto LA21_;
1792 key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_27));
1793 T23_ = NIM_NIL;
1794 T23_ = comment__ast_993(value);
1795 value__astalgo_1075(this_0, T23_);
1796 }
1797 LA21_: ;
1798 {
1799 tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* T28_;
1800 NimStringDesc* T29_;
1801 if (!!(((*this_0).conf == ((tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw*) NIM_NIL)))) goto LA26_;
1802 key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_28));
1803 T28_ = NIM_NIL;
1804 T28_ = lineInfoToStr__astalgo_28((*this_0).conf, (*value).info);
1805 T29_ = NIM_NIL;
1806 T29_ = dollar___ropes_250(T28_);
1807 value__astalgo_1075(this_0, T29_);
1808 }
1809 LA26_: ;
1810 {
1811 if (!!(((*value).flags == 0))) goto LA32_;
1812 key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_20));
1813 value__astalgo_2948(this_0, (*value).flags);
1814 }
1815 LA32_: ;
1816 {
1817 if (!!(((*value).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)))) goto LA36_;
1818 key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_24));
1819 value__astalgo_2734(this_0, (*(*value).typ).kind);
1820 }
1821 goto LA34_;
1822 LA36_: ;
1823 {
1824 key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_24));
1825 value__astalgo_1075(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_33));
1826 }
1827 LA34_: ;
1828 switch ((*value).kind) {
1829 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 15):
1830 {
1831 key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_34));
1832 value__astalgo_1078(this_0, (*value)._kind_1.intVal);
1833 }
1834 break;
1835 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 16):
1836 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 17):
1837 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 18):
1838 {
1839 NimStringDesc* T41_;
1840 key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_35));
1841 T41_ = NIM_NIL;
1842 T41_ = toStrMaxPrecision__astalgo_920((*value)._kind_2.floatVal);
1843 value__astalgo_1075(this_0, T41_);
1844 }
1845 break;
1846 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22):
1847 {
1848 key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_42));
1849 value__astalgo_1075(this_0, (*value)._kind_3.strVal);
1850 }
1851 break;
1852 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
1853 {
1854 key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_25));
1855 value__astalgo_1103(this_0, (*value)._kind_4.sym);
1856 }
1857 break;
1858 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2):
1859 {
1860 {
1861 NIM_BOOL T47_;
1862 T47_ = (NIM_BOOL)0;
1863 T47_ = eqeq___idents_220((*value)._kind_5.ident, ((tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA*) NIM_NIL));
1864 if (!!(T47_)) goto LA48_;
1865 key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_43));
1866 value__astalgo_1075(this_0, (*(*value)._kind_5.ident).s);
1867 }
1868 LA48_: ;
1869 }
1870 break;
1871 default:
1872 {
1873 {
1874 NIM_BOOL T53_;
1875 T53_ = (NIM_BOOL)0;
1876 T53_ = (*this_0).renderSymType;
1877 if (!(T53_)) goto LA54_;
1878 T53_ = !(((*value).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
1879 LA54_: ;
1880 if (!T53_) goto LA55_;
1881 key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_24));
1882 value__astalgo_1097(this_0, (*value).typ);
1883 }
1884 LA55_: ;
1885 {
1886 NI T59_;
1887 T59_ = (NI)0;
1888 T59_ = len__ast_3198(value);
1889 if (!(((NI) 0) < T59_)) goto LA60_;
1890 key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_44));
1891 openBracket__astalgo_1068(this_0);
1892 {
1893 NI i;
1894 NI colontmp_;
1895 NI i_2;
1896 i = (NI)0;
1897 colontmp_ = (NI)0;
1898 colontmp_ = len__ast_3198(value);
1899 i_2 = ((NI) 0);
1900 {
1901 while (1) {
1902 if (!(i_2 < colontmp_)) goto LA64;
1903 i = i_2;
1904 value__astalgo_1100(this_0, (*value)._kind_6.sons->data[i]);
1905 {
1906 NI T67_;
1907 T67_ = (NI)0;
1908 T67_ = len__ast_3198(value);
1909 if (!!((i == (NI)(T67_ - ((NI) 1))))) goto LA68_;
1910 comma__astalgo_1066(this_0);
1911 }
1912 LA68_: ;
1913 i_2 += ((NI) 1);
1914 } LA64: ;
1915 }
1916 }
1917 closeBracket__astalgo_1070(this_0);
1918 }
1919 LA60_: ;
1920 }
1921 break;
1922 }
1923 closeCurly__astalgo_1064(this_0);
1924 }BeforeRet_: ;
1925 }
N_INLINE(NI,len__ast_4002)1926 static N_INLINE(NI, len__ast_4002)(tyObject_TType__facALICuu8zUj0hjvbTLFg* n) {
1927 NI result;
1928 NI T1_;
1929 result = (NI)0;
1930 T1_ = ((*n).sons ? (*n).sons->Sup.len : 0);
1931 result = T1_;
1932 return result;
1933 }
N_NIMCALL(void,value__astalgo_1097)1934 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_1097)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyObject_TType__facALICuu8zUj0hjvbTLFg* value) {
1935 NI indexX60gensym117_;
1936 tyObject_TType__facALICuu8zUj0hjvbTLFg* xX60gensym118_;
1937 { {
1938 if (!(value == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL))) goto LA3_;
1939 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
1940 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_3));
1941 goto BeforeRet_;
1942 }
1943 LA3_: ;
1944 indexX60gensym117_ = getOrDefault__astalgo_1178((*this_0).visited, ((void*) (value)), ((NI) -1));
1945 {
1946 if (!(indexX60gensym117_ < ((NI) 0))) goto LA7_;
1947 X5BX5Deq___astalgo_1522((&(*this_0).visited), ((void*) (value)), (*this_0).currentLine);
1948 }
1949 goto LA5_;
1950 LA7_: ;
1951 {
1952 {
1953 if (!(*this_0).useColor) goto LA12_;
1954 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 5));
1955 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_4));
1956 }
1957 LA12_: ;
1958 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 9));
1959 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_5));
1960 addInt__stdZprivateZdigitsutils_189((&(*this_0).res), (NI)((*this_0).currentLine - indexX60gensym117_));
1961 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 15));
1962 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_6));
1963 {
1964 if (!(*this_0).useColor) goto LA16_;
1965 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
1966 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_7));
1967 }
1968 LA16_: ;
1969 goto BeforeRet_;
1970 }
1971 LA5_: ;
1972 openCurly__astalgo_1062(this_0);
1973 key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_13));
1974 value__astalgo_2734(this_0, (*value).kind);
1975 key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_17));
1976 xX60gensym118_ = value;
1977 value__astalgo_1078(this_0, ((NI64) ((NI)((NI)((NU64)(((NI) ((*xX60gensym118_).Sup.itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym118_).Sup.itemId.item))))));
1978 {
1979 if (!!(((*value).sym == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA20_;
1980 key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_25));
1981 value__astalgo_1103(this_0, (*value).sym);
1982 }
1983 LA20_: ;
1984 {
1985 if (!(((NI) 0) < countBits64((*value).flags))) goto LA24_;
1986 key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_20));
1987 value__astalgo_2754(this_0, (*value).flags);
1988 }
1989 LA24_: ;
1990 {
1991 NIM_BOOL T28_;
1992 T28_ = (NIM_BOOL)0;
1993 T28_ = ((*value).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 1) || (*value).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 2) || (*value).kind == ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 14) || (*value).kind >= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 31) && (*value).kind <= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 35) || (*value).kind >= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 36) && (*value).kind <= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 39) || (*value).kind >= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 40) && (*value).kind <= ((tyEnum_TTypeKind__9a3YiReNVD0IJHWFKgXRe9ag) 44));
1994 if (!(T28_)) goto LA29_;
1995 T28_ = !(((*value).n == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)));
1996 LA29_: ;
1997 if (!T28_) goto LA30_;
1998 key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_26));
1999 value__astalgo_1100(this_0, (*value).n);
2000 }
2001 LA30_: ;
2002 {
2003 NI T34_;
2004 T34_ = (NI)0;
2005 T34_ = len__ast_4002(value);
2006 if (!(((NI) 0) < T34_)) goto LA35_;
2007 key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_44));
2008 openBracket__astalgo_1068(this_0);
2009 {
2010 NI i;
2011 NI colontmp_;
2012 NI i_2;
2013 i = (NI)0;
2014 colontmp_ = (NI)0;
2015 colontmp_ = len__ast_4002(value);
2016 i_2 = ((NI) 0);
2017 {
2018 while (1) {
2019 if (!(i_2 < colontmp_)) goto LA39;
2020 i = i_2;
2021 value__astalgo_1097(this_0, (*value).sons->data[i]);
2022 {
2023 NI T42_;
2024 T42_ = (NI)0;
2025 T42_ = len__ast_4002(value);
2026 if (!!((i == (NI)(T42_ - ((NI) 1))))) goto LA43_;
2027 comma__astalgo_1066(this_0);
2028 }
2029 LA43_: ;
2030 i_2 += ((NI) 1);
2031 } LA39: ;
2032 }
2033 }
2034 closeBracket__astalgo_1070(this_0);
2035 }
2036 LA35_: ;
2037 {
2038 if (!!(((*value).n == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL)))) goto LA47_;
2039 key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_26));
2040 value__astalgo_1100(this_0, (*value).n);
2041 }
2042 LA47_: ;
2043 closeCurly__astalgo_1064(this_0);
2044 }BeforeRet_: ;
2045 }
N_NIMCALL(void,value__astalgo_1103)2046 N_LIB_PRIVATE N_NIMCALL(void, value__astalgo_1103)(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA* this_0, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* value) {
2047 NI indexX60gensym96_;
2048 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym113_;
2049 { {
2050 if (!(value == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL))) goto LA3_;
2051 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
2052 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_3));
2053 goto BeforeRet_;
2054 }
2055 LA3_: ;
2056 indexX60gensym96_ = getOrDefault__astalgo_1178((*this_0).visited, ((void*) (value)), ((NI) -1));
2057 {
2058 if (!(indexX60gensym96_ < ((NI) 0))) goto LA7_;
2059 X5BX5Deq___astalgo_1522((&(*this_0).visited), ((void*) (value)), (*this_0).currentLine);
2060 }
2061 goto LA5_;
2062 LA7_: ;
2063 {
2064 {
2065 if (!(*this_0).useColor) goto LA12_;
2066 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 5));
2067 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_4));
2068 }
2069 LA12_: ;
2070 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 9));
2071 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_5));
2072 addInt__stdZprivateZdigitsutils_189((&(*this_0).res), (NI)((*this_0).currentLine - indexX60gensym96_));
2073 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 15));
2074 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_6));
2075 {
2076 if (!(*this_0).useColor) goto LA16_;
2077 unsureAsgnRef((void**) (&(*this_0).res), resizeString((*this_0).res, 4));
2078 appendString((*this_0).res, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_7));
2079 }
2080 LA16_: ;
2081 goto BeforeRet_;
2082 }
2083 LA5_: ;
2084 openCurly__astalgo_1062(this_0);
2085 key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_13));
2086 value__astalgo_2558(this_0, (*value).kind);
2087 key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_15));
2088 value__astalgo_1075(this_0, (*(*value).name).s);
2089 key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_17));
2090 xX60gensym113_ = value;
2091 value__astalgo_1078(this_0, ((NI64) ((NI)((NI)((NU64)(((NI) ((*xX60gensym113_).Sup.itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym113_).Sup.itemId.item))))));
2092 {
2093 if (!((1572872 &((NU32)1<<((NU)((*value).kind)&31U)))!=0)) goto LA20_;
2094 key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_19));
2095 value__astalgo_1078(this_0, ((NI64) ((*value).position)));
2096 }
2097 LA20_: ;
2098 {
2099 if (!(((NI) 0) < countBits64((*value).flags))) goto LA24_;
2100 key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_20));
2101 value__astalgo_2578(this_0, (*value).flags);
2102 }
2103 LA24_: ;
2104 {
2105 NIM_BOOL T28_;
2106 T28_ = (NIM_BOOL)0;
2107 T28_ = (*this_0).renderSymType;
2108 if (!(T28_)) goto LA29_;
2109 T28_ = !(((*value).typ == ((tyObject_TType__facALICuu8zUj0hjvbTLFg*) NIM_NIL)));
2110 LA29_: ;
2111 if (!T28_) goto LA30_;
2112 key__astalgo_1072(this_0, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_24));
2113 value__astalgo_1097(this_0, (*value).typ);
2114 }
2115 LA30_: ;
2116 closeCurly__astalgo_1064(this_0);
2117 }BeforeRet_: ;
2118 }
N_NIMCALL(void,debugSym)2119 N_LIB_PRIVATE N_NIMCALL(void, debugSym)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* n, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
2120 tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA this_1;
2121 tyArray__nHXaesL0DJZHyVS07ARPRA T1_;
2122 nimZeroMem((void*)(&this_1), sizeof(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA));
2123 initTable__astalgo_3033(((NI) 32), (&this_1.visited));
2124 this_1.renderSymType = NIM_TRUE;
2125 this_1.useColor = NIM_TRUE;
2126 value__astalgo_1103((&this_1), n);
2127 nimZeroMem((void*)T1_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
2128 T1_[0] = copyString(this_1.res);
2129 echoBinSafe(T1_, 1);
2130 }
N_NIMCALL(void,debugType)2131 N_LIB_PRIVATE N_NIMCALL(void, debugType)(tyObject_TType__facALICuu8zUj0hjvbTLFg* n, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
2132 tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA this_1;
2133 tyArray__nHXaesL0DJZHyVS07ARPRA T1_;
2134 nimZeroMem((void*)(&this_1), sizeof(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA));
2135 initTable__astalgo_3033(((NI) 32), (&this_1.visited));
2136 this_1.renderSymType = NIM_TRUE;
2137 this_1.useColor = NIM_TRUE;
2138 value__astalgo_1097((&this_1), n);
2139 nimZeroMem((void*)T1_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
2140 T1_[0] = copyString(this_1.res);
2141 echoBinSafe(T1_, 1);
2142 }
N_NIMCALL(void,debugNode)2143 N_LIB_PRIVATE N_NIMCALL(void, debugNode)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
2144 tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA this_1;
2145 tyArray__nHXaesL0DJZHyVS07ARPRA T1_;
2146 nimZeroMem((void*)(&this_1), sizeof(tyObject_DebugPrinter__a6duEI3KVtgLLu9cNBssigA));
2147 initTable__astalgo_3033(((NI) 32), (&this_1.visited));
2148 this_1.useColor = NIM_TRUE;
2149 value__astalgo_1100((&this_1), n);
2150 nimZeroMem((void*)T1_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
2151 T1_[0] = copyString(this_1.res);
2152 echoBinSafe(T1_, 1);
2153 }
N_INLINE(NI,nextTry__astalgo_90)2154 static N_INLINE(NI, nextTry__astalgo_90)(NI h, NI maxHash) {
2155 NI result;
2156 result = (NI)0;
2157 result = (NI)((NI)((NI)(((NI) 5) * h) + ((NI) 1)) & maxHash);
2158 return result;
2159 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,strTableGet__astalgo_3390)2160 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, strTableGet__astalgo_3390)(tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA t, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* name) {
2161 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
2162 NI h;
2163 NI T1_;
2164 result = NIM_NIL;
2165 T1_ = ((t.data ? t.data->Sup.len : 0)-1);
2166 h = (NI)((*name).h & T1_);
2167 {
2168 while (1) {
2169 NI T12_;
2170 result = t.data->data[h];
2171 {
2172 if (!(result == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL))) goto LA6_;
2173 goto LA2;
2174 }
2175 LA6_: ;
2176 {
2177 if (!((*(*result).name).id == (*name).id)) goto LA10_;
2178 goto LA2;
2179 }
2180 LA10_: ;
2181 T12_ = ((t.data ? t.data->Sup.len : 0)-1);
2182 h = nextTry__astalgo_90(h, T12_);
2183 }
2184 } LA2: ;
2185 return result;
2186 }
N_NIMCALL(NIM_BOOL,mustRehash__astalgo_87)2187 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, mustRehash__astalgo_87)(NI length, NI counter) {
2188 NIM_BOOL result;
2189 NIM_BOOL T1_;
2190 result = (NIM_BOOL)0;
2191 T1_ = (NIM_BOOL)0;
2192 T1_ = ((NI)(length * ((NI) 2)) < (NI)(counter * ((NI) 3)));
2193 if (T1_) goto LA2_;
2194 T1_ = ((NI)(length - counter) < ((NI) 4));
2195 LA2_: ;
2196 result = T1_;
2197 return result;
2198 }
N_INLINE(NI,pluspercent___system_696)2199 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y) {
2200 NI result;
2201 result = (NI)0;
2202 result = ((NI) ((NU)((NU64)(((NU) (x))) + (NU64)(((NU) (y))))));
2203 return result;
2204 }
N_INLINE(void,incRef__system_5309)2205 static N_INLINE(void, incRef__system_5309)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
2206 (*c).refcount = pluspercent___system_696((*c).refcount, ((NI) 8));
2207 }
N_INLINE(NI,minuspercent___system_716)2208 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y) {
2209 NI result;
2210 result = (NI)0;
2211 result = ((NI) ((NU)((NU64)(((NU) (x))) - (NU64)(((NU) (y))))));
2212 return result;
2213 }
N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g *,usrToCell__system_5271)2214 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5271)(void* usr) {
2215 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* result;
2216 NI T1_;
2217 result = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
2218 T1_ = (NI)0;
2219 T1_ = minuspercent___system_716(((NI) (ptrdiff_t) (usr)), ((NI) 16));
2220 result = ((tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*) (T1_));
2221 return result;
2222 }
N_INLINE(NIM_BOOL,ltpercent___system_1005)2223 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y) {
2224 NIM_BOOL result;
2225 result = (NIM_BOOL)0;
2226 result = ((NU64)(((NU) (x))) < (NU64)(((NU) (y))));
2227 return result;
2228 }
N_INLINE(void,rtlAddZCT__system_5314)2229 static N_INLINE(void, rtlAddZCT__system_5314)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
2230 addZCT__system_5265((&gch__system_5218.zct), c);
2231 }
N_INLINE(void,decRef__system_5316)2232 static N_INLINE(void, decRef__system_5316)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
2233 (*c).refcount = minuspercent___system_716((*c).refcount, ((NI) 8));
2234 {
2235 NIM_BOOL T3_;
2236 T3_ = (NIM_BOOL)0;
2237 T3_ = ltpercent___system_1005((*c).refcount, ((NI) 8));
2238 if (!T3_) goto LA4_;
2239 rtlAddZCT__system_5314(c);
2240 }
2241 LA4_: ;
2242 }
N_INLINE(void,asgnRef)2243 static N_INLINE(void, asgnRef)(void** dest, void* src) {
2244 {
2245 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T5_;
2246 if (!!((src == NIM_NIL))) goto LA3_;
2247 T5_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
2248 T5_ = usrToCell__system_5271(src);
2249 incRef__system_5309(T5_);
2250 }
2251 LA3_: ;
2252 {
2253 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T10_;
2254 if (!!(((*dest) == NIM_NIL))) goto LA8_;
2255 T10_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
2256 T10_ = usrToCell__system_5271((*dest));
2257 decRef__system_5316(T10_);
2258 }
2259 LA8_: ;
2260 (*dest) = src;
2261 }
N_NIMCALL(void,strTableRawInsert__astalgo_3252)2262 N_LIB_PRIVATE N_NIMCALL(void, strTableRawInsert__astalgo_3252)(tySequence__eHqUwlHGGaPw0TDPDeL79cQ** data, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* n) {
2263 NI h;
2264 NI T1_;
2265 { T1_ = (((*data) ? (*data)->Sup.len : 0)-1);
2266 h = (NI)((*(*n).name).h & T1_);
2267 {
2268 while (1) {
2269 NI T8_;
2270 if (!!(((*data)->data[h] == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA3;
2271 {
2272 if (!((*data)->data[h] == n)) goto LA6_;
2273 goto BeforeRet_;
2274 }
2275 LA6_: ;
2276 T8_ = (((*data) ? (*data)->Sup.len : 0)-1);
2277 h = nextTry__astalgo_90(h, T8_);
2278 } LA3: ;
2279 }
2280 asgnRef((void**) (&(*data)->data[h]), n);
2281 }BeforeRet_: ;
2282 }
N_NIMCALL(void,strTableEnlarge__astalgo_3306)2283 N_LIB_PRIVATE N_NIMCALL(void, strTableEnlarge__astalgo_3306)(tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA* t) {
2284 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* n;
2285 NI T1_;
2286 tySequence__eHqUwlHGGaPw0TDPDeL79cQ* T10_;
2287 n = NIM_NIL;
2288 T1_ = ((*t).data ? (*t).data->Sup.len : 0);
2289 n = (tySequence__eHqUwlHGGaPw0TDPDeL79cQ*) newSeq((&NTIseqLpsymT__eHqUwlHGGaPw0TDPDeL79cQ_), ((NI) ((NI)(T1_ * ((NI) 2)))));
2290 {
2291 NI i;
2292 NI colontmp_;
2293 NI T3_;
2294 NI res;
2295 i = (NI)0;
2296 colontmp_ = (NI)0;
2297 T3_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
2298 colontmp_ = T3_;
2299 res = ((NI) 0);
2300 {
2301 while (1) {
2302 if (!(res <= colontmp_)) goto LA5;
2303 i = res;
2304 {
2305 if (!!(((*t).data->data[i] == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA8_;
2306 strTableRawInsert__astalgo_3252((&n), (*t).data->data[i]);
2307 }
2308 LA8_: ;
2309 res += ((NI) 1);
2310 } LA5: ;
2311 }
2312 }
2313 T10_ = NIM_NIL;
2314 T10_ = (*t).data;
2315 unsureAsgnRef((void**) (&(*t).data), n);
2316 n = T10_;
2317 }
N_NIMCALL(void,strTableAdd__astalgo_3332)2318 N_LIB_PRIVATE N_NIMCALL(void, strTableAdd__astalgo_3332)(tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA* t, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* n) {
2319 {
2320 NI T3_;
2321 NIM_BOOL T4_;
2322 T3_ = ((*t).data ? (*t).data->Sup.len : 0);
2323 T4_ = (NIM_BOOL)0;
2324 T4_ = mustRehash__astalgo_87(T3_, (*t).counter);
2325 if (!T4_) goto LA5_;
2326 strTableEnlarge__astalgo_3306(t);
2327 }
2328 LA5_: ;
2329 strTableRawInsert__astalgo_3252((&(*t).data), n);
2330 (*t).counter += ((NI) 1);
2331 }
N_INLINE(NI,nextTry__stdZpackedsets_41)2332 static N_INLINE(NI, nextTry__stdZpackedsets_41)(NI h, NI maxHash, NI* perturb) {
2333 NI result;
2334 NU perturb2;
2335 result = (NI)0;
2336 perturb2 = (NU)((NU64)(((NU) ((*perturb)))) >> (NU64)(((NI) 5)));
2337 (*perturb) = ((NI) (perturb2));
2338 result = (NI)((NI)((NI)((NI)(((NI) 5) * h) + ((NI) 1)) + (*perturb)) & maxHash);
2339 return result;
2340 }
N_NIMCALL(tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA *,packedSetGet__astalgo_433)2341 N_LIB_PRIVATE N_NIMCALL(tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA*, packedSetGet__astalgo_433)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* t, NI key) {
2342 tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* result;
2343 NI h;
2344 NI perturb;
2345 { result = NIM_NIL;
2346 h = (NI)(key & (*t).max);
2347 perturb = key;
2348 {
2349 while (1) {
2350 if (!!(((*t).data->data[h] == ((tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA*) NIM_NIL)))) goto LA2;
2351 {
2352 if (!((*(*t).data->data[h]).key == key)) goto LA5_;
2353 result = (*t).data->data[h];
2354 goto BeforeRet_;
2355 }
2356 LA5_: ;
2357 h = nextTry__stdZpackedsets_41(h, (*t).max, (&perturb));
2358 } LA2: ;
2359 }
2360 result = ((tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA*) NIM_NIL);
2361 }BeforeRet_: ;
2362 return result;
2363 }
N_NIMCALL(NIM_BOOL,containsOrIncl__astalgo_402)2364 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, containsOrIncl__astalgo_402)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key) {
2365 NIM_BOOL result;
2366 { result = (NIM_BOOL)0;
2367 {
2368 if (!((*s).elems <= ((NI) 34))) goto LA3_;
2369 {
2370 NI i;
2371 NI i_2;
2372 i = (NI)0;
2373 i_2 = ((NI) 0);
2374 {
2375 while (1) {
2376 if (!(i_2 < (*s).elems)) goto LA7;
2377 i = i_2;
2378 {
2379 if (!((*s).a[(i)- 0] == key)) goto LA10_;
2380 result = NIM_TRUE;
2381 goto BeforeRet_;
2382 }
2383 LA10_: ;
2384 i_2 += ((NI) 1);
2385 } LA7: ;
2386 }
2387 }
2388 incl__pureZcollectionsZintsets_55(s, key);
2389 result = NIM_FALSE;
2390 }
2391 goto LA1_;
2392 LA3_: ;
2393 {
2394 tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* t;
2395 t = packedSetGet__astalgo_433((&(*s)), (NI)((NI64)(key) >> (NU64)(((NI) 9))));
2396 {
2397 NI u;
2398 if (!!((t == ((tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA*) NIM_NIL)))) goto LA15_;
2399 u = (NI)(key & ((NI) 511));
2400 result = !(((NU)((*t).bits[((NI)((NI64)(u) >> (NU64)(((NI) 6))))- 0] & (NU)((NU64)(((NU) 1)) << (NU64)((NI)(u & ((NI) 63))))) == ((NU) 0)));
2401 {
2402 if (!!(result)) goto LA19_;
2403 (*t).bits[((NI)((NI64)(u) >> (NU64)(((NI) 6))))- 0] = (NU)((*t).bits[((NI)((NI64)(u) >> (NU64)(((NI) 6))))- 0] | (NU)((NU64)(((NU) 1)) << (NU64)((NI)(u & ((NI) 63)))));
2404 }
2405 LA19_: ;
2406 }
2407 goto LA13_;
2408 LA15_: ;
2409 {
2410 incl__pureZcollectionsZintsets_55(s, key);
2411 result = NIM_FALSE;
2412 }
2413 LA13_: ;
2414 }
2415 LA1_: ;
2416 }BeforeRet_: ;
2417 return result;
2418 }
N_NIMCALL(NIM_BOOL,contains__astalgo_3496)2419 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, contains__astalgo_3496)(tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* s, NI key) {
2420 NIM_BOOL result;
2421 { result = (NIM_BOOL)0;
2422 {
2423 if (!((*s).elems <= ((NI) 34))) goto LA3_;
2424 {
2425 NI i;
2426 NI i_2;
2427 i = (NI)0;
2428 i_2 = ((NI) 0);
2429 {
2430 while (1) {
2431 if (!(i_2 < (*s).elems)) goto LA7;
2432 i = i_2;
2433 {
2434 if (!((*s).a[(i)- 0] == key)) goto LA10_;
2435 result = NIM_TRUE;
2436 goto BeforeRet_;
2437 }
2438 LA10_: ;
2439 i_2 += ((NI) 1);
2440 } LA7: ;
2441 }
2442 }
2443 }
2444 goto LA1_;
2445 LA3_: ;
2446 {
2447 tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA* t;
2448 t = packedSetGet__astalgo_433(s, (NI)((NI64)(key) >> (NU64)(((NI) 9))));
2449 {
2450 NI u;
2451 if (!!((t == ((tyObject_TrunkcolonObjectType___POcWT53G7t0BSUjc31o0iA*) NIM_NIL)))) goto LA15_;
2452 u = (NI)(key & ((NI) 511));
2453 result = !(((NU)((*t).bits[((NI)((NI64)(u) >> (NU64)(((NI) 6))))- 0] & (NU)((NU64)(((NU) 1)) << (NU64)((NI)(u & ((NI) 63))))) == ((NU) 0)));
2454 }
2455 goto LA13_;
2456 LA15_: ;
2457 {
2458 result = NIM_FALSE;
2459 }
2460 LA13_: ;
2461 }
2462 LA1_: ;
2463 }BeforeRet_: ;
2464 return result;
2465 }
N_INLINE(int,nimCmpMem)2466 static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size) {
2467 int result;
2468 result = (int)0;
2469 result = memcmp(a, b, ((size_t) (size)));
2470 return result;
2471 }
N_INLINE(NIM_BOOL,equalMem__system_1735)2472 static N_INLINE(NIM_BOOL, equalMem__system_1735)(void* a, void* b, NI size) {
2473 NIM_BOOL result;
2474 int T1_;
2475 result = (NIM_BOOL)0;
2476 T1_ = (int)0;
2477 T1_ = nimCmpMem(a, b, size);
2478 result = (T1_ == ((NI32) 0));
2479 return result;
2480 }
N_INLINE(NIM_BOOL,eqStrings)2481 static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b) {
2482 NIM_BOOL result;
2483 NI alen;
2484 NI blen;
2485 { result = (NIM_BOOL)0;
2486 alen = (a ? a->Sup.len : 0);
2487 blen = (b ? b->Sup.len : 0);
2488 {
2489 if (!(alen == blen)) goto LA3_;
2490 {
2491 if (!(alen == ((NI) 0))) goto LA7_;
2492 result = NIM_TRUE;
2493 goto BeforeRet_;
2494 }
2495 LA7_: ;
2496 result = equalMem__system_1735(((void*) ((&a->data[((NI) 0)]))), ((void*) ((&b->data[((NI) 0)]))), ((NI) (alen)));
2497 goto BeforeRet_;
2498 }
2499 LA3_: ;
2500 }BeforeRet_: ;
2501 return result;
2502 }
N_NIMCALL(NIM_BOOL,sameValue__astalgo_119)2503 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, sameValue__astalgo_119)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b) {
2504 NIM_BOOL result;
2505 result = (NIM_BOOL)0;
2506 result = NIM_FALSE;
2507 switch ((*a).kind) {
2508 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 15):
2509 {
2510 {
2511 tyObject_Int128__9a9axPfb75jdWY25AamJewkA T6_;
2512 tyObject_Int128__9a9axPfb75jdWY25AamJewkA T7_;
2513 if (!((*b).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) && (*b).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 15))) goto LA4_;
2514 T6_ = getInt__ast_4592(a);
2515 T7_ = getInt__ast_4592(b);
2516 result = eqeq___int495056_313(T6_, T7_);
2517 }
2518 LA4_: ;
2519 }
2520 break;
2521 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 16) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 18):
2522 {
2523 {
2524 if (!((*b).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 16) && (*b).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 18))) goto LA11_;
2525 result = ((*a)._kind_2.floatVal == (*b)._kind_2.floatVal);
2526 }
2527 LA11_: ;
2528 }
2529 break;
2530 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22):
2531 {
2532 {
2533 if (!((*b).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) && (*b).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22))) goto LA16_;
2534 result = eqStrings((*a)._kind_3.strVal, (*b)._kind_3.strVal);
2535 }
2536 LA16_: ;
2537 }
2538 break;
2539 default:
2540 {
2541 }
2542 break;
2543 }
2544 return result;
2545 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,nextIter__astalgo_3762)2546 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, nextIter__astalgo_3762)(tyObject_TTabIter__VYF5VQsIYEVaBL0fKZJkbg* ti, tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tab) {
2547 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
2548 result = NIM_NIL;
2549 result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
2550 {
2551 while (1) {
2552 NI T3_;
2553 T3_ = ((tab.data ? tab.data->Sup.len : 0)-1);
2554 if (!((*ti).h <= T3_)) goto LA2;
2555 result = tab.data->data[(*ti).h];
2556 (*ti).h += ((NI) 1);
2557 {
2558 if (!!((result == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA6_;
2559 goto LA1;
2560 }
2561 LA6_: ;
2562 } LA2: ;
2563 } LA1: ;
2564 return result;
2565 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,initTabIter__astalgo_3777)2566 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, initTabIter__astalgo_3777)(tyObject_TTabIter__VYF5VQsIYEVaBL0fKZJkbg* ti, tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tab) {
2567 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
2568 result = NIM_NIL;
2569 (*ti).h = ((NI) 0);
2570 {
2571 if (!(tab.counter == ((NI) 0))) goto LA3_;
2572 result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
2573 }
2574 goto LA1_;
2575 LA3_: ;
2576 {
2577 result = nextIter__astalgo_3762(ti, tab);
2578 }
2579 LA1_: ;
2580 return result;
2581 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,getModule__astalgo_216)2582 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, getModule__astalgo_216)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* s) {
2583 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
2584 result = NIM_NIL;
2585 result = s;
2586 {
2587 while (1) {
2588 NIM_BOOL T3_;
2589 T3_ = (NIM_BOOL)0;
2590 T3_ = !((result == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
2591 if (!(T3_)) goto LA4_;
2592 T3_ = !(((*result).kind == ((tyEnum_TSymKind__cNCW9acsSznmEccl1fgQwkw) 6)));
2593 LA4_: ;
2594 if (!T3_) goto LA2;
2595 result = (*result).owner;
2596 } LA2: ;
2597 }
2598 return result;
2599 }
N_NIMCALL(NI,idTableRawGet__astalgo_3813)2600 N_LIB_PRIVATE N_NIMCALL(NI, idTableRawGet__astalgo_3813)(tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q t, NI key) {
2601 NI result;
2602 NI h;
2603 NI T1_;
2604 { result = (NI)0;
2605 h = (NI)0;
2606 T1_ = ((t.data ? t.data->Sup.len : 0)-1);
2607 h = (NI)(key & T1_);
2608 {
2609 while (1) {
2610 NI T8_;
2611 if (!!((t.data->data[h].key == ((tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w*) NIM_NIL)))) goto LA3;
2612 {
2613 tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* xX60gensym174_;
2614 xX60gensym174_ = t.data->data[h].key;
2615 if (!((NI)((NI)((NU64)(((NI) ((*xX60gensym174_).itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym174_).itemId.item))) == key)) goto LA6_;
2616 result = h;
2617 goto BeforeRet_;
2618 }
2619 LA6_: ;
2620 T8_ = ((t.data ? t.data->Sup.len : 0)-1);
2621 h = nextTry__astalgo_90(h, T8_);
2622 } LA3: ;
2623 }
2624 result = ((NI) -1);
2625 }BeforeRet_: ;
2626 return result;
2627 }
N_NIMCALL(void,idTableRawInsert__astalgo_3905)2628 N_LIB_PRIVATE N_NIMCALL(void, idTableRawInsert__astalgo_3905)(tySequence__Mh9agqM29bm9aP5AUL1x7dZGA** data, tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key, RootObj* val) {
2629 NI h;
2630 tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* xX60gensym182_;
2631 NI T1_;
2632 h = (NI)0;
2633 xX60gensym182_ = key;
2634 T1_ = (((*data) ? (*data)->Sup.len : 0)-1);
2635 h = (NI)((NI)((NI)((NU64)(((NI) ((*xX60gensym182_).itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym182_).itemId.item))) & T1_);
2636 {
2637 while (1) {
2638 NI T4_;
2639 if (!!(((*data)->data[h].key == ((tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w*) NIM_NIL)))) goto LA3;
2640 T4_ = (((*data) ? (*data)->Sup.len : 0)-1);
2641 h = nextTry__astalgo_90(h, T4_);
2642 } LA3: ;
2643 }
2644 asgnRef((void**) (&(*data)->data[h].key), key);
2645 asgnRef((void**) (&(*data)->data[h].val), val);
2646 }
N_NIMCALL(void,idTablePut__astalgo_70)2647 N_LIB_PRIVATE N_NIMCALL(void, idTablePut__astalgo_70)(tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q* t, tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key, RootObj* val) {
2648 NI index;
2649 tySequence__Mh9agqM29bm9aP5AUL1x7dZGA* n;
2650 tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* xX60gensym191_;
2651 index = (NI)0;
2652 n = NIM_NIL;
2653 xX60gensym191_ = key;
2654 index = idTableRawGet__astalgo_3813((*t), (NI)((NI)((NU64)(((NI) ((*xX60gensym191_).itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym191_).itemId.item))));
2655 {
2656 if (!(((NI) 0) <= index)) goto LA3_;
2657 asgnRef((void**) (&(*t).data->data[index].val), val);
2658 }
2659 goto LA1_;
2660 LA3_: ;
2661 {
2662 {
2663 NI T8_;
2664 NIM_BOOL T9_;
2665 NI T12_;
2666 tySequence__Mh9agqM29bm9aP5AUL1x7dZGA* T21_;
2667 T8_ = ((*t).data ? (*t).data->Sup.len : 0);
2668 T9_ = (NIM_BOOL)0;
2669 T9_ = mustRehash__astalgo_87(T8_, (*t).counter);
2670 if (!T9_) goto LA10_;
2671 T12_ = ((*t).data ? (*t).data->Sup.len : 0);
2672 n = (tySequence__Mh9agqM29bm9aP5AUL1x7dZGA*) newSeq((&NTItidpairseq__Mh9agqM29bm9aP5AUL1x7dZGA_), ((NI) ((NI)(T12_ * ((NI) 2)))));
2673 {
2674 NI i;
2675 NI colontmp_;
2676 NI T14_;
2677 NI res;
2678 i = (NI)0;
2679 colontmp_ = (NI)0;
2680 T14_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
2681 colontmp_ = T14_;
2682 res = ((NI) 0);
2683 {
2684 while (1) {
2685 if (!(res <= colontmp_)) goto LA16;
2686 i = res;
2687 {
2688 if (!!(((*t).data->data[i].key == ((tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w*) NIM_NIL)))) goto LA19_;
2689 idTableRawInsert__astalgo_3905((&n), (*t).data->data[i].key, (*t).data->data[i].val);
2690 }
2691 LA19_: ;
2692 res += ((NI) 1);
2693 } LA16: ;
2694 }
2695 }
2696 T21_ = NIM_NIL;
2697 T21_ = (*t).data;
2698 unsureAsgnRef((void**) (&(*t).data), n);
2699 n = T21_;
2700 }
2701 LA10_: ;
2702 idTableRawInsert__astalgo_3905((&(*t).data), key, val);
2703 (*t).counter += ((NI) 1);
2704 }
2705 LA1_: ;
2706 }
N_NIMCALL(RootObj *,idTableGet__astalgo_64)2707 N_LIB_PRIVATE N_NIMCALL(RootObj*, idTableGet__astalgo_64)(tyObject_TIdTable__9aiv9bp2t5icFNINcg9c4xi1Q t, tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key) {
2708 RootObj* result;
2709 NI index;
2710 tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* xX60gensym177_;
2711 result = NIM_NIL;
2712 xX60gensym177_ = key;
2713 index = idTableRawGet__astalgo_3813(t, (NI)((NI)((NU64)(((NI) ((*xX60gensym177_).itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym177_).itemId.item))));
2714 {
2715 if (!(((NI) 0) <= index)) goto LA3_;
2716 result = t.data->data[index].val;
2717 }
2718 goto LA1_;
2719 LA3_: ;
2720 {
2721 result = ((RootObj*) NIM_NIL);
2722 }
2723 LA1_: ;
2724 return result;
2725 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,nextIdentIter__astalgo_3408)2726 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, nextIdentIter__astalgo_3408)(tyObject_TIdentIter__Oi4goG2ACEsy9cyTe6OCPrA* ti, tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tab) {
2727 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
2728 NI h;
2729 NI T1_;
2730 NI start;
2731 NI T13_;
2732 result = NIM_NIL;
2733 T1_ = ((tab.data ? tab.data->Sup.len : 0)-1);
2734 h = (NI)((*ti).h & T1_);
2735 start = h;
2736 result = tab.data->data[h];
2737 {
2738 while (1) {
2739 NI T8_;
2740 if (!!((result == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA3;
2741 {
2742 if (!((*(*result).name).id == (*(*ti).name).id)) goto LA6_;
2743 goto LA2;
2744 }
2745 LA6_: ;
2746 T8_ = ((tab.data ? tab.data->Sup.len : 0)-1);
2747 h = nextTry__astalgo_90(h, T8_);
2748 {
2749 if (!(h == start)) goto LA11_;
2750 result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
2751 goto LA2;
2752 }
2753 LA11_: ;
2754 result = tab.data->data[h];
2755 } LA3: ;
2756 } LA2: ;
2757 T13_ = ((tab.data ? tab.data->Sup.len : 0)-1);
2758 (*ti).h = nextTry__astalgo_90(h, T13_);
2759 return result;
2760 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,initIdentIter__astalgo_3427)2761 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, initIdentIter__astalgo_3427)(tyObject_TIdentIter__Oi4goG2ACEsy9cyTe6OCPrA* ti, tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tab, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* s) {
2762 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
2763 result = NIM_NIL;
2764 (*ti).h = (*s).h;
2765 unsureAsgnRef((void**) (&(*ti).name), s);
2766 {
2767 if (!(tab.counter == ((NI) 0))) goto LA3_;
2768 result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
2769 }
2770 goto LA1_;
2771 LA3_: ;
2772 {
2773 result = nextIdentIter__astalgo_3408(ti, tab);
2774 }
2775 LA1_: ;
2776 return result;
2777 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,strTableInclReportConflict__astalgo_3342)2778 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, strTableInclReportConflict__astalgo_3342)(tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA* t, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* n, NIM_BOOL onConflictKeepOld) {
2779 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
2780 NI h;
2781 NI T1_;
2782 NI replaceSlot;
2783 { result = NIM_NIL;
2784 T1_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
2785 h = (NI)((*(*n).name).h & T1_);
2786 replaceSlot = ((NI) -1);
2787 {
2788 while (1) {
2789 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* it;
2790 NI T16_;
2791 it = (*t).data->data[h];
2792 {
2793 if (!(it == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL))) goto LA6_;
2794 goto LA2;
2795 }
2796 LA6_: ;
2797 {
2798 if (!((*(*it).name).id == (*(*n).name).id)) goto LA10_;
2799 {
2800 if (!(it == n)) goto LA14_;
2801 result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
2802 goto BeforeRet_;
2803 }
2804 LA14_: ;
2805 replaceSlot = h;
2806 }
2807 LA10_: ;
2808 T16_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
2809 h = nextTry__astalgo_90(h, T16_);
2810 }
2811 } LA2: ;
2812 {
2813 if (!(((NI) 0) <= replaceSlot)) goto LA19_;
2814 result = (*t).data->data[replaceSlot];
2815 {
2816 if (!!(onConflictKeepOld)) goto LA23_;
2817 asgnRef((void**) (&(*t).data->data[replaceSlot]), n);
2818 }
2819 LA23_: ;
2820 goto BeforeRet_;
2821 }
2822 goto LA17_;
2823 LA19_: ;
2824 {
2825 NI T26_;
2826 NIM_BOOL T27_;
2827 T26_ = ((*t).data ? (*t).data->Sup.len : 0);
2828 T27_ = (NIM_BOOL)0;
2829 T27_ = mustRehash__astalgo_87(T26_, (*t).counter);
2830 if (!T27_) goto LA28_;
2831 strTableEnlarge__astalgo_3306(t);
2832 strTableRawInsert__astalgo_3252((&(*t).data), n);
2833 }
2834 goto LA17_;
2835 LA28_: ;
2836 {
2837 asgnRef((void**) (&(*t).data->data[h]), n);
2838 }
2839 LA17_: ;
2840 (*t).counter += ((NI) 1);
2841 result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
2842 }BeforeRet_: ;
2843 return result;
2844 }
N_NIMCALL(NIM_BOOL,sameIgnoreBacktickGensymInfo__astalgo_264)2845 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, sameIgnoreBacktickGensymInfo__astalgo_264)(NimStringDesc* a, NimStringDesc* b) {
2846 NIM_BOOL result;
2847 NI alen;
2848 NI i;
2849 NI j;
2850 { result = (NIM_BOOL)0;
2851 {
2852 if (!!(((NU8)(a->data[((NI) 0)]) == (NU8)(b->data[((NI) 0)])))) goto LA3_;
2853 result = NIM_FALSE;
2854 goto BeforeRet_;
2855 }
2856 LA3_: ;
2857 alen = (NI)((a ? a->Sup.len : 0) - ((NI) 1));
2858 {
2859 while (1) {
2860 NIM_BOOL T7_;
2861 T7_ = (NIM_BOOL)0;
2862 T7_ = (((NI) 0) < alen);
2863 if (!(T7_)) goto LA8_;
2864 T7_ = !(((NU8)(a->data[alen]) == (NU8)(96)));
2865 LA8_: ;
2866 if (!T7_) goto LA6;
2867 alen -= ((NI) 1);
2868 } LA6: ;
2869 }
2870 {
2871 if (!(alen <= ((NI) 0))) goto LA11_;
2872 alen = (a ? a->Sup.len : 0);
2873 }
2874 LA11_: ;
2875 i = ((NI) 1);
2876 j = ((NI) 1);
2877 {
2878 while (1) {
2879 NIM_CHAR aa;
2880 NIM_CHAR bb;
2881 {
2882 while (1) {
2883 NIM_BOOL T17_;
2884 T17_ = (NIM_BOOL)0;
2885 T17_ = (i < alen);
2886 if (!(T17_)) goto LA18_;
2887 T17_ = ((NU8)(a->data[i]) == (NU8)(95));
2888 LA18_: ;
2889 if (!T17_) goto LA16;
2890 i += ((NI) 1);
2891 } LA16: ;
2892 }
2893 {
2894 while (1) {
2895 NIM_BOOL T21_;
2896 T21_ = (NIM_BOOL)0;
2897 T21_ = (j < (b ? b->Sup.len : 0));
2898 if (!(T21_)) goto LA22_;
2899 T21_ = ((NU8)(b->data[j]) == (NU8)(95));
2900 LA22_: ;
2901 if (!T21_) goto LA20;
2902 j += ((NI) 1);
2903 } LA20: ;
2904 }
2905 {
2906 if (!(i < alen)) goto LA25_;
2907 aa = nsuToLowerAsciiChar(a->data[i]);
2908 }
2909 goto LA23_;
2910 LA25_: ;
2911 {
2912 aa = 0;
2913 }
2914 LA23_: ;
2915 {
2916 if (!(j < (b ? b->Sup.len : 0))) goto LA30_;
2917 bb = nsuToLowerAsciiChar(b->data[j]);
2918 }
2919 goto LA28_;
2920 LA30_: ;
2921 {
2922 bb = 0;
2923 }
2924 LA28_: ;
2925 {
2926 if (!!(((NU8)(aa) == (NU8)(bb)))) goto LA35_;
2927 result = NIM_FALSE;
2928 goto BeforeRet_;
2929 }
2930 LA35_: ;
2931 {
2932 if (!(alen <= i)) goto LA39_;
2933 {
2934 if (!((b ? b->Sup.len : 0) <= j)) goto LA43_;
2935 result = NIM_TRUE;
2936 goto BeforeRet_;
2937 }
2938 LA43_: ;
2939 result = NIM_FALSE;
2940 goto BeforeRet_;
2941 }
2942 goto LA37_;
2943 LA39_: ;
2944 {
2945 if (!((b ? b->Sup.len : 0) <= j)) goto LA46_;
2946 result = NIM_FALSE;
2947 goto BeforeRet_;
2948 }
2949 goto LA37_;
2950 LA46_: ;
2951 LA37_: ;
2952 i += ((NI) 1);
2953 j += ((NI) 1);
2954 }
2955 }
2956 }BeforeRet_: ;
2957 return result;
2958 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,getNamedParamFromList__astalgo_293)2959 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, getNamedParamFromList__astalgo_293)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* list, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* ident) {
2960 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
2961 { result = NIM_NIL;
2962 {
2963 NI i;
2964 NI colontmp_;
2965 NI i_2;
2966 i = (NI)0;
2967 colontmp_ = (NI)0;
2968 colontmp_ = len__ast_3198(list);
2969 i_2 = ((NI) 1);
2970 {
2971 while (1) {
2972 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* it;
2973 if (!(i_2 < colontmp_)) goto LA3;
2974 i = i_2;
2975 it = (*(*list)._kind_6.sons->data[i])._kind_4.sym;
2976 {
2977 NIM_BOOL T6_;
2978 T6_ = (NIM_BOOL)0;
2979 T6_ = ((*(*it).name).id == (*ident).id);
2980 if (T6_) goto LA7_;
2981 T6_ = sameIgnoreBacktickGensymInfo__astalgo_264((*(*it).name).s, (*ident).s);
2982 LA7_: ;
2983 if (!T6_) goto LA8_;
2984 result = it;
2985 goto BeforeRet_;
2986 }
2987 LA8_: ;
2988 i_2 += ((NI) 1);
2989 } LA3: ;
2990 }
2991 }
2992 }BeforeRet_: ;
2993 return result;
2994 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,nextIdentExcluding__astalgo_3432)2995 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, nextIdentExcluding__astalgo_3432)(tyObject_TIdentIter__Oi4goG2ACEsy9cyTe6OCPrA* ti, tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tab, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* excluding) {
2996 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
2997 NI h;
2998 NI T1_;
2999 NI start;
3000 NI T16_;
3001 result = NIM_NIL;
3002 T1_ = ((tab.data ? tab.data->Sup.len : 0)-1);
3003 h = (NI)((*ti).h & T1_);
3004 start = h;
3005 result = tab.data->data[h];
3006 {
3007 while (1) {
3008 NI T11_;
3009 if (!!((result == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA3;
3010 {
3011 NIM_BOOL T6_;
3012 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym168_;
3013 NIM_BOOL T8_;
3014 T6_ = (NIM_BOOL)0;
3015 T6_ = ((*(*result).name).id == (*(*ti).name).id);
3016 if (!(T6_)) goto LA7_;
3017 xX60gensym168_ = result;
3018 T8_ = (NIM_BOOL)0;
3019 T8_ = contains__astalgo_3496(excluding, (NI)((NI)((NU64)(((NI) ((*xX60gensym168_).Sup.itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym168_).Sup.itemId.item))));
3020 T6_ = !(T8_);
3021 LA7_: ;
3022 if (!T6_) goto LA9_;
3023 goto LA2;
3024 }
3025 LA9_: ;
3026 T11_ = ((tab.data ? tab.data->Sup.len : 0)-1);
3027 h = nextTry__astalgo_90(h, T11_);
3028 {
3029 if (!(h == start)) goto LA14_;
3030 result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
3031 goto LA2;
3032 }
3033 LA14_: ;
3034 result = tab.data->data[h];
3035 } LA3: ;
3036 } LA2: ;
3037 T16_ = ((tab.data ? tab.data->Sup.len : 0)-1);
3038 (*ti).h = nextTry__astalgo_90(h, T16_);
3039 {
3040 NIM_BOOL T19_;
3041 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* xX60gensym170_;
3042 T19_ = (NIM_BOOL)0;
3043 T19_ = !((result == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
3044 if (!(T19_)) goto LA20_;
3045 xX60gensym170_ = result;
3046 T19_ = contains__astalgo_3496(excluding, (NI)((NI)((NU64)(((NI) ((*xX60gensym170_).Sup.itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym170_).Sup.itemId.item))));
3047 LA20_: ;
3048 if (!T19_) goto LA21_;
3049 result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
3050 }
3051 LA21_: ;
3052 return result;
3053 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,firstIdentExcluding__astalgo_3754)3054 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, firstIdentExcluding__astalgo_3754)(tyObject_TIdentIter__Oi4goG2ACEsy9cyTe6OCPrA* ti, tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA tab, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* s, tyObject_PackedSet__IhxwDBRi51nGrosBGFKcsA* excluding) {
3055 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
3056 result = NIM_NIL;
3057 (*ti).h = (*s).h;
3058 unsureAsgnRef((void**) (&(*ti).name), s);
3059 {
3060 if (!(tab.counter == ((NI) 0))) goto LA3_;
3061 result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
3062 }
3063 goto LA1_;
3064 LA3_: ;
3065 {
3066 result = nextIdentExcluding__astalgo_3432(ti, tab, excluding);
3067 }
3068 LA1_: ;
3069 return result;
3070 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,lookupInRecord__astalgo_84)3071 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, lookupInRecord__astalgo_84)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* field) {
3072 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
3073 { result = NIM_NIL;
3074 result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
3075 switch ((*n).kind) {
3076 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 138):
3077 {
3078 {
3079 NI i;
3080 NI colontmp_;
3081 NI i_2;
3082 i = (NI)0;
3083 colontmp_ = (NI)0;
3084 colontmp_ = len__ast_3198(n);
3085 i_2 = ((NI) 0);
3086 {
3087 while (1) {
3088 if (!(i_2 < colontmp_)) goto LA4;
3089 i = i_2;
3090 result = lookupInRecord__astalgo_84((*n)._kind_6.sons->data[i], field);
3091 {
3092 if (!!((result == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA7_;
3093 goto BeforeRet_;
3094 }
3095 LA7_: ;
3096 i_2 += ((NI) 1);
3097 } LA4: ;
3098 }
3099 }
3100 }
3101 break;
3102 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 139):
3103 {
3104 {
3105 if (!!(((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3)))) goto LA12_;
3106 result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
3107 goto BeforeRet_;
3108 }
3109 LA12_: ;
3110 result = lookupInRecord__astalgo_84((*n)._kind_6.sons->data[((NI) 0)], field);
3111 {
3112 if (!!((result == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA16_;
3113 goto BeforeRet_;
3114 }
3115 LA16_: ;
3116 {
3117 NI i_3;
3118 NI colontmp__2;
3119 NI i_4;
3120 i_3 = (NI)0;
3121 colontmp__2 = (NI)0;
3122 colontmp__2 = len__ast_3198(n);
3123 i_4 = ((NI) 1);
3124 {
3125 while (1) {
3126 if (!(i_4 < colontmp__2)) goto LA20;
3127 i_3 = i_4;
3128 switch ((*(*n)._kind_6.sons->data[i_3]).kind) {
3129 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 85):
3130 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 88):
3131 {
3132 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* T22_;
3133 T22_ = NIM_NIL;
3134 T22_ = lastSon__ast_4832((*n)._kind_6.sons->data[i_3]);
3135 result = lookupInRecord__astalgo_84(T22_, field);
3136 {
3137 if (!!((result == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA25_;
3138 goto BeforeRet_;
3139 }
3140 LA25_: ;
3141 }
3142 break;
3143 default:
3144 {
3145 result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
3146 goto BeforeRet_;
3147 }
3148 break;
3149 }
3150 i_4 += ((NI) 1);
3151 } LA20: ;
3152 }
3153 }
3154 }
3155 break;
3156 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3):
3157 {
3158 {
3159 if (!((*(*(*n)._kind_4.sym).name).id == (*field).id)) goto LA31_;
3160 result = (*n)._kind_4.sym;
3161 }
3162 LA31_: ;
3163 }
3164 break;
3165 default:
3166 {
3167 result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
3168 goto BeforeRet_;
3169 }
3170 break;
3171 }
3172 }BeforeRet_: ;
3173 return result;
3174 }
N_NIMCALL(NI,idNodeTableRawGet__astalgo_4024)3175 N_LIB_PRIVATE N_NIMCALL(NI, idNodeTableRawGet__astalgo_4024)(tyObject_TIdNodeTable__UWAp0mDjKLG1NEwUafSRhA t, tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key) {
3176 NI result;
3177 NI h;
3178 tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* xX60gensym199_;
3179 NI T1_;
3180 { result = (NI)0;
3181 h = (NI)0;
3182 xX60gensym199_ = key;
3183 T1_ = ((t.data ? t.data->Sup.len : 0)-1);
3184 h = (NI)((NI)((NI)((NU64)(((NI) ((*xX60gensym199_).itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym199_).itemId.item))) & T1_);
3185 {
3186 while (1) {
3187 NI T8_;
3188 if (!!((t.data->data[h].key == ((tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w*) NIM_NIL)))) goto LA3;
3189 {
3190 tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* xX60gensym201_;
3191 tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* xX60gensym202_;
3192 xX60gensym201_ = t.data->data[h].key;
3193 xX60gensym202_ = key;
3194 if (!((NI)((NI)((NU64)(((NI) ((*xX60gensym201_).itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym201_).itemId.item))) == (NI)((NI)((NU64)(((NI) ((*xX60gensym202_).itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym202_).itemId.item))))) goto LA6_;
3195 result = h;
3196 goto BeforeRet_;
3197 }
3198 LA6_: ;
3199 T8_ = ((t.data ? t.data->Sup.len : 0)-1);
3200 h = nextTry__astalgo_90(h, T8_);
3201 } LA3: ;
3202 }
3203 result = ((NI) -1);
3204 }BeforeRet_: ;
3205 return result;
3206 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,idNodeTableGet__astalgo_77)3207 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, idNodeTableGet__astalgo_77)(tyObject_TIdNodeTable__UWAp0mDjKLG1NEwUafSRhA t, tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key) {
3208 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
3209 NI index;
3210 result = NIM_NIL;
3211 index = (NI)0;
3212 index = idNodeTableRawGet__astalgo_4024(t, key);
3213 {
3214 if (!(((NI) 0) <= index)) goto LA3_;
3215 result = t.data->data[index].val;
3216 }
3217 goto LA1_;
3218 LA3_: ;
3219 {
3220 result = ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL);
3221 }
3222 LA1_: ;
3223 return result;
3224 }
N_NIMCALL(void,idNodeTableRawInsert__astalgo_4071)3225 N_LIB_PRIVATE N_NIMCALL(void, idNodeTableRawInsert__astalgo_4071)(tySequence__K8W16aeLg4OWxniQxtguMw** data, tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* val) {
3226 NI h;
3227 tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* xX60gensym204_;
3228 NI T1_;
3229 h = (NI)0;
3230 xX60gensym204_ = key;
3231 T1_ = (((*data) ? (*data)->Sup.len : 0)-1);
3232 h = (NI)((NI)((NI)((NU64)(((NI) ((*xX60gensym204_).itemId.module))) << (NU64)(((NI) 24))) + ((NI) ((*xX60gensym204_).itemId.item))) & T1_);
3233 {
3234 while (1) {
3235 NI T4_;
3236 if (!!(((*data)->data[h].key == ((tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w*) NIM_NIL)))) goto LA3;
3237 T4_ = (((*data) ? (*data)->Sup.len : 0)-1);
3238 h = nextTry__astalgo_90(h, T4_);
3239 } LA3: ;
3240 }
3241 asgnRef((void**) (&(*data)->data[h].key), key);
3242 asgnRef((void**) (&(*data)->data[h].val), val);
3243 }
N_NIMCALL(void,idNodeTablePut__astalgo_80)3244 N_LIB_PRIVATE N_NIMCALL(void, idNodeTablePut__astalgo_80)(tyObject_TIdNodeTable__UWAp0mDjKLG1NEwUafSRhA* t, tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w* key, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* val) {
3245 NI index;
3246 index = idNodeTableRawGet__astalgo_4024((*t), key);
3247 {
3248 if (!(((NI) 0) <= index)) goto LA3_;
3249 asgnRef((void**) (&(*t).data->data[index].val), val);
3250 }
3251 goto LA1_;
3252 LA3_: ;
3253 {
3254 {
3255 NI T8_;
3256 NIM_BOOL T9_;
3257 tySequence__K8W16aeLg4OWxniQxtguMw* n;
3258 NI T12_;
3259 tySequence__K8W16aeLg4OWxniQxtguMw* T21_;
3260 T8_ = ((*t).data ? (*t).data->Sup.len : 0);
3261 T9_ = (NIM_BOOL)0;
3262 T9_ = mustRehash__astalgo_87(T8_, (*t).counter);
3263 if (!T9_) goto LA10_;
3264 n = NIM_NIL;
3265 T12_ = ((*t).data ? (*t).data->Sup.len : 0);
3266 n = (tySequence__K8W16aeLg4OWxniQxtguMw*) newSeq((&NTItidnodepairseq__K8W16aeLg4OWxniQxtguMw_), ((NI) ((NI)(T12_ * ((NI) 2)))));
3267 {
3268 NI i;
3269 NI colontmp_;
3270 NI T14_;
3271 NI res;
3272 i = (NI)0;
3273 colontmp_ = (NI)0;
3274 T14_ = (((*t).data ? (*t).data->Sup.len : 0)-1);
3275 colontmp_ = T14_;
3276 res = ((NI) 0);
3277 {
3278 while (1) {
3279 if (!(res <= colontmp_)) goto LA16;
3280 i = res;
3281 {
3282 if (!!(((*t).data->data[i].key == ((tyObject_TIdObj__KUwfjfUQEwGHguQbTcXu7w*) NIM_NIL)))) goto LA19_;
3283 idNodeTableRawInsert__astalgo_4071((&n), (*t).data->data[i].key, (*t).data->data[i].val);
3284 }
3285 LA19_: ;
3286 res += ((NI) 1);
3287 } LA16: ;
3288 }
3289 }
3290 T21_ = NIM_NIL;
3291 T21_ = (*t).data;
3292 unsureAsgnRef((void**) (&(*t).data), n);
3293 n = T21_;
3294 }
3295 LA10_: ;
3296 idNodeTableRawInsert__astalgo_4071((&(*t).data), key, val);
3297 (*t).counter += ((NI) 1);
3298 }
3299 LA1_: ;
3300 }
N_INLINE(NI,cmpStrings)3301 static N_INLINE(NI, cmpStrings)(NimStringDesc* a, NimStringDesc* b) {
3302 NI result;
3303 NI alen;
3304 NI blen;
3305 NI minlen;
3306 result = (NI)0;
3307 alen = (a ? a->Sup.len : 0);
3308 blen = (b ? b->Sup.len : 0);
3309 minlen = ((alen <= blen) ? alen : blen);
3310 {
3311 int T5_;
3312 if (!(((NI) 0) < minlen)) goto LA3_;
3313 T5_ = (int)0;
3314 T5_ = memcmp(((void*) ((&a->data[((NI) 0)]))), ((void*) ((&b->data[((NI) 0)]))), ((size_t) (minlen)));
3315 result = ((NI) (T5_));
3316 {
3317 if (!(result == ((NI) 0))) goto LA8_;
3318 result = (NI)(alen - blen);
3319 }
3320 LA8_: ;
3321 }
3322 goto LA1_;
3323 LA3_: ;
3324 {
3325 result = (NI)(alen - blen);
3326 }
3327 LA1_: ;
3328 return result;
3329 }
N_NIMCALL(NIM_BOOL,leValue__astalgo_135)3330 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, leValue__astalgo_135)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b) {
3331 NIM_BOOL result;
3332 result = (NIM_BOOL)0;
3333 result = NIM_FALSE;
3334 switch ((*a).kind) {
3335 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 15):
3336 {
3337 {
3338 tyObject_Int128__9a9axPfb75jdWY25AamJewkA T6_;
3339 tyObject_Int128__9a9axPfb75jdWY25AamJewkA T7_;
3340 if (!((*b).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) && (*b).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 15))) goto LA4_;
3341 T6_ = getInt__ast_4592(a);
3342 T7_ = getInt__ast_4592(b);
3343 result = lteq___int495056_309(T6_, T7_);
3344 }
3345 LA4_: ;
3346 }
3347 break;
3348 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 16) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 18):
3349 {
3350 {
3351 if (!((*b).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 16) && (*b).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 18))) goto LA11_;
3352 result = ((*a)._kind_2.floatVal <= (*b)._kind_2.floatVal);
3353 }
3354 LA11_: ;
3355 }
3356 break;
3357 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22):
3358 {
3359 {
3360 if (!((*b).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) && (*b).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22))) goto LA16_;
3361 result = (cmpStrings((*a)._kind_3.strVal, (*b)._kind_3.strVal) <= 0);
3362 }
3363 LA16_: ;
3364 }
3365 break;
3366 default:
3367 {
3368 }
3369 break;
3370 }
3371 return result;
3372 }
N_NIMCALL(tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA,weakLeValue__astalgo_151)3373 N_LIB_PRIVATE N_NIMCALL(tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA, weakLeValue__astalgo_151)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* a, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* b) {
3374 tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA result;
3375 result = (tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA)0;
3376 {
3377 NIM_BOOL T3_;
3378 T3_ = (NIM_BOOL)0;
3379 T3_ = !(((*a).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) && (*a).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22)));
3380 if (T3_) goto LA4_;
3381 T3_ = !(((*b).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5) && (*b).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22)));
3382 LA4_: ;
3383 if (!T3_) goto LA5_;
3384 result = ((tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA) 0);
3385 }
3386 goto LA1_;
3387 LA5_: ;
3388 {
3389 {
3390 NIM_BOOL T10_;
3391 T10_ = (NIM_BOOL)0;
3392 T10_ = leValue__astalgo_135(a, b);
3393 if (!T10_) goto LA11_;
3394 result = ((tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA) 2);
3395 }
3396 goto LA8_;
3397 LA11_: ;
3398 {
3399 result = ((tyEnum_TImplication__t4F29a8ejY1DFQTYTML9c9byA) 1);
3400 }
3401 LA8_: ;
3402 }
3403 LA1_: ;
3404 return result;
3405 }
N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ *,getSymFromList__astalgo_245)3406 N_LIB_PRIVATE N_NIMCALL(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*, getSymFromList__astalgo_245)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* list, tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* ident, NI start) {
3407 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* result;
3408 { result = NIM_NIL;
3409 {
3410 NI i;
3411 NI colontmp_;
3412 NI i_2;
3413 i = (NI)0;
3414 colontmp_ = (NI)0;
3415 colontmp_ = len__ast_3198(list);
3416 i_2 = start;
3417 {
3418 while (1) {
3419 if (!(i_2 < colontmp_)) goto LA3;
3420 i = i_2;
3421 {
3422 if (!((*(*list)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3))) goto LA6_;
3423 result = (*(*list)._kind_6.sons->data[i])._kind_4.sym;
3424 {
3425 if (!((*(*result).name).id == (*ident).id)) goto LA10_;
3426 goto BeforeRet_;
3427 }
3428 LA10_: ;
3429 }
3430 goto LA4_;
3431 LA6_: ;
3432 {
3433 result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
3434 goto BeforeRet_;
3435 }
3436 LA4_: ;
3437 i_2 += ((NI) 1);
3438 } LA3: ;
3439 }
3440 }
3441 result = ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL);
3442 }BeforeRet_: ;
3443 return result;
3444 }
N_NIMCALL(NIM_BOOL,strTableIncl__astalgo_3381)3445 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, strTableIncl__astalgo_3381)(tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA* t, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* n, NIM_BOOL onConflictKeepOld) {
3446 NIM_BOOL result;
3447 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* T1_;
3448 result = (NIM_BOOL)0;
3449 T1_ = NIM_NIL;
3450 T1_ = strTableInclReportConflict__astalgo_3342(t, n, onConflictKeepOld);
3451 result = !((T1_ == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)));
3452 return result;
3453 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,skipConvCastAndClosure__astalgo_114)3454 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, skipConvCastAndClosure__astalgo_114)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
3455 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
3456 result = NIM_NIL;
3457 result = n;
3458 {
3459 while (1) {
3460 switch ((*result).kind) {
3461 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 67):
3462 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 66):
3463 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 70):
3464 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 68):
3465 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 69):
3466 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 155):
3467 {
3468 result = (*result)._kind_6.sons->data[((NI) 0)];
3469 }
3470 break;
3471 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 58):
3472 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 59):
3473 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 60):
3474 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 61):
3475 {
3476 result = (*result)._kind_6.sons->data[((NI) 1)];
3477 }
3478 break;
3479 default:
3480 {
3481 goto LA1;
3482 }
3483 break;
3484 }
3485 }
3486 } LA1: ;
3487 return result;
3488 }
N_NIMCALL(NIM_BOOL,isAddrNode__astalgo_4297)3489 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isAddrNode__astalgo_4297)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
3490 NIM_BOOL result;
3491 result = (NIM_BOOL)0;
3492 switch ((*n).kind) {
3493 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 63):
3494 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 64):
3495 {
3496 result = NIM_TRUE;
3497 }
3498 break;
3499 case ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 26) ... ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 32):
3500 {
3501 {
3502 NIM_BOOL T5_;
3503 T5_ = (NIM_BOOL)0;
3504 T5_ = ((*(*n)._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 3));
3505 if (!(T5_)) goto LA6_;
3506 T5_ = ((*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_4.sym).magic == ((tyEnum_TMagic__shZhZOdbVC5nnFvcXQAImg) 16));
3507 LA6_: ;
3508 if (!T5_) goto LA7_;
3509 result = NIM_TRUE;
3510 }
3511 goto LA3_;
3512 LA7_: ;
3513 {
3514 result = NIM_FALSE;
3515 }
3516 LA3_: ;
3517 }
3518 break;
3519 default:
3520 {
3521 result = NIM_FALSE;
3522 }
3523 break;
3524 }
3525 return result;
3526 }
N_NIMCALL(NimStringDesc *,listSymbolNames__astalgo_4310)3527 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, listSymbolNames__astalgo_4310)(tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ** symbols, NI symbolsLen_0) {
3528 NimStringDesc* result;
3529 result = NIM_NIL;
3530 {
3531 tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ** sym;
3532 NI i;
3533 sym = (tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ**)0;
3534 i = ((NI) 0);
3535 {
3536 while (1) {
3537 if (!(i < symbolsLen_0)) goto LA3;
3538 sym = &symbols[i];
3539 {
3540 if (!(((NI) 0) < (result ? result->Sup.len : 0))) goto LA6_;
3541 result = resizeString(result, 2);
3542 appendString(result, ((NimStringDesc*) &TM__uRgrUHgaDgkYkoMPsaodqw_22));
3543 }
3544 LA6_: ;
3545 result = resizeString(result, ((*(*(*sym)).name).s ? (*(*(*sym)).name).s->Sup.len : 0) + 0);
3546 appendString(result, (*(*(*sym)).name).s);
3547 i += ((NI) 1);
3548 } LA3: ;
3549 }
3550 }
3551 return result;
3552 }
N_NIMCALL(void,symTabReplaceRaw__astalgo_3277)3553 N_LIB_PRIVATE N_NIMCALL(void, symTabReplaceRaw__astalgo_3277)(tySequence__eHqUwlHGGaPw0TDPDeL79cQ** data, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prevSym, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* newSym) {
3554 NI h;
3555 NI T1_;
3556 { T1_ = (((*data) ? (*data)->Sup.len : 0)-1);
3557 h = (NI)((*(*prevSym).name).h & T1_);
3558 {
3559 while (1) {
3560 NI T8_;
3561 if (!!(((*data)->data[h] == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA3;
3562 {
3563 if (!((*data)->data[h] == prevSym)) goto LA6_;
3564 asgnRef((void**) (&(*data)->data[h]), newSym);
3565 goto BeforeRet_;
3566 }
3567 LA6_: ;
3568 T8_ = (((*data) ? (*data)->Sup.len : 0)-1);
3569 h = nextTry__astalgo_90(h, T8_);
3570 } LA3: ;
3571 }
3572 }BeforeRet_: ;
3573 }
N_NIMCALL(void,symTabReplace__astalgo_3302)3574 N_LIB_PRIVATE N_NIMCALL(void, symTabReplace__astalgo_3302)(tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA* t, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* prevSym, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* newSym) {
3575 symTabReplaceRaw__astalgo_3277((&(*t).data), prevSym, newSym);
3576 }
N_NIMCALL(NIM_BOOL,isDiscriminantField__astalgo_4335)3577 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isDiscriminantField__astalgo_4335)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
3578 NIM_BOOL result;
3579 result = (NIM_BOOL)0;
3580 {
3581 if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 46))) goto LA3_;
3582 result = (((*(*(*(*n)._kind_6.sons->data[((NI) 0)])._kind_6.sons->data[((NI) 1)])._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 20))&63U)))!=0);
3583 }
3584 goto LA1_;
3585 LA3_: ;
3586 {
3587 if (!((*n).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 45))) goto LA6_;
3588 result = (((*(*(*n)._kind_6.sons->data[((NI) 1)])._kind_4.sym).flags &((NU64)1<<((NU)(((tyEnum_TSymFlag__K9ay6LWMat9bUiT9bIbMxpDHw) 20))&63U)))!=0);
3589 }
3590 goto LA1_;
3591 LA6_: ;
3592 {
3593 result = NIM_FALSE;
3594 }
3595 LA1_: ;
3596 return result;
3597 }
N_NIMCALL(NIM_BOOL,strTableContains__astalgo_3233)3598 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, strTableContains__astalgo_3233)(tyObject_TStrTable__f07aOS3dr28kGa5wcE29aFA t, tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* n) {
3599 NIM_BOOL result;
3600 NI h;
3601 NI T1_;
3602 { result = (NIM_BOOL)0;
3603 T1_ = ((t.data ? t.data->Sup.len : 0)-1);
3604 h = (NI)((*(*n).name).h & T1_);
3605 {
3606 while (1) {
3607 NI T8_;
3608 if (!!((t.data->data[h] == ((tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ*) NIM_NIL)))) goto LA3;
3609 {
3610 if (!(t.data->data[h] == n)) goto LA6_;
3611 result = NIM_TRUE;
3612 goto BeforeRet_;
3613 }
3614 LA6_: ;
3615 T8_ = ((t.data ? t.data->Sup.len : 0)-1);
3616 h = nextTry__astalgo_90(h, T8_);
3617 } LA3: ;
3618 }
3619 result = NIM_FALSE;
3620 }BeforeRet_: ;
3621 return result;
3622 }
N_NIMCALL(void,compiler_astalgoDatInit000)3623 N_LIB_PRIVATE N_NIMCALL(void, compiler_astalgoDatInit000)(void) {
3624 static TNimNode* TM__uRgrUHgaDgkYkoMPsaodqw_2_3[3];
3625 static TNimNode TM__uRgrUHgaDgkYkoMPsaodqw_0[4];
3626 NTIkeyvaluepair__aGv2fk9ceddvdC01ZJC2Q2g_.size = sizeof(tyTuple__aGv2fk9ceddvdC01ZJC2Q2g);
3627 NTIkeyvaluepair__aGv2fk9ceddvdC01ZJC2Q2g_.align = NIM_ALIGNOF(tyTuple__aGv2fk9ceddvdC01ZJC2Q2g);
3628 NTIkeyvaluepair__aGv2fk9ceddvdC01ZJC2Q2g_.kind = 18;
3629 NTIkeyvaluepair__aGv2fk9ceddvdC01ZJC2Q2g_.base = 0;
3630 NTIkeyvaluepair__aGv2fk9ceddvdC01ZJC2Q2g_.flags = 1;
3631 TM__uRgrUHgaDgkYkoMPsaodqw_2_3[0] = &TM__uRgrUHgaDgkYkoMPsaodqw_0[1];
3632 TM__uRgrUHgaDgkYkoMPsaodqw_0[1].kind = 1;
3633 TM__uRgrUHgaDgkYkoMPsaodqw_0[1].offset = offsetof(tyTuple__aGv2fk9ceddvdC01ZJC2Q2g, Field0);
3634 TM__uRgrUHgaDgkYkoMPsaodqw_0[1].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
3635 TM__uRgrUHgaDgkYkoMPsaodqw_0[1].name = "Field0";
3636 TM__uRgrUHgaDgkYkoMPsaodqw_2_3[1] = &TM__uRgrUHgaDgkYkoMPsaodqw_0[2];
3637 TM__uRgrUHgaDgkYkoMPsaodqw_0[2].kind = 1;
3638 TM__uRgrUHgaDgkYkoMPsaodqw_0[2].offset = offsetof(tyTuple__aGv2fk9ceddvdC01ZJC2Q2g, Field1);
3639 TM__uRgrUHgaDgkYkoMPsaodqw_0[2].typ = (&NTIpointer__vr5DoT1jILTGdRlYv1OYpw_);
3640 TM__uRgrUHgaDgkYkoMPsaodqw_0[2].name = "Field1";
3641 TM__uRgrUHgaDgkYkoMPsaodqw_2_3[2] = &TM__uRgrUHgaDgkYkoMPsaodqw_0[3];
3642 TM__uRgrUHgaDgkYkoMPsaodqw_0[3].kind = 1;
3643 TM__uRgrUHgaDgkYkoMPsaodqw_0[3].offset = offsetof(tyTuple__aGv2fk9ceddvdC01ZJC2Q2g, Field2);
3644 TM__uRgrUHgaDgkYkoMPsaodqw_0[3].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
3645 TM__uRgrUHgaDgkYkoMPsaodqw_0[3].name = "Field2";
3646 TM__uRgrUHgaDgkYkoMPsaodqw_0[0].len = 3; TM__uRgrUHgaDgkYkoMPsaodqw_0[0].kind = 2; TM__uRgrUHgaDgkYkoMPsaodqw_0[0].sons = &TM__uRgrUHgaDgkYkoMPsaodqw_2_3[0];
3647 NTIkeyvaluepair__aGv2fk9ceddvdC01ZJC2Q2g_.node = &TM__uRgrUHgaDgkYkoMPsaodqw_0[0];
3648 NTIkeyvaluepairseq__9chP3SzkaldXzawWQCDsqqg_.size = sizeof(tySequence__9chP3SzkaldXzawWQCDsqqg*);
3649 NTIkeyvaluepairseq__9chP3SzkaldXzawWQCDsqqg_.align = NIM_ALIGNOF(tySequence__9chP3SzkaldXzawWQCDsqqg*);
3650 NTIkeyvaluepairseq__9chP3SzkaldXzawWQCDsqqg_.kind = 24;
3651 NTIkeyvaluepairseq__9chP3SzkaldXzawWQCDsqqg_.base = (&NTIkeyvaluepair__aGv2fk9ceddvdC01ZJC2Q2g_);
3652 NTIkeyvaluepairseq__9chP3SzkaldXzawWQCDsqqg_.marker = Marker_tySequence__9chP3SzkaldXzawWQCDsqqg;
3653 }
3654
3655