1 /* Generated by Nim Compiler v1.6.2 */
2 #define NIM_INTBITS 64
3 #define NIM_EmulateOverflowChecks
4
5 #include "nimbase.h"
6 #include <stdio.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_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw;
23 typedef struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw;
24 typedef struct NimStringDesc NimStringDesc;
25 typedef struct TGenericSeq TGenericSeq;
26 typedef struct tyObject_TType__facALICuu8zUj0hjvbTLFg tyObject_TType__facALICuu8zUj0hjvbTLFg;
27 typedef struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q;
28 typedef struct tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ;
29 typedef struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA;
30 typedef struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ;
31 typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
32 typedef struct tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g;
33 typedef struct RootObj RootObj;
34 typedef struct TNimType TNimType;
35 typedef struct TNimNode TNimNode;
36 struct TGenericSeq {
37 NI len;
38 NI reserved;
39 };
40 struct NimStringDesc {
41 TGenericSeq Sup;
42 NIM_CHAR data[SEQ_DECL_SIZE];
43 };
44 struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q {
45 NU16 line;
46 NI16 col;
47 NI32 fileIndex;
48 };
49 typedef NU32 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg;
50 typedef NU8 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw;
51 struct tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw {
52 tyObject_TType__facALICuu8zUj0hjvbTLFg* typ;
53 tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info;
54 tySet_tyEnum_TNodeFlag__jyh9acXHkhZANSSvPIY7ZLg flags;
55 tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw kind;
56 union{
57 struct {NI64 intVal;
58 } _kind_1;
59 struct {NF floatVal;
60 } _kind_2;
61 struct {NimStringDesc* strVal;
62 } _kind_3;
63 struct {tyObject_TSym__nnJKJFyjDGi5mnv8jwfTGQ* sym;
64 } _kind_4;
65 struct {tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* ident;
66 } _kind_5;
67 struct {tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ* sons;
68 } _kind_6;
69 };
70 };
71 typedef NU8 tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w;
72 typedef NU8 tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw;
73 struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
74 NimStringDesc* Field0;
75 NI Field1;
76 NI Field2;
77 };
78 typedef NU16 tySet_tyEnum_TRenderFlag__wrPgUo1ExBlHvFnXN2nSHw;
79 struct tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA {
80 NI id;
81 NimStringDesc* s;
82 tyObject_TIdent__1LTsGP7bSxg45u9aHcxh6OA* next;
83 NI h;
84 };
85 typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
86 typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
87 typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
88 typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
89 struct TNimType {
90 NI size;
91 NI align;
92 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind;
93 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
94 TNimType* base;
95 TNimNode* node;
96 void* finalizer;
97 tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
98 tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
99 };
100 struct RootObj {
101 TNimType* m_type;
102 };
103 typedef NU8 tyEnum_TLLStreamKind__jVcKY16LbOamXE9bxXUD6pQ;
104 typedef struct {
105 N_NIMCALL_PTR(NI, ClP_0) (tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g* s, void* buf, NI bufLen, void* ClE_0);
106 void* ClE_0;
107 } tyProc__9cZV5JMJLsdOPMv55VbpOVg;
108 typedef struct {
109 N_NIMCALL_PTR(void, ClP_0) (void* ClE_0);
110 void* ClE_0;
111 } tyProc__HzVCwACFYM9cx9aV62PdjtuA;
112 struct tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g {
113 RootObj Sup;
114 tyEnum_TLLStreamKind__jVcKY16LbOamXE9bxXUD6pQ kind;
115 FILE* f;
116 NimStringDesc* s;
117 NI rd;
118 NI wr;
119 NI lineOffset;
120 tyProc__9cZV5JMJLsdOPMv55VbpOVg repl;
121 tyProc__HzVCwACFYM9cx9aV62PdjtuA onPrompt;
122 };
123 typedef NU8 tySet_tyChar__nmiMWKVIe46vacnhAFrQvw[32];
124 struct tySequence__ehmV9bTklH2Gt9cXHV9c0HLeQ {
125 TGenericSeq Sup;
126 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* data[SEQ_DECL_SIZE];
127 };
128 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, getArg__filters_12)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NimStringDesc* name, NI pos);
129 static N_INLINE(NI, len__ast_3198)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
130 N_LIB_PRIVATE N_NIMCALL(void, invalidPragma__filters_9)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n);
131 N_LIB_PRIVATE N_NOINLINE(void, liMessage__msgs_1118)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg, tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw eh, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2, NIM_BOOL isRaw);
132 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuFormatSingleElem)(NimStringDesc* formatstr, NimStringDesc* a);
133 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, renderTree__renderer_46)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, tySet_tyEnum_TRenderFlag__wrPgUo1ExBlHvFnXN2nSHw renderFlags);
134 N_LIB_PRIVATE N_NIMCALL(NI, nsuCmpIgnoreStyle)(NimStringDesc* a, NimStringDesc* b);
135 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src);
136 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, strArg__filters_62)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NimStringDesc* name, NI pos, NimStringDesc* default_0);
137 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, boolArg__filters_78)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NimStringDesc* name, NI pos, NIM_BOOL default_0);
138 N_LIB_PRIVATE N_NIMCALL(tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g*, llStreamOpen__llstream_30)(NimStringDesc* data);
139 N_NIMCALL(NimStringDesc*, rawNewString)(NI cap);
140 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, llStreamReadLine__llstream_194)(tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g* s, NimStringDesc** line);
141 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuStrip)(NimStringDesc* s, NIM_BOOL leading, NIM_BOOL trailing, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw chars);
142 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nsuStartsWith)(NimStringDesc* s, NimStringDesc* prefix);
143 N_LIB_PRIVATE N_NIMCALL(void, llStreamWriteln__llstream_221)(tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g* s, NimStringDesc* data);
144 N_LIB_PRIVATE N_NIMCALL(void, llStreamClose__llstream_110)(tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g* s);
145 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuReplaceStr)(NimStringDesc* s, NimStringDesc* sub, NimStringDesc* by);
146 STRING_LITERAL(TM__TpC7tIfhGAaosc7HIsUuXA_2, "\'$1\' not allowed here", 21);
147 STRING_LITERAL(TM__TpC7tIfhGAaosc7HIsUuXA_4, "/home/runner/work/nightlies/nightlies/nim/compiler/filters.nim", 62);
148 static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__TpC7tIfhGAaosc7HIsUuXA_3 = {((NimStringDesc*) &TM__TpC7tIfhGAaosc7HIsUuXA_4),
149 ((NI) 17),
150 ((NI) 12)}
151 ;
152 STRING_LITERAL(TM__TpC7tIfhGAaosc7HIsUuXA_5, "startswith", 10);
153 STRING_LITERAL(TM__TpC7tIfhGAaosc7HIsUuXA_6, "true", 4);
154 STRING_LITERAL(TM__TpC7tIfhGAaosc7HIsUuXA_7, "false", 5);
155 STRING_LITERAL(TM__TpC7tIfhGAaosc7HIsUuXA_8, "leading", 7);
156 STRING_LITERAL(TM__TpC7tIfhGAaosc7HIsUuXA_9, "trailing", 8);
157 static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__TpC7tIfhGAaosc7HIsUuXA_10 = {
158 0x00, 0x3e, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
159 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
160 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
161 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
162 ;
163 STRING_LITERAL(TM__TpC7tIfhGAaosc7HIsUuXA_11, "sub", 3);
164 STRING_LITERAL(TM__TpC7tIfhGAaosc7HIsUuXA_12, "by", 2);
N_INLINE(NI,len__ast_3198)165 static N_INLINE(NI, len__ast_3198)(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
166 NI result;
167 NI T1_;
168 result = (NI)0;
169 T1_ = ((*n)._kind_6.sons ? (*n)._kind_6.sons->Sup.len : 0);
170 result = T1_;
171 return result;
172 }
N_NIMCALL(void,invalidPragma__filters_9)173 N_LIB_PRIVATE N_NIMCALL(void, invalidPragma__filters_9)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n) {
174 NimStringDesc* T1_;
175 NimStringDesc* T2_;
176 T1_ = NIM_NIL;
177 T1_ = renderTree__renderer_46(n, 4);
178 T2_ = NIM_NIL;
179 T2_ = nsuFormatSingleElem(((NimStringDesc*) &TM__TpC7tIfhGAaosc7HIsUuXA_2), T1_);
180 liMessage__msgs_1118(conf, (*n).info, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 14), T2_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 0), TM__TpC7tIfhGAaosc7HIsUuXA_3, NIM_FALSE);
181 }
N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw *,getArg__filters_12)182 N_LIB_PRIVATE N_NIMCALL(tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*, getArg__filters_12)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NimStringDesc* name, NI pos) {
183 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* result;
184 { result = NIM_NIL;
185 result = ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL);
186 {
187 if (!((*n).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 1) && (*n).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 23))) goto LA3_;
188 goto BeforeRet_;
189 }
190 LA3_: ;
191 {
192 NI i;
193 NI colontmp_;
194 NI i_2;
195 i = (NI)0;
196 colontmp_ = (NI)0;
197 colontmp_ = len__ast_3198(n);
198 i_2 = ((NI) 1);
199 {
200 while (1) {
201 if (!(i_2 < colontmp_)) goto LA7;
202 i = i_2;
203 {
204 if (!((*(*n)._kind_6.sons->data[i]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 33))) goto LA10_;
205 {
206 if (!!(((*(*(*n)._kind_6.sons->data[i])._kind_6.sons->data[((NI) 0)]).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2)))) goto LA14_;
207 invalidPragma__filters_9(conf, n);
208 }
209 LA14_: ;
210 {
211 NI T18_;
212 T18_ = (NI)0;
213 T18_ = nsuCmpIgnoreStyle((*(*(*(*n)._kind_6.sons->data[i])._kind_6.sons->data[((NI) 0)])._kind_5.ident).s, name);
214 if (!(T18_ == ((NI) 0))) goto LA19_;
215 result = (*(*n)._kind_6.sons->data[i])._kind_6.sons->data[((NI) 1)];
216 goto BeforeRet_;
217 }
218 LA19_: ;
219 }
220 goto LA8_;
221 LA10_: ;
222 {
223 if (!(i == pos)) goto LA22_;
224 result = (*n)._kind_6.sons->data[i];
225 goto BeforeRet_;
226 }
227 goto LA8_;
228 LA22_: ;
229 LA8_: ;
230 i_2 += ((NI) 1);
231 } LA7: ;
232 }
233 }
234 }BeforeRet_: ;
235 return result;
236 }
N_NIMCALL(NIM_CHAR,charArg__filters_46)237 N_LIB_PRIVATE N_NIMCALL(NIM_CHAR, charArg__filters_46)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NimStringDesc* name, NI pos, NIM_CHAR default_0) {
238 NIM_CHAR result;
239 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x;
240 result = (NIM_CHAR)0;
241 x = getArg__filters_12(conf, n, name, pos);
242 {
243 if (!(x == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL))) goto LA3_;
244 result = default_0;
245 }
246 goto LA1_;
247 LA3_: ;
248 {
249 if (!((*x).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 5))) goto LA6_;
250 result = ((NIM_CHAR) (((NI) (((NI) ((*x)._kind_1.intVal))))));
251 }
252 goto LA1_;
253 LA6_: ;
254 {
255 invalidPragma__filters_9(conf, n);
256 }
257 LA1_: ;
258 return result;
259 }
N_NIMCALL(NimStringDesc *,strArg__filters_62)260 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, strArg__filters_62)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NimStringDesc* name, NI pos, NimStringDesc* default_0) {
261 NimStringDesc* result;
262 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x;
263 result = NIM_NIL;
264 x = getArg__filters_12(conf, n, name, pos);
265 {
266 if (!(x == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL))) goto LA3_;
267 result = copyString(default_0);
268 }
269 goto LA1_;
270 LA3_: ;
271 {
272 if (!((*x).kind >= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 20) && (*x).kind <= ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 22))) goto LA6_;
273 result = copyString((*x)._kind_3.strVal);
274 }
275 goto LA1_;
276 LA6_: ;
277 {
278 invalidPragma__filters_9(conf, n);
279 }
280 LA1_: ;
281 return result;
282 }
N_NIMCALL(NIM_BOOL,boolArg__filters_78)283 N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, boolArg__filters_78)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* n, NimStringDesc* name, NI pos, NIM_BOOL default_0) {
284 NIM_BOOL result;
285 tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* x;
286 result = (NIM_BOOL)0;
287 x = getArg__filters_12(conf, n, name, pos);
288 {
289 if (!(x == ((tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw*) NIM_NIL))) goto LA3_;
290 result = default_0;
291 }
292 goto LA1_;
293 LA3_: ;
294 {
295 NIM_BOOL T6_;
296 NI T8_;
297 T6_ = (NIM_BOOL)0;
298 T6_ = ((*x).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2));
299 if (!(T6_)) goto LA7_;
300 T8_ = (NI)0;
301 T8_ = nsuCmpIgnoreStyle((*(*x)._kind_5.ident).s, ((NimStringDesc*) &TM__TpC7tIfhGAaosc7HIsUuXA_6));
302 T6_ = (T8_ == ((NI) 0));
303 LA7_: ;
304 if (!T6_) goto LA9_;
305 result = NIM_TRUE;
306 }
307 goto LA1_;
308 LA9_: ;
309 {
310 NIM_BOOL T12_;
311 NI T14_;
312 T12_ = (NIM_BOOL)0;
313 T12_ = ((*x).kind == ((tyEnum_TNodeKind__G4E4Gxe7oI2Cm03rkiOzQw) 2));
314 if (!(T12_)) goto LA13_;
315 T14_ = (NI)0;
316 T14_ = nsuCmpIgnoreStyle((*(*x)._kind_5.ident).s, ((NimStringDesc*) &TM__TpC7tIfhGAaosc7HIsUuXA_7));
317 T12_ = (T14_ == ((NI) 0));
318 LA13_: ;
319 if (!T12_) goto LA15_;
320 result = NIM_FALSE;
321 }
322 goto LA1_;
323 LA15_: ;
324 {
325 invalidPragma__filters_9(conf, n);
326 }
327 LA1_: ;
328 return result;
329 }
N_NIMCALL(tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g *,filterStrip__filters_98)330 N_LIB_PRIVATE N_NIMCALL(tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g*, filterStrip__filters_98)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g* stdin_0, NimStringDesc* filename, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* call) {
331 tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g* result;
332 NimStringDesc* pattern;
333 NIM_BOOL leading;
334 NIM_BOOL trailing;
335 NimStringDesc* line;
336 result = NIM_NIL;
337 pattern = strArg__filters_62(conf, call, ((NimStringDesc*) &TM__TpC7tIfhGAaosc7HIsUuXA_5), ((NI) 1), ((NimStringDesc*) NIM_NIL));
338 leading = boolArg__filters_78(conf, call, ((NimStringDesc*) &TM__TpC7tIfhGAaosc7HIsUuXA_8), ((NI) 2), NIM_TRUE);
339 trailing = boolArg__filters_78(conf, call, ((NimStringDesc*) &TM__TpC7tIfhGAaosc7HIsUuXA_9), ((NI) 3), NIM_TRUE);
340 result = llStreamOpen__llstream_30(((NimStringDesc*) NIM_NIL));
341 line = rawNewString(((NI) 80));
342 {
343 while (1) {
344 NIM_BOOL T3_;
345 NimStringDesc* stripped;
346 T3_ = (NIM_BOOL)0;
347 T3_ = llStreamReadLine__llstream_194(stdin_0, (&line));
348 if (!T3_) goto LA2;
349 stripped = nsuStrip(line, leading, trailing, TM__TpC7tIfhGAaosc7HIsUuXA_10);
350 {
351 NIM_BOOL T6_;
352 T6_ = (NIM_BOOL)0;
353 T6_ = ((pattern ? pattern->Sup.len : 0) == ((NI) 0));
354 if (T6_) goto LA7_;
355 T6_ = nsuStartsWith(stripped, pattern);
356 LA7_: ;
357 if (!T6_) goto LA8_;
358 llStreamWriteln__llstream_221(result, stripped);
359 }
360 goto LA4_;
361 LA8_: ;
362 {
363 llStreamWriteln__llstream_221(result, line);
364 }
365 LA4_: ;
366 } LA2: ;
367 }
368 llStreamClose__llstream_110(stdin_0);
369 return result;
370 }
N_NIMCALL(tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g *,filterReplace__filters_109)371 N_LIB_PRIVATE N_NIMCALL(tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g*, filterReplace__filters_109)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g* stdin_0, NimStringDesc* filename, tyObject_TNode__bROa11lyF5vxEN9aYNbHmhw* call) {
372 tyObject_TLLStream__a5oZYQ9aTktYME2449ayEi6g* result;
373 NimStringDesc* sub;
374 NimStringDesc* by;
375 NimStringDesc* line;
376 result = NIM_NIL;
377 sub = strArg__filters_62(conf, call, ((NimStringDesc*) &TM__TpC7tIfhGAaosc7HIsUuXA_11), ((NI) 1), ((NimStringDesc*) NIM_NIL));
378 {
379 if (!((sub ? sub->Sup.len : 0) == ((NI) 0))) goto LA3_;
380 invalidPragma__filters_9(conf, call);
381 }
382 LA3_: ;
383 by = strArg__filters_62(conf, call, ((NimStringDesc*) &TM__TpC7tIfhGAaosc7HIsUuXA_12), ((NI) 2), ((NimStringDesc*) NIM_NIL));
384 result = llStreamOpen__llstream_30(((NimStringDesc*) NIM_NIL));
385 line = rawNewString(((NI) 80));
386 {
387 while (1) {
388 NIM_BOOL T7_;
389 NimStringDesc* T8_;
390 T7_ = (NIM_BOOL)0;
391 T7_ = llStreamReadLine__llstream_194(stdin_0, (&line));
392 if (!T7_) goto LA6;
393 T8_ = NIM_NIL;
394 T8_ = nsuReplaceStr(line, sub, by);
395 llStreamWriteln__llstream_221(result, T8_);
396 } LA6: ;
397 }
398 llStreamClose__llstream_110(stdin_0);
399 return result;
400 }
401