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