N_NIMCALL(Tllstream_IHsOGFu33dIY69a9bLlFHlHw*, filterreplace_8vZ6X8KZZNI4xsTx2A9bPBw_2)(Tllstream_IHsOGFu33dIY69a9bLlFHlHw* stdin_AuKs8fAd5orVmJJhh2if5w, NimStringDesc* filename0, Tnode_bROa11lyF5vxEN9aYNbHmhw* call0) { Tllstream_IHsOGFu33dIY69a9bLlFHlHw* result0; NimStringDesc* sub0; NimStringDesc* by0; NimStringDesc* line0; result0 = (Tllstream_IHsOGFu33dIY69a9bLlFHlHw*)0; sub0 = strarg_hrsET2VpzHuUBdZObITwmQ(call0, ((NimStringDesc*) &T_TpC7tIfhGAaosc7HIsUuXA_9), ((NI) 1), ((NimStringDesc*) &T_TpC7tIfhGAaosc7HIsUuXA_3)); { if (!((sub0 ? sub0->Sup.len : 0) == ((NI) 0))) goto LA3; invalidpragma_54ZurtFnCR0LbrbLzC8vrw(call0); } LA3: ; by0 = strarg_hrsET2VpzHuUBdZObITwmQ(call0, ((NimStringDesc*) &T_TpC7tIfhGAaosc7HIsUuXA_10), ((NI) 2), ((NimStringDesc*) &T_TpC7tIfhGAaosc7HIsUuXA_3)); result0 = llstreamopen_HQSZA6kzdilYF0Pf022dhA(((NimStringDesc*) &T_TpC7tIfhGAaosc7HIsUuXA_3)); line0 = rawNewString(((NI) 80)); { while (1) { NIM_BOOL LOC7; NimStringDesc* LOC8; LOC7 = (NIM_BOOL)0; LOC7 = llstreamreadline_Qwm1ilRhcaI3znjOGn4xBg(stdin_AuKs8fAd5orVmJJhh2if5w, (&line0)); if (!LOC7) goto LA6; LOC8 = (NimStringDesc*)0; LOC8 = nsuReplaceStr(line0, sub0, by0); llstreamwriteln_p1fwzwO1YKdwAKg6V27RTw_2(result0, LOC8); } LA6: ; } llstreamclose_TQe1mwqs39ccgay5ywsr9azw(stdin_AuKs8fAd5orVmJJhh2if5w); return result0; }
N_NIMCALL(Tllstream_IHsOGFu33dIY69a9bLlFHlHw*, filterstrip_8vZ6X8KZZNI4xsTx2A9bPBw)(Tllstream_IHsOGFu33dIY69a9bLlFHlHw* stdin_kOIrmbkfx9bA9aensSDHNIyg, NimStringDesc* filename0, Tnode_bROa11lyF5vxEN9aYNbHmhw* call0) { Tllstream_IHsOGFu33dIY69a9bLlFHlHw* result0; NimStringDesc* pattern0; NIM_BOOL leading0; NIM_BOOL trailing0; NimStringDesc* line0; result0 = (Tllstream_IHsOGFu33dIY69a9bLlFHlHw*)0; pattern0 = strarg_hrsET2VpzHuUBdZObITwmQ(call0, ((NimStringDesc*) &T_TpC7tIfhGAaosc7HIsUuXA_2), ((NI) 1), ((NimStringDesc*) &T_TpC7tIfhGAaosc7HIsUuXA_3)); leading0 = boolarg_J1A66BRI6GgqzqhU0EZntw(call0, ((NimStringDesc*) &T_TpC7tIfhGAaosc7HIsUuXA_6), ((NI) 2), NIM_TRUE); trailing0 = boolarg_J1A66BRI6GgqzqhU0EZntw(call0, ((NimStringDesc*) &T_TpC7tIfhGAaosc7HIsUuXA_7), ((NI) 3), NIM_TRUE); result0 = llstreamopen_HQSZA6kzdilYF0Pf022dhA(((NimStringDesc*) &T_TpC7tIfhGAaosc7HIsUuXA_3)); line0 = rawNewString(((NI) 80)); { while (1) { NIM_BOOL LOC3; NimStringDesc* stripped0; LOC3 = (NIM_BOOL)0; LOC3 = llstreamreadline_Qwm1ilRhcaI3znjOGn4xBg(stdin_kOIrmbkfx9bA9aensSDHNIyg, (&line0)); if (!LOC3) goto LA2; stripped0 = nsuStrip(line0, leading0, trailing0, T_TpC7tIfhGAaosc7HIsUuXA_8); { NIM_BOOL LOC6; LOC6 = (NIM_BOOL)0; LOC6 = ((pattern0 ? pattern0->Sup.len : 0) == ((NI) 0)); if (LOC6) goto LA7; LOC6 = nsuStartsWith(stripped0, pattern0); LA7: ; if (!LOC6) goto LA8; llstreamwriteln_p1fwzwO1YKdwAKg6V27RTw_2(result0, stripped0); } goto LA4; LA8: ; { llstreamwriteln_p1fwzwO1YKdwAKg6V27RTw_2(result0, line0); } LA4: ; } LA2: ; } llstreamclose_TQe1mwqs39ccgay5ywsr9azw(stdin_kOIrmbkfx9bA9aensSDHNIyg); return result0; }
N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, parsepipe_bJSds72kKu77CwGx8lNYmA)(NimStringDesc* filename0, Tllstream_IHsOGFu33dIY69a9bLlFHlHw* inputstream0, IdentcacheHEX3Aobjecttype_TzLHS09bRH9a0TYLs39cqcNaw* cache0) { Tnode_bROa11lyF5vxEN9aYNbHmhw* result0; Tllstream_IHsOGFu33dIY69a9bLlFHlHw* s0; result0 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0; result0 = emptynode_69ccLGuQ2mITw7zylZYtWcA; s0 = llstreamopen_TMcHzC3C639c0ccC0wtKA2w(filename0, ((Filemode_fVUBHvW79bXUw1j55Oo9avSQ) 0)); { NimStringDesc* line0; NIM_BOOL LOC5; NI i0; NI linenumber0; if (!!((s0 == NIM_NIL))) goto LA3; line0 = rawNewString(((NI) 80)); LOC5 = (NIM_BOOL)0; LOC5 = llstreamreadline_Qwm1ilRhcaI3znjOGn4xBg(s0, (&line0)); i0 = utf8bom_h8LrhHxyp3nGeHzqCSFf9bg(line0); linenumber0 = ((NI) 1); { NIM_BOOL LOC8; NIM_BOOL LOC11; LOC8 = (NIM_BOOL)0; LOC8 = containsshebang_KmLpTlp0iQ7qLu2YAgAZhw(line0, i0); if (!LOC8) goto LA9; LOC11 = (NIM_BOOL)0; LOC11 = llstreamreadline_Qwm1ilRhcaI3znjOGn4xBg(s0, (&line0)); i0 = ((NI) 0); linenumber0 += ((NI) 1); } LA9: ; { NIM_BOOL LOC14; Tparser_c38t9cDVS8o9b29cOovKwkANw q0; NimStringDesc* LOC20; Tllstream_IHsOGFu33dIY69a9bLlFHlHw* LOC21; LOC14 = (NIM_BOOL)0; LOC14 = ((NU8)(line0->data[i0]) == (NU8)(35)); if (!(LOC14)) goto LA15; LOC14 = ((NU8)(line0->data[(NI)(i0 + ((NI) 1))]) == (NU8)(63)); LA15: ; if (!LOC14) goto LA16; i0 += ((NI) 2); { while (1) { if (!(((NU8)(line0->data[i0])) == ((NU8)(32)) || ((NU8)(line0->data[i0])) == ((NU8)(9)) || ((NU8)(line0->data[i0])) == ((NU8)(11)) || ((NU8)(line0->data[i0])) == ((NU8)(13)) || ((NU8)(line0->data[i0])) == ((NU8)(10)) || ((NU8)(line0->data[i0])) == ((NU8)(12)))) goto LA19; i0 += ((NI) 1); } LA19: ; } memset((void*)(&q0), 0, sizeof(q0)); objectInit((&q0), (&NTI_c38t9cDVS8o9b29cOovKwkANw)); LOC20 = (NimStringDesc*)0; LOC20 = copyStr(line0, i0); LOC21 = (Tllstream_IHsOGFu33dIY69a9bLlFHlHw*)0; LOC21 = llstreamopen_HQSZA6kzdilYF0Pf022dhA(LOC20); openparser_xOo5exBZF46oOyrExM9a3yQ((&q0), filename0, LOC21, cache0, NIM_FALSE); result0 = parseall_x3UAdSvBfIIO33m4gWdOPg((&q0)); closeparser_Bv6bIlAg2H4GfVH07sPwUw((&q0)); } LA16: ; llstreamclose_TQe1mwqs39ccgay5ywsr9azw(s0); } LA3: ; return result0; }