示例#1
0
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;
}
示例#2
0
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;
}
示例#3
0
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;
}