1 /* Generated by Nim Compiler v1.6.2 */
2 #define NIM_INTBITS 32
3
4 #include "nimbase.h"
5 #include <string.h>
6 #undef LANGUAGE_C
7 #undef MIPSEB
8 #undef MIPSEL
9 #undef PPC
10 #undef R3000
11 #undef R4000
12 #undef i386
13 #undef linux
14 #undef mips
15 #undef near
16 #undef far
17 #undef powerpc
18 #undef unix
19 #define nimfr_(x, y)
20 #define nimln_(x, y)
21 typedef struct TNimType TNimType;
22 typedef struct TNimNode TNimNode;
23 typedef struct tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg;
24 typedef struct RootObj RootObj;
25 typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
26 typedef struct NimStringDesc NimStringDesc;
27 typedef struct TGenericSeq TGenericSeq;
28 typedef struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g;
29 typedef struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w;
30 typedef struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ;
31 typedef struct tyObject_GcStack__7fytPA5bBsob6See21YMRA tyObject_GcStack__7fytPA5bBsob6See21YMRA;
32 typedef struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg;
33 typedef struct tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ;
34 typedef struct tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg;
35 typedef struct tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw;
36 typedef struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA;
37 typedef struct tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw;
38 typedef struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw;
39 typedef struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg;
40 typedef struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyTuple__ujsjpB2O9cjj3uDHsXbnSzg;
41 typedef struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg;
42 typedef struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ;
43 typedef struct tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg;
44 typedef struct tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA;
45 typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
46 typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
47 typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
48 typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
49 struct TNimType {
50 NI size;
51 NI align;
52 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind;
53 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
54 TNimType* base;
55 TNimNode* node;
56 void* finalizer;
57 tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
58 tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
59 };
60 typedef NU8 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ;
61 struct TNimNode {
62 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ kind;
63 NI offset;
64 TNimType* typ;
65 NCSTRING name;
66 NI len;
67 TNimNode** sons;
68 };
69 struct RootObj {
70 TNimType* m_type;
71 };
72 typedef NU8 tySet_tyChar__nmiMWKVIe46vacnhAFrQvw[32];
73 typedef NU8 tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA;
74 struct TGenericSeq {
75 NI len;
76 NI reserved;
77 };
78 struct NimStringDesc {
79 TGenericSeq Sup;
80 NIM_CHAR data[SEQ_DECL_SIZE];
81 };
82 struct tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg {
83 RootObj Sup;
84 NI pos;
85 NIM_BOOL inShortState;
86 NIM_BOOL allowWhitespaceAfterColon;
87 tySet_tyChar__nmiMWKVIe46vacnhAFrQvw shortNoVal;
88 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* longNoVal;
89 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cmds;
90 NI idx;
91 tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA kind;
92 NimStringDesc* key;
93 NimStringDesc* val;
94 };
95 struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g {
96 NI refcount;
97 TNimType* typ;
98 };
99 struct tyObject_GcStack__7fytPA5bBsob6See21YMRA {
100 void* bottom;
101 };
102 struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w {
103 NI len;
104 NI cap;
105 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g** d;
106 };
107 typedef tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ* tyArray__SPr7N6UKfuF549bNPiUvSRw[256];
108 typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24];
109 typedef tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* tyArray__N1u1nqOgmuJN9cSZrnMHgOQ[32];
110 typedef tyArray__N1u1nqOgmuJN9cSZrnMHgOQ tyArray__B6durA4ZCi1xjJvRtyYxMg[24];
111 typedef tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw* tyArray__lh2A89ahMmYg9bCmpVaplLbA[256];
112 struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA {
113 tyArray__lh2A89ahMmYg9bCmpVaplLbA data;
114 };
115 typedef tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* tyArray__0aOLqZchNi8nWtMTi8ND8w[2];
116 struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw {
117 tyArray__0aOLqZchNi8nWtMTi8ND8w link;
118 NI key;
119 NI upperBound;
120 NI level;
121 };
122 struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg {
123 tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* Field0;
124 NI Field1;
125 };
126 typedef tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyArray__LzOv2eCDGiceMKQstCLmhw[30];
127 struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg {
128 NI len;
129 tyArray__LzOv2eCDGiceMKQstCLmhw chunks;
130 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg* next;
131 };
132 struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg {
133 NI minLargeObj;
134 NI maxLargeObj;
135 tyArray__SPr7N6UKfuF549bNPiUvSRw freeSmallChunks;
136 NU32 flBitmap;
137 tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap;
138 tyArray__B6durA4ZCi1xjJvRtyYxMg matrix;
139 tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw* llmem;
140 NI currMem;
141 NI maxMem;
142 NI freeMem;
143 NI occ;
144 NI lastSize;
145 tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA chunkStarts;
146 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* root;
147 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* deleted;
148 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* last;
149 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* freeAvlNodes;
150 NIM_BOOL locked;
151 NIM_BOOL blockChunkSizeIncrease;
152 NI nextChunkSize;
153 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw bottomData;
154 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg heapLinks;
155 };
156 struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg {
157 NI stackScans;
158 NI cycleCollections;
159 NI maxThreshold;
160 NI maxStackSize;
161 NI maxStackCells;
162 NI cycleTableSize;
163 NI64 maxPause;
164 };
165 struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ {
166 NI counter;
167 NI max;
168 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg* head;
169 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg** data;
170 };
171 struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ {
172 tyObject_GcStack__7fytPA5bBsob6See21YMRA stack;
173 NI cycleThreshold;
174 NI zctThreshold;
175 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w zct;
176 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w decStack;
177 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tempStack;
178 NI recGcLock;
179 tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg region;
180 tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg stat;
181 tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ marked;
182 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w additionalRoots;
183 NI gcThreadId;
184 };
185 typedef NU8 tyArray__S8ib5N31oJbAkqOZTlNg5Q[8192];
186 struct tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA {
187 NI a;
188 NI b;
189 };
190 struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
191 TGenericSeq Sup;
192 NimStringDesc* data[SEQ_DECL_SIZE];
193 };
194 N_LIB_PRIVATE N_NIMCALL(void, unsureAsgnRef)(void** dest, void* src);
195 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
196 N_LIB_PRIVATE N_NIMCALL(void, genericSeqAssign)(void* dest, void* src, TNimType* mt);
197 N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ*, nosparseCmdLine)(NimStringDesc* c);
198 N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ*, newSeq__systemZio_501)(NI len);
199 N_LIB_PRIVATE N_NIMCALL(NI, paramCount__pureZos_1544)(void);
200 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, paramStr__pureZos_1538)(NI i);
201 static N_INLINE(void, asgnRef)(void** dest, void* src);
202 static N_INLINE(void, incRef__system_5300)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
203 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y);
204 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5262)(void* usr);
205 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y);
206 static N_INLINE(void, decRef__system_5307)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
207 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y);
208 static N_INLINE(void, rtlAddZCT__system_5305)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
209 N_LIB_PRIVATE N_NOINLINE(void, addZCT__system_5256)(tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w* s, tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
210 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, setLengthStr)(NimStringDesc* s, NI newLen);
211 N_LIB_PRIVATE N_NIMCALL(void, handleShortOption__pureZparseopt_127)(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg* p, NimStringDesc* cmd);
212 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, addChar)(NimStringDesc* s, NIM_CHAR c);
213 static N_INLINE(NI, cardSet)(tyArray__S8ib5N31oJbAkqOZTlNg5Q s, NI len);
214 static N_INLINE(NI, countBits32)(NU32 n);
215 static N_INLINE(NI, countSetBitsImpl__systemZcountbits95impl_26)(NU32 x);
216 N_CDECL(int, __builtin_popcount)(unsigned int x);
217 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, substr__system_7747)(NimStringDesc* s, NI first);
218 N_LIB_PRIVATE N_NIMCALL(NI, parseWord__pureZparseopt_25)(NimStringDesc* s, NI i, NimStringDesc** w, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw delim);
219 static N_INLINE(NIM_BOOL, contains__stdZenumutils_43)(NimStringDesc** a, NI aLen_0, NimStringDesc* item);
220 static N_INLINE(NI, find__stdZenumutils_48)(NimStringDesc** a, NI aLen_0, NimStringDesc* item);
221 static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b);
222 static N_INLINE(NIM_BOOL, equalMem__system_1735)(void* a, void* b, NI size);
223 static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size);
224 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src);
225 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, quoteShellCommand__pureZos_610)(NimStringDesc** args, NI argsLen_0);
226 N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ*, X5BX5D___pureZparseopt_275)(NimStringDesc** s, NI sLen_0, tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA x);
227 N_LIB_PRIVATE N_NIMCALL(void*, newSeq)(TNimType* typ, NI len);
228 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyStringRC1)(NimStringDesc* src);
229 static N_INLINE(void, nimGCunrefNoCycle)(void* p);
230 static N_INLINE(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA, dotdot___stdZenumutils_80)(NI a, NI b);
231 static N_INLINE(void, nimZeroMem)(void* p, NI size);
232 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size);
233 extern TNimType NTIrootobj__ytyiCJqK439aF9cIibuRVpAg_;
234 N_LIB_PRIVATE TNimType NTIoptparser__l9cyoK9aLLTUH7LBRIbLqETg_;
235 extern TNimType NTIint__rR5Bzr1D5krxoo1NcNyeMA_;
236 extern TNimType NTIbool__VaVACK0bpYmqIQ0mKcHfQQ_;
237 extern TNimType NTIchar__nmiMWKVIe46vacnhAFrQvw_;
238 N_LIB_PRIVATE TNimType NTIsetLcharT__HDqWPvEAxZK51ZcfaeQEdg_;
239 extern TNimType NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_;
240 N_LIB_PRIVATE TNimType NTIcmdlinekind__XkdXq9atxjiuhkFFh0XYrSA_;
241 extern TNimType NTIstring__77mFvmsOLKik79ci2hXkHEg_;
242 static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__GYgvYKeHVTEls0AcywABHQ_6 = {
243 0x00, 0x02, 0x00, 0x00, 0x01, 0x00, 0x00, 0x24,
244 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
245 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
246 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
247 ;
248 extern tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ gch__system_5209;
N_INLINE(void,nimCopyMem)249 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) {
250 void* T1_;
251 T1_ = (void*)0;
252 T1_ = memcpy(dest, source, ((size_t) (size)));
253 }
N_INLINE(NI,pluspercent___system_696)254 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y) {
255 NI result;
256 result = (NI)0;
257 result = ((NI) ((NU)((NU32)(((NU) (x))) + (NU32)(((NU) (y))))));
258 return result;
259 }
N_INLINE(void,incRef__system_5300)260 static N_INLINE(void, incRef__system_5300)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
261 (*c).refcount = pluspercent___system_696((*c).refcount, ((NI) 8));
262 }
N_INLINE(NI,minuspercent___system_716)263 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y) {
264 NI result;
265 result = (NI)0;
266 result = ((NI) ((NU)((NU32)(((NU) (x))) - (NU32)(((NU) (y))))));
267 return result;
268 }
N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g *,usrToCell__system_5262)269 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5262)(void* usr) {
270 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* result;
271 NI T1_;
272 result = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
273 T1_ = (NI)0;
274 T1_ = minuspercent___system_716(((NI) (ptrdiff_t) (usr)), ((NI) 8));
275 result = ((tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*) (T1_));
276 return result;
277 }
N_INLINE(NIM_BOOL,ltpercent___system_1005)278 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y) {
279 NIM_BOOL result;
280 result = (NIM_BOOL)0;
281 result = ((NU32)(((NU) (x))) < (NU32)(((NU) (y))));
282 return result;
283 }
N_INLINE(void,rtlAddZCT__system_5305)284 static N_INLINE(void, rtlAddZCT__system_5305)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
285 addZCT__system_5256((&gch__system_5209.zct), c);
286 }
N_INLINE(void,decRef__system_5307)287 static N_INLINE(void, decRef__system_5307)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
288 (*c).refcount = minuspercent___system_716((*c).refcount, ((NI) 8));
289 {
290 NIM_BOOL T3_;
291 T3_ = (NIM_BOOL)0;
292 T3_ = ltpercent___system_1005((*c).refcount, ((NI) 8));
293 if (!T3_) goto LA4_;
294 rtlAddZCT__system_5305(c);
295 }
296 LA4_: ;
297 }
N_INLINE(void,asgnRef)298 static N_INLINE(void, asgnRef)(void** dest, void* src) {
299 {
300 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T5_;
301 if (!!((src == NIM_NIL))) goto LA3_;
302 T5_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
303 T5_ = usrToCell__system_5262(src);
304 incRef__system_5300(T5_);
305 }
306 LA3_: ;
307 {
308 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T10_;
309 if (!!(((*dest) == NIM_NIL))) goto LA8_;
310 T10_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
311 T10_ = usrToCell__system_5262((*dest));
312 decRef__system_5307(T10_);
313 }
314 LA8_: ;
315 (*dest) = src;
316 }
N_NIMCALL(void,initOptParser__pureZparseopt_51)317 N_LIB_PRIVATE N_NIMCALL(void, initOptParser__pureZparseopt_51)(NimStringDesc* cmdline, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw shortNoVal, tySequence__sM4lkSb7zS6F7OVMvW9cffQ* longNoVal, NIM_BOOL allowWhitespaceAfterColon, tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg* Result) {
318 (*Result).pos = 0;
319 (*Result).inShortState = 0;
320 (*Result).allowWhitespaceAfterColon = 0;
321 unsureAsgnRef((void**)&(*Result).longNoVal, NIM_NIL);
322 unsureAsgnRef((void**)&(*Result).cmds, NIM_NIL);
323 (*Result).idx = 0;
324 (*Result).kind = 0;
325 unsureAsgnRef((void**)&(*Result).key, NIM_NIL);
326 unsureAsgnRef((void**)&(*Result).val, NIM_NIL);
327 (*Result).Sup.m_type = (&NTIoptparser__l9cyoK9aLLTUH7LBRIbLqETg_);
328 (*Result).pos = ((NI) 0);
329 (*Result).idx = ((NI) 0);
330 (*Result).inShortState = NIM_FALSE;
331 nimCopyMem((void*)(*Result).shortNoVal, (NIM_CONST void*)shortNoVal, 32);
332 genericSeqAssign((&(*Result).longNoVal), longNoVal, (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_));
333 (*Result).allowWhitespaceAfterColon = allowWhitespaceAfterColon;
334 {
335 if (!!(((cmdline ? cmdline->Sup.len : 0) == 0))) goto LA3_;
336 unsureAsgnRef((void**) (&(*Result).cmds), nosparseCmdLine(cmdline));
337 }
338 goto LA1_;
339 LA3_: ;
340 {
341 NI T6_;
342 T6_ = (NI)0;
343 T6_ = paramCount__pureZos_1544();
344 unsureAsgnRef((void**) (&(*Result).cmds), newSeq__systemZio_501(((NI) (T6_))));
345 {
346 NI i;
347 NI colontmp_;
348 NI res;
349 i = (NI)0;
350 colontmp_ = (NI)0;
351 colontmp_ = paramCount__pureZos_1544();
352 res = ((NI) 1);
353 {
354 while (1) {
355 if (!(res <= colontmp_)) goto LA9;
356 i = res;
357 asgnRef((void**) (&(*Result).cmds->data[(NI)(i - ((NI) 1))]), paramStr__pureZos_1538(i));
358 res += ((NI) 1);
359 } LA9: ;
360 }
361 }
362 }
363 LA1_: ;
364 (*Result).kind = ((tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA) 0);
365 unsureAsgnRef((void**) (&(*Result).key), ((NimStringDesc*) NIM_NIL));
366 unsureAsgnRef((void**) (&(*Result).val), ((NimStringDesc*) NIM_NIL));
367 }
N_INLINE(NI,countSetBitsImpl__systemZcountbits95impl_26)368 static N_INLINE(NI, countSetBitsImpl__systemZcountbits95impl_26)(NU32 x) {
369 NI result;
370 int T1_;
371 result = (NI)0;
372 T1_ = (int)0;
373 T1_ = __builtin_popcount(x);
374 result = ((NI) (T1_));
375 return result;
376 }
N_INLINE(NI,countBits32)377 static N_INLINE(NI, countBits32)(NU32 n) {
378 NI result;
379 result = (NI)0;
380 result = countSetBitsImpl__systemZcountbits95impl_26(n);
381 return result;
382 }
N_INLINE(NI,cardSet)383 static N_INLINE(NI, cardSet)(tyArray__S8ib5N31oJbAkqOZTlNg5Q s, NI len) {
384 NI result;
385 NI i;
386 result = (NI)0;
387 i = ((NI) 0);
388 result = ((NI) 0);
389 {
390 while (1) {
391 NI T3_;
392 if (!(i < len)) goto LA2;
393 T3_ = (NI)0;
394 T3_ = countBits32(((NU32) (s[(i)- 0])));
395 result += T3_;
396 i += ((NI) 1);
397 } LA2: ;
398 }
399 return result;
400 }
N_NIMCALL(void,handleShortOption__pureZparseopt_127)401 N_LIB_PRIVATE N_NIMCALL(void, handleShortOption__pureZparseopt_127)(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg* p, NimStringDesc* cmd) {
402 NI i;
403 i = (*p).pos;
404 (*p).kind = ((tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA) 3);
405 {
406 if (!(i < (cmd ? cmd->Sup.len : 0))) goto LA3_;
407 unsureAsgnRef((void**) (&(*p).key), addChar((*p).key, cmd->data[i]));
408 i += ((NI) 1);
409 }
410 LA3_: ;
411 (*p).inShortState = NIM_TRUE;
412 {
413 while (1) {
414 NIM_BOOL T7_;
415 T7_ = (NIM_BOOL)0;
416 T7_ = (i < (cmd ? cmd->Sup.len : 0));
417 if (!(T7_)) goto LA8_;
418 T7_ = (((NU8)(cmd->data[i])) == ((NU8)(9)) || ((NU8)(cmd->data[i])) == ((NU8)(32)));
419 LA8_: ;
420 if (!T7_) goto LA6;
421 i += ((NI) 1);
422 (*p).inShortState = NIM_FALSE;
423 } LA6: ;
424 }
425 {
426 NIM_BOOL T11_;
427 NIM_BOOL T13_;
428 NIM_BOOL T15_;
429 T11_ = (NIM_BOOL)0;
430 T11_ = (i < (cmd ? cmd->Sup.len : 0));
431 if (!(T11_)) goto LA12_;
432 T13_ = (NIM_BOOL)0;
433 T13_ = (((NU8)(cmd->data[i])) == ((NU8)(58)) || ((NU8)(cmd->data[i])) == ((NU8)(61)));
434 if (T13_) goto LA14_;
435 T15_ = (NIM_BOOL)0;
436 T15_ = (((NI) 0) < cardSet((*p).shortNoVal, 32));
437 if (!(T15_)) goto LA16_;
438 T15_ = !((((*p).shortNoVal[(NU)(((NU8)((*p).key->data[((NI) 0)])))>>3] &(1U<<((NU)(((NU8)((*p).key->data[((NI) 0)])))&7U)))!=0));
439 LA16_: ;
440 T13_ = T15_;
441 LA14_: ;
442 T11_ = T13_;
443 LA12_: ;
444 if (!T11_) goto LA17_;
445 {
446 NIM_BOOL T21_;
447 T21_ = (NIM_BOOL)0;
448 T21_ = (i < (cmd ? cmd->Sup.len : 0));
449 if (!(T21_)) goto LA22_;
450 T21_ = (((NU8)(cmd->data[i])) == ((NU8)(58)) || ((NU8)(cmd->data[i])) == ((NU8)(61)));
451 LA22_: ;
452 if (!T21_) goto LA23_;
453 i += ((NI) 1);
454 }
455 LA23_: ;
456 (*p).inShortState = NIM_FALSE;
457 {
458 while (1) {
459 NIM_BOOL T27_;
460 T27_ = (NIM_BOOL)0;
461 T27_ = (i < (cmd ? cmd->Sup.len : 0));
462 if (!(T27_)) goto LA28_;
463 T27_ = (((NU8)(cmd->data[i])) == ((NU8)(9)) || ((NU8)(cmd->data[i])) == ((NU8)(32)));
464 LA28_: ;
465 if (!T27_) goto LA26;
466 i += ((NI) 1);
467 } LA26: ;
468 }
469 unsureAsgnRef((void**) (&(*p).val), substr__system_7747(cmd, i));
470 (*p).pos = ((NI) 0);
471 (*p).idx += ((NI) 1);
472 }
473 goto LA9_;
474 LA17_: ;
475 {
476 (*p).pos = i;
477 }
478 LA9_: ;
479 {
480 if (!((cmd ? cmd->Sup.len : 0) <= i)) goto LA32_;
481 (*p).inShortState = NIM_FALSE;
482 (*p).pos = ((NI) 0);
483 (*p).idx += ((NI) 1);
484 }
485 LA32_: ;
486 }
N_NIMCALL(NI,parseWord__pureZparseopt_25)487 N_LIB_PRIVATE N_NIMCALL(NI, parseWord__pureZparseopt_25)(NimStringDesc* s, NI i, NimStringDesc** w, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw delim) {
488 NI result;
489 result = (NI)0;
490 result = i;
491 {
492 NIM_BOOL T3_;
493 T3_ = (NIM_BOOL)0;
494 T3_ = (result < (s ? s->Sup.len : 0));
495 if (!(T3_)) goto LA4_;
496 T3_ = ((NU8)(s->data[result]) == (NU8)(34));
497 LA4_: ;
498 if (!T3_) goto LA5_;
499 result += ((NI) 1);
500 {
501 while (1) {
502 if (!(result < (s ? s->Sup.len : 0))) goto LA8;
503 {
504 if (!((NU8)(s->data[result]) == (NU8)(34))) goto LA11_;
505 result += ((NI) 1);
506 goto LA7;
507 }
508 LA11_: ;
509 unsureAsgnRef((void**) (&(*w)), addChar((*w), s->data[result]));
510 result += ((NI) 1);
511 } LA8: ;
512 } LA7: ;
513 }
514 goto LA1_;
515 LA5_: ;
516 {
517 {
518 while (1) {
519 NIM_BOOL T16_;
520 T16_ = (NIM_BOOL)0;
521 T16_ = (result < (s ? s->Sup.len : 0));
522 if (!(T16_)) goto LA17_;
523 T16_ = !(((delim[(NU)(((NU8)(s->data[result])))>>3] &(1U<<((NU)(((NU8)(s->data[result])))&7U)))!=0));
524 LA17_: ;
525 if (!T16_) goto LA15;
526 unsureAsgnRef((void**) (&(*w)), addChar((*w), s->data[result]));
527 result += ((NI) 1);
528 } LA15: ;
529 }
530 }
531 LA1_: ;
532 return result;
533 }
N_INLINE(int,nimCmpMem)534 static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size) {
535 int result;
536 result = (int)0;
537 result = memcmp(a, b, ((size_t) (size)));
538 return result;
539 }
N_INLINE(NIM_BOOL,equalMem__system_1735)540 static N_INLINE(NIM_BOOL, equalMem__system_1735)(void* a, void* b, NI size) {
541 NIM_BOOL result;
542 int T1_;
543 result = (NIM_BOOL)0;
544 T1_ = (int)0;
545 T1_ = nimCmpMem(a, b, size);
546 result = (T1_ == ((NI32) 0));
547 return result;
548 }
N_INLINE(NIM_BOOL,eqStrings)549 static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b) {
550 NIM_BOOL result;
551 NI alen;
552 NI blen;
553 { result = (NIM_BOOL)0;
554 alen = (a ? a->Sup.len : 0);
555 blen = (b ? b->Sup.len : 0);
556 {
557 if (!(alen == blen)) goto LA3_;
558 {
559 if (!(alen == ((NI) 0))) goto LA7_;
560 result = NIM_TRUE;
561 goto BeforeRet_;
562 }
563 LA7_: ;
564 result = equalMem__system_1735(((void*) ((&a->data[((NI) 0)]))), ((void*) ((&b->data[((NI) 0)]))), ((NI) (alen)));
565 goto BeforeRet_;
566 }
567 LA3_: ;
568 }BeforeRet_: ;
569 return result;
570 }
N_INLINE(NI,find__stdZenumutils_48)571 static N_INLINE(NI, find__stdZenumutils_48)(NimStringDesc** a, NI aLen_0, NimStringDesc* item) {
572 NI result;
573 { result = (NI)0;
574 result = ((NI) 0);
575 {
576 NimStringDesc** i;
577 NI i_2;
578 i = (NimStringDesc**)0;
579 i_2 = ((NI) 0);
580 {
581 while (1) {
582 if (!(i_2 < aLen_0)) goto LA3;
583 i = (&a[i_2]);
584 {
585 if (!eqStrings((*i), item)) goto LA6_;
586 goto BeforeRet_;
587 }
588 LA6_: ;
589 result += ((NI) 1);
590 i_2 += ((NI) 1);
591 } LA3: ;
592 }
593 }
594 result = ((NI) -1);
595 }BeforeRet_: ;
596 return result;
597 }
N_INLINE(NIM_BOOL,contains__stdZenumutils_43)598 static N_INLINE(NIM_BOOL, contains__stdZenumutils_43)(NimStringDesc** a, NI aLen_0, NimStringDesc* item) {
599 NIM_BOOL result;
600 NI T1_;
601 { result = (NIM_BOOL)0;
602 T1_ = (NI)0;
603 T1_ = find__stdZenumutils_48(a, aLen_0, item);
604 result = (((NI) 0) <= T1_);
605 goto BeforeRet_;
606 }BeforeRet_: ;
607 return result;
608 }
N_NIMCALL(void,nponext)609 N_LIB_PRIVATE N_NIMCALL(void, nponext)(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg* p) {
610 NI i;
611 { {
612 NI T3_;
613 T3_ = ((*p).cmds ? (*p).cmds->Sup.len : 0);
614 if (!(T3_ <= (*p).idx)) goto LA4_;
615 (*p).kind = ((tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA) 0);
616 goto BeforeRet_;
617 }
618 LA4_: ;
619 i = (*p).pos;
620 {
621 while (1) {
622 NIM_BOOL T8_;
623 T8_ = (NIM_BOOL)0;
624 T8_ = (i < ((*p).cmds->data[(*p).idx] ? (*p).cmds->data[(*p).idx]->Sup.len : 0));
625 if (!(T8_)) goto LA9_;
626 T8_ = (((NU8)((*p).cmds->data[(*p).idx]->data[i])) == ((NU8)(9)) || ((NU8)((*p).cmds->data[(*p).idx]->data[i])) == ((NU8)(32)));
627 LA9_: ;
628 if (!T8_) goto LA7;
629 i += ((NI) 1);
630 } LA7: ;
631 }
632 (*p).pos = i;
633 unsureAsgnRef((void**) (&(*p).key), setLengthStr((*p).key, ((NI) 0)));
634 unsureAsgnRef((void**) (&(*p).val), setLengthStr((*p).val, ((NI) 0)));
635 {
636 if (!(*p).inShortState) goto LA12_;
637 (*p).inShortState = NIM_FALSE;
638 {
639 if (!(((*p).cmds->data[(*p).idx] ? (*p).cmds->data[(*p).idx]->Sup.len : 0) <= i)) goto LA16_;
640 (*p).idx += ((NI) 1);
641 (*p).pos = ((NI) 0);
642 {
643 NI T20_;
644 T20_ = ((*p).cmds ? (*p).cmds->Sup.len : 0);
645 if (!(T20_ <= (*p).idx)) goto LA21_;
646 (*p).kind = ((tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA) 0);
647 goto BeforeRet_;
648 }
649 LA21_: ;
650 }
651 goto LA14_;
652 LA16_: ;
653 {
654 handleShortOption__pureZparseopt_127(p, (*p).cmds->data[(*p).idx]);
655 goto BeforeRet_;
656 }
657 LA14_: ;
658 }
659 LA12_: ;
660 {
661 NIM_BOOL T26_;
662 T26_ = (NIM_BOOL)0;
663 T26_ = (i < ((*p).cmds->data[(*p).idx] ? (*p).cmds->data[(*p).idx]->Sup.len : 0));
664 if (!(T26_)) goto LA27_;
665 T26_ = ((NU8)((*p).cmds->data[(*p).idx]->data[i]) == (NU8)(45));
666 LA27_: ;
667 if (!T26_) goto LA28_;
668 i += ((NI) 1);
669 {
670 NIM_BOOL T32_;
671 T32_ = (NIM_BOOL)0;
672 T32_ = (i < ((*p).cmds->data[(*p).idx] ? (*p).cmds->data[(*p).idx]->Sup.len : 0));
673 if (!(T32_)) goto LA33_;
674 T32_ = ((NU8)((*p).cmds->data[(*p).idx]->data[i]) == (NU8)(45));
675 LA33_: ;
676 if (!T32_) goto LA34_;
677 (*p).kind = ((tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA) 2);
678 i += ((NI) 1);
679 i = parseWord__pureZparseopt_25((*p).cmds->data[(*p).idx], i, (&(*p).key), TM__GYgvYKeHVTEls0AcywABHQ_6);
680 {
681 while (1) {
682 NIM_BOOL T38_;
683 T38_ = (NIM_BOOL)0;
684 T38_ = (i < ((*p).cmds->data[(*p).idx] ? (*p).cmds->data[(*p).idx]->Sup.len : 0));
685 if (!(T38_)) goto LA39_;
686 T38_ = (((NU8)((*p).cmds->data[(*p).idx]->data[i])) == ((NU8)(9)) || ((NU8)((*p).cmds->data[(*p).idx]->data[i])) == ((NU8)(32)));
687 LA39_: ;
688 if (!T38_) goto LA37;
689 i += ((NI) 1);
690 } LA37: ;
691 }
692 {
693 NIM_BOOL T42_;
694 T42_ = (NIM_BOOL)0;
695 T42_ = (i < ((*p).cmds->data[(*p).idx] ? (*p).cmds->data[(*p).idx]->Sup.len : 0));
696 if (!(T42_)) goto LA43_;
697 T42_ = (((NU8)((*p).cmds->data[(*p).idx]->data[i])) == ((NU8)(58)) || ((NU8)((*p).cmds->data[(*p).idx]->data[i])) == ((NU8)(61)));
698 LA43_: ;
699 if (!T42_) goto LA44_;
700 i += ((NI) 1);
701 {
702 while (1) {
703 NIM_BOOL T48_;
704 T48_ = (NIM_BOOL)0;
705 T48_ = (i < ((*p).cmds->data[(*p).idx] ? (*p).cmds->data[(*p).idx]->Sup.len : 0));
706 if (!(T48_)) goto LA49_;
707 T48_ = (((NU8)((*p).cmds->data[(*p).idx]->data[i])) == ((NU8)(9)) || ((NU8)((*p).cmds->data[(*p).idx]->data[i])) == ((NU8)(32)));
708 LA49_: ;
709 if (!T48_) goto LA47;
710 i += ((NI) 1);
711 } LA47: ;
712 }
713 {
714 NIM_BOOL T52_;
715 NIM_BOOL T53_;
716 NI T55_;
717 T52_ = (NIM_BOOL)0;
718 T53_ = (NIM_BOOL)0;
719 T53_ = (((*p).cmds->data[(*p).idx] ? (*p).cmds->data[(*p).idx]->Sup.len : 0) <= i);
720 if (!(T53_)) goto LA54_;
721 T55_ = ((*p).cmds ? (*p).cmds->Sup.len : 0);
722 T53_ = ((*p).idx < T55_);
723 LA54_: ;
724 T52_ = T53_;
725 if (!(T52_)) goto LA56_;
726 T52_ = (*p).allowWhitespaceAfterColon;
727 LA56_: ;
728 if (!T52_) goto LA57_;
729 (*p).idx += ((NI) 1);
730 i = ((NI) 0);
731 }
732 LA57_: ;
733 {
734 NI T61_;
735 T61_ = ((*p).cmds ? (*p).cmds->Sup.len : 0);
736 if (!((*p).idx < T61_)) goto LA62_;
737 unsureAsgnRef((void**) (&(*p).val), substr__system_7747((*p).cmds->data[(*p).idx], i));
738 }
739 LA62_: ;
740 }
741 goto LA40_;
742 LA44_: ;
743 {
744 NIM_BOOL T65_;
745 NIM_BOOL T66_;
746 NI T67_;
747 NIM_BOOL T69_;
748 NI T71_;
749 T65_ = (NIM_BOOL)0;
750 T66_ = (NIM_BOOL)0;
751 T67_ = ((*p).longNoVal ? (*p).longNoVal->Sup.len : 0);
752 T66_ = (((NI) 0) < T67_);
753 if (!(T66_)) goto LA68_;
754 T69_ = (NIM_BOOL)0;
755 T69_ = contains__stdZenumutils_43((*p).longNoVal->data, ((*p).longNoVal ? (*p).longNoVal->Sup.len : 0), (*p).key);
756 T66_ = !(T69_);
757 LA68_: ;
758 T65_ = T66_;
759 if (!(T65_)) goto LA70_;
760 T71_ = ((*p).cmds ? (*p).cmds->Sup.len : 0);
761 T65_ = ((NI)((*p).idx + ((NI) 1)) < T71_);
762 LA70_: ;
763 if (!T65_) goto LA72_;
764 unsureAsgnRef((void**) (&(*p).val), copyString((*p).cmds->data[(NI)((*p).idx + ((NI) 1))]));
765 (*p).idx += ((NI) 1);
766 }
767 goto LA40_;
768 LA72_: ;
769 {
770 unsureAsgnRef((void**) (&(*p).val), ((NimStringDesc*) NIM_NIL));
771 }
772 LA40_: ;
773 (*p).idx += ((NI) 1);
774 (*p).pos = ((NI) 0);
775 }
776 goto LA30_;
777 LA34_: ;
778 {
779 (*p).pos = i;
780 handleShortOption__pureZparseopt_127(p, (*p).cmds->data[(*p).idx]);
781 }
782 LA30_: ;
783 }
784 goto LA24_;
785 LA28_: ;
786 {
787 (*p).kind = ((tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA) 1);
788 unsureAsgnRef((void**) (&(*p).key), copyString((*p).cmds->data[(*p).idx]));
789 (*p).idx += ((NI) 1);
790 (*p).pos = ((NI) 0);
791 }
792 LA24_: ;
793 }BeforeRet_: ;
794 }
N_INLINE(void,nimGCunrefNoCycle)795 static N_INLINE(void, nimGCunrefNoCycle)(void* p) {
796 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T1_;
797 T1_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
798 T1_ = usrToCell__system_5262(p);
799 decRef__system_5307(T1_);
800 }
N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ *,X5BX5D___pureZparseopt_275)801 N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ*, X5BX5D___pureZparseopt_275)(NimStringDesc** s, NI sLen_0, tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA x) {
802 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* result;
803 NI a;
804 NI L;
805 result = NIM_NIL;
806 a = x.a;
807 L = (NI)((NI)((NI)(sLen_0 - x.b) - a) + ((NI) 1));
808 result = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) newSeq((&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_), ((NI) (L)));
809 {
810 NI i;
811 NI i_2;
812 i = (NI)0;
813 i_2 = ((NI) 0);
814 {
815 while (1) {
816 NimStringDesc* T4_;
817 if (!(i_2 < L)) goto LA3;
818 i = i_2;
819 T4_ = NIM_NIL;
820 T4_ = result->data[i]; result->data[i] = copyStringRC1(s[(NI)(i + a)]);
821 if (T4_) nimGCunrefNoCycle(T4_);
822 i_2 += ((NI) 1);
823 } LA3: ;
824 }
825 }
826 return result;
827 }
N_INLINE(void,nimSetMem__systemZmemory_7)828 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size) {
829 void* T1_;
830 T1_ = (void*)0;
831 T1_ = memset(a, v, ((size_t) (size)));
832 }
N_INLINE(void,nimZeroMem)833 static N_INLINE(void, nimZeroMem)(void* p, NI size) {
834 nimSetMem__systemZmemory_7(p, ((int) 0), size);
835 }
N_INLINE(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA,dotdot___stdZenumutils_80)836 static N_INLINE(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA, dotdot___stdZenumutils_80)(NI a, NI b) {
837 tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA result;
838 nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA));
839 nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA));
840 result.a = a;
841 result.b = b;
842 return result;
843 }
N_NIMCALL(NimStringDesc *,npocmdLineRest)844 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, npocmdLineRest)(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg* p) {
845 NimStringDesc* result;
846 tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA T1_;
847 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* T2_;
848 result = NIM_NIL;
849 T1_ = dotdot___stdZenumutils_80((*p).idx, ((NI) 1));
850 T2_ = NIM_NIL;
851 T2_ = X5BX5D___pureZparseopt_275((*p).cmds->data, ((*p).cmds ? (*p).cmds->Sup.len : 0), T1_);
852 result = quoteShellCommand__pureZos_610(T2_->data, (T2_ ? T2_->Sup.len : 0));
853 return result;
854 }
N_NIMCALL(void,stdlib_parseoptDatInit000)855 N_LIB_PRIVATE N_NIMCALL(void, stdlib_parseoptDatInit000)(void) {
856 static TNimNode* TM__GYgvYKeHVTEls0AcywABHQ_2_10[10];
857 static TNimNode* TM__GYgvYKeHVTEls0AcywABHQ_3_4[4];
858 NI TM__GYgvYKeHVTEls0AcywABHQ_5;
859 static char* NIM_CONST TM__GYgvYKeHVTEls0AcywABHQ_4[4] = {
860 "cmdEnd",
861 "cmdArgument",
862 "cmdLongOption",
863 "cmdShortOption"};
864 static TNimNode TM__GYgvYKeHVTEls0AcywABHQ_0[17];
865 NTIoptparser__l9cyoK9aLLTUH7LBRIbLqETg_.size = sizeof(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg);
866 NTIoptparser__l9cyoK9aLLTUH7LBRIbLqETg_.align = NIM_ALIGNOF(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg);
867 NTIoptparser__l9cyoK9aLLTUH7LBRIbLqETg_.kind = 17;
868 NTIoptparser__l9cyoK9aLLTUH7LBRIbLqETg_.base = (&NTIrootobj__ytyiCJqK439aF9cIibuRVpAg_);
869 TM__GYgvYKeHVTEls0AcywABHQ_2_10[0] = &TM__GYgvYKeHVTEls0AcywABHQ_0[1];
870 TM__GYgvYKeHVTEls0AcywABHQ_0[1].kind = 1;
871 TM__GYgvYKeHVTEls0AcywABHQ_0[1].offset = offsetof(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg, pos);
872 TM__GYgvYKeHVTEls0AcywABHQ_0[1].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
873 TM__GYgvYKeHVTEls0AcywABHQ_0[1].name = "pos";
874 TM__GYgvYKeHVTEls0AcywABHQ_2_10[1] = &TM__GYgvYKeHVTEls0AcywABHQ_0[2];
875 TM__GYgvYKeHVTEls0AcywABHQ_0[2].kind = 1;
876 TM__GYgvYKeHVTEls0AcywABHQ_0[2].offset = offsetof(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg, inShortState);
877 TM__GYgvYKeHVTEls0AcywABHQ_0[2].typ = (&NTIbool__VaVACK0bpYmqIQ0mKcHfQQ_);
878 TM__GYgvYKeHVTEls0AcywABHQ_0[2].name = "inShortState";
879 TM__GYgvYKeHVTEls0AcywABHQ_2_10[2] = &TM__GYgvYKeHVTEls0AcywABHQ_0[3];
880 TM__GYgvYKeHVTEls0AcywABHQ_0[3].kind = 1;
881 TM__GYgvYKeHVTEls0AcywABHQ_0[3].offset = offsetof(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg, allowWhitespaceAfterColon);
882 TM__GYgvYKeHVTEls0AcywABHQ_0[3].typ = (&NTIbool__VaVACK0bpYmqIQ0mKcHfQQ_);
883 TM__GYgvYKeHVTEls0AcywABHQ_0[3].name = "allowWhitespaceAfterColon";
884 TM__GYgvYKeHVTEls0AcywABHQ_2_10[3] = &TM__GYgvYKeHVTEls0AcywABHQ_0[4];
885 NTIsetLcharT__HDqWPvEAxZK51ZcfaeQEdg_.size = sizeof(tySet_tyChar__nmiMWKVIe46vacnhAFrQvw);
886 NTIsetLcharT__HDqWPvEAxZK51ZcfaeQEdg_.align = NIM_ALIGNOF(tySet_tyChar__nmiMWKVIe46vacnhAFrQvw);
887 NTIsetLcharT__HDqWPvEAxZK51ZcfaeQEdg_.kind = 19;
888 NTIsetLcharT__HDqWPvEAxZK51ZcfaeQEdg_.base = (&NTIchar__nmiMWKVIe46vacnhAFrQvw_);
889 NTIsetLcharT__HDqWPvEAxZK51ZcfaeQEdg_.flags = 3;
890 TM__GYgvYKeHVTEls0AcywABHQ_0[5].len = 0; TM__GYgvYKeHVTEls0AcywABHQ_0[5].kind = 0;
891 NTIsetLcharT__HDqWPvEAxZK51ZcfaeQEdg_.node = &TM__GYgvYKeHVTEls0AcywABHQ_0[5];
892 TM__GYgvYKeHVTEls0AcywABHQ_0[4].kind = 1;
893 TM__GYgvYKeHVTEls0AcywABHQ_0[4].offset = offsetof(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg, shortNoVal);
894 TM__GYgvYKeHVTEls0AcywABHQ_0[4].typ = (&NTIsetLcharT__HDqWPvEAxZK51ZcfaeQEdg_);
895 TM__GYgvYKeHVTEls0AcywABHQ_0[4].name = "shortNoVal";
896 TM__GYgvYKeHVTEls0AcywABHQ_2_10[4] = &TM__GYgvYKeHVTEls0AcywABHQ_0[6];
897 TM__GYgvYKeHVTEls0AcywABHQ_0[6].kind = 1;
898 TM__GYgvYKeHVTEls0AcywABHQ_0[6].offset = offsetof(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg, longNoVal);
899 TM__GYgvYKeHVTEls0AcywABHQ_0[6].typ = (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_);
900 TM__GYgvYKeHVTEls0AcywABHQ_0[6].name = "longNoVal";
901 TM__GYgvYKeHVTEls0AcywABHQ_2_10[5] = &TM__GYgvYKeHVTEls0AcywABHQ_0[7];
902 TM__GYgvYKeHVTEls0AcywABHQ_0[7].kind = 1;
903 TM__GYgvYKeHVTEls0AcywABHQ_0[7].offset = offsetof(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg, cmds);
904 TM__GYgvYKeHVTEls0AcywABHQ_0[7].typ = (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_);
905 TM__GYgvYKeHVTEls0AcywABHQ_0[7].name = "cmds";
906 TM__GYgvYKeHVTEls0AcywABHQ_2_10[6] = &TM__GYgvYKeHVTEls0AcywABHQ_0[8];
907 TM__GYgvYKeHVTEls0AcywABHQ_0[8].kind = 1;
908 TM__GYgvYKeHVTEls0AcywABHQ_0[8].offset = offsetof(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg, idx);
909 TM__GYgvYKeHVTEls0AcywABHQ_0[8].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
910 TM__GYgvYKeHVTEls0AcywABHQ_0[8].name = "idx";
911 TM__GYgvYKeHVTEls0AcywABHQ_2_10[7] = &TM__GYgvYKeHVTEls0AcywABHQ_0[9];
912 NTIcmdlinekind__XkdXq9atxjiuhkFFh0XYrSA_.size = sizeof(tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA);
913 NTIcmdlinekind__XkdXq9atxjiuhkFFh0XYrSA_.align = NIM_ALIGNOF(tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA);
914 NTIcmdlinekind__XkdXq9atxjiuhkFFh0XYrSA_.kind = 14;
915 NTIcmdlinekind__XkdXq9atxjiuhkFFh0XYrSA_.base = 0;
916 NTIcmdlinekind__XkdXq9atxjiuhkFFh0XYrSA_.flags = 3;
917 for (TM__GYgvYKeHVTEls0AcywABHQ_5 = 0; TM__GYgvYKeHVTEls0AcywABHQ_5 < 4; TM__GYgvYKeHVTEls0AcywABHQ_5++) {
918 TM__GYgvYKeHVTEls0AcywABHQ_0[TM__GYgvYKeHVTEls0AcywABHQ_5+10].kind = 1;
919 TM__GYgvYKeHVTEls0AcywABHQ_0[TM__GYgvYKeHVTEls0AcywABHQ_5+10].offset = TM__GYgvYKeHVTEls0AcywABHQ_5;
920 TM__GYgvYKeHVTEls0AcywABHQ_0[TM__GYgvYKeHVTEls0AcywABHQ_5+10].name = TM__GYgvYKeHVTEls0AcywABHQ_4[TM__GYgvYKeHVTEls0AcywABHQ_5];
921 TM__GYgvYKeHVTEls0AcywABHQ_3_4[TM__GYgvYKeHVTEls0AcywABHQ_5] = &TM__GYgvYKeHVTEls0AcywABHQ_0[TM__GYgvYKeHVTEls0AcywABHQ_5+10];
922 }
923 TM__GYgvYKeHVTEls0AcywABHQ_0[14].len = 4; TM__GYgvYKeHVTEls0AcywABHQ_0[14].kind = 2; TM__GYgvYKeHVTEls0AcywABHQ_0[14].sons = &TM__GYgvYKeHVTEls0AcywABHQ_3_4[0];
924 NTIcmdlinekind__XkdXq9atxjiuhkFFh0XYrSA_.node = &TM__GYgvYKeHVTEls0AcywABHQ_0[14];
925 TM__GYgvYKeHVTEls0AcywABHQ_0[9].kind = 1;
926 TM__GYgvYKeHVTEls0AcywABHQ_0[9].offset = offsetof(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg, kind);
927 TM__GYgvYKeHVTEls0AcywABHQ_0[9].typ = (&NTIcmdlinekind__XkdXq9atxjiuhkFFh0XYrSA_);
928 TM__GYgvYKeHVTEls0AcywABHQ_0[9].name = "kind";
929 TM__GYgvYKeHVTEls0AcywABHQ_2_10[8] = &TM__GYgvYKeHVTEls0AcywABHQ_0[15];
930 TM__GYgvYKeHVTEls0AcywABHQ_0[15].kind = 1;
931 TM__GYgvYKeHVTEls0AcywABHQ_0[15].offset = offsetof(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg, key);
932 TM__GYgvYKeHVTEls0AcywABHQ_0[15].typ = (&NTIstring__77mFvmsOLKik79ci2hXkHEg_);
933 TM__GYgvYKeHVTEls0AcywABHQ_0[15].name = "key";
934 TM__GYgvYKeHVTEls0AcywABHQ_2_10[9] = &TM__GYgvYKeHVTEls0AcywABHQ_0[16];
935 TM__GYgvYKeHVTEls0AcywABHQ_0[16].kind = 1;
936 TM__GYgvYKeHVTEls0AcywABHQ_0[16].offset = offsetof(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg, val);
937 TM__GYgvYKeHVTEls0AcywABHQ_0[16].typ = (&NTIstring__77mFvmsOLKik79ci2hXkHEg_);
938 TM__GYgvYKeHVTEls0AcywABHQ_0[16].name = "val";
939 TM__GYgvYKeHVTEls0AcywABHQ_0[0].len = 10; TM__GYgvYKeHVTEls0AcywABHQ_0[0].kind = 2; TM__GYgvYKeHVTEls0AcywABHQ_0[0].sons = &TM__GYgvYKeHVTEls0AcywABHQ_2_10[0];
940 NTIoptparser__l9cyoK9aLLTUH7LBRIbLqETg_.node = &TM__GYgvYKeHVTEls0AcywABHQ_0[0];
941 }
942
943