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