Esempio n. 1
0
N_NIMCALL(NI, llstreamread_179584)(Tllstream179204* s, void* buf, NI buflen) {
	NI result;
	result = 0;
	switch ((*s).kind) {
	case ((NU8) 0):
	{
		result = ((NI) 0);
	}
	break;
	case ((NU8) 1):
	{
		result = ((buflen <= (NI)(((*s).s ? (*s).s->Sup.len : 0) - (*s).rd)) ? buflen : (NI)(((*s).s ? (*s).s->Sup.len : 0) - (*s).rd));
		{
			if (!(((NI) 0) < result)) goto LA5;
			memcpy(buf, ((void*) ((&(*s).s->data[(NI)(((NI) 0) + (*s).rd)]))), ((NI) (result)));
			(*s).rd += result;
		}
		LA5: ;
	}
	break;
	case ((NU8) 2):
	{
		result = readbuffer_13515((*s).f, buf, ((NI) (buflen)));
	}
	break;
	case ((NU8) 3):
	{
		result = llreadfromstdin_179528(s, buf, buflen);
	}
	break;
	}
	return result;
}
Esempio n. 2
0
N_NIMCALL(NI, llstreamread_177584)(Tllstream177204* s, void* buf, NI buflen) {
	NI result;
	nimfr("llStreamRead", "llstream.nim")
	result = 0;
	nimln(119, "llstream.nim");
	switch ((*s).kind) {
	case ((NU8) 0):
	{
		nimln(121, "llstream.nim");
		result = ((NI) 0);
	}
	break;
	case ((NU8) 1):
	{
		NI TMP2104;
		nimln(123, "llstream.nim");
		TMP2104 = subInt(((*s).s ? (*s).s->Sup.len : 0), (*s).rd);
		result = ((buflen <= (NI)(TMP2104)) ? buflen : (NI)(TMP2104));
		nimln(124, "llstream.nim");
		{
			NI TMP2105;
			NI TMP2106;
			if (!(((NI) 0) < result)) goto LA5;
			nimln(125, "llstream.nim");
			TMP2105 = addInt(((NI) 0), (*s).rd);
			if ((NU)((NI)(TMP2105)) > (NU)((*s).s->Sup.len)) raiseIndexError();
			memcpy(buf, ((void*) ((&(*s).s->data[(NI)(TMP2105)]))), ((NI)chckRange(result, ((NI) 0), ((NI) 2147483647))));
			nimln(126, "llstream.nim");
			TMP2106 = addInt((*s).rd, result);
			(*s).rd = (NI)(TMP2106);
		}
		LA5: ;
	}
	break;
	case ((NU8) 2):
	{
		nimln(128, "llstream.nim");
		result = readbuffer_13515((*s).f, buf, ((NI)chckRange(buflen, ((NI) 0), ((NI) 2147483647))));
	}
	break;
	case ((NU8) 3):
	{
		nimln(130, "llstream.nim");
		result = llreadfromstdin_177528(s, buf, buflen);
	}
	break;
	}
	popFrame();
	return result;
}
Esempio n. 3
0
N_NIMCALL(NI, fsreaddata_137742)(Streamobj137027* s, void* buffer, NI buflen) {
	NI result;
	result = 0;
	result = readbuffer_13515((*((Filestreamobj137692*) (s))).f, buffer, ((NI) (buflen)));
	return result;
}
Esempio n. 4
0
N_NIMCALL(NIM_BOOL, equalsfile_162809)(Ropeobj161009* r, FILE* f) {
	NIM_BOOL result;
	TY162814 buf;
	NI bpos;
	NI blen;
	NI LOC26;
{	result = 0;
	memset((void*)buf, 0, sizeof(buf));
	bpos = ((NI) 1024);
	blen = ((NI) 1024);
	{
		NimStringDesc* s_162837;
		s_162837 = 0;
		{
			TY163351* stack_162886;
			TY161585 LOC6;
			if (!!((r == NIM_NIL))) goto LA4;
			stack_162886 = (TY163351*) newSeq((&NTI163351), 1);
			memset((void*)LOC6, 0, sizeof(LOC6));
			LOC6[0] = r;
			asgnRefNoCycle((void**) (&stack_162886->data[0]), LOC6[0]);
			{
				while (1) {
					Ropeobj161009* it_162888;
					NI spos;
					NI slen;
					if (!(((NI) 0) < (stack_162886 ? stack_162886->Sup.len : 0))) goto LA8;
					it_162888 = pop_161597((&stack_162886));
					{
						while (1) {
							if (!(*it_162888).data == 0) goto LA10;
							stack_162886 = (TY163351*) incrSeq(&(stack_162886)->Sup, sizeof(Ropeobj161009*));
							asgnRefNoCycle((void**) (&stack_162886->data[stack_162886->Sup.len-1]), (*it_162888).right);
							it_162888 = (*it_162888).left;
						} LA10: ;
					}
					s_162837 = (*it_162888).data;
					spos = ((NI) 0);
					slen = (s_162837 ? s_162837->Sup.len : 0);
					{
						while (1) {
							NI n;
							if (!(spos < slen)) goto LA12;
							{
								if (!(bpos == blen)) goto LA15;
								bpos = ((NI) 0);
								blen = readbuffer_13515(f, ((void*) ((&buf[(((NI) 0))- 0]))), ((NI) 1024));
								{
									if (!(blen == ((NI) 0))) goto LA19;
									result = NIM_FALSE;
									goto BeforeRet;
								}
								LA19: ;
							}
							LA15: ;
							n = (((NI)(blen - bpos) <= (NI)(slen - spos)) ? (NI)(blen - bpos) : (NI)(slen - spos));
							{
								NIM_BOOL LOC23;
								LOC23 = 0;
								LOC23 = equalMem(((void*) ((&buf[(bpos)- 0]))), ((void*) ((NI)(((NI) (s_162837->data)) + spos))), ((NI) (n)));
								if (!!(LOC23)) goto LA24;
								result = NIM_FALSE;
								goto BeforeRet;
							}
							LA24: ;
							spos += n;
							bpos += n;
						} LA12: ;
					}
				} LA8: ;
			}
		}
		LA4: ;
	}
	LOC26 = 0;
	LOC26 = readbuffer_13515(f, ((void*) ((&buf[(((NI) 0))- 0]))), ((NI) 1));
	result = (LOC26 == ((NI) 0));
	}BeforeRet: ;
	return result;
}
Esempio n. 5
0
N_NIMCALL(NimStringDesc*, llstreamreadall_177739)(Tllstream177204* s) {
	NimStringDesc* result;
	nimfr("llStreamReadAll", "llstream.nim")
	result = 0;
	nimln(197, "llstream.nim");
	switch ((*s).kind) {
	case ((NU8) 0):
	case ((NU8) 3):
	{
		nimln(199, "llstream.nim");
		result = copyString(((NimStringDesc*) &TMP2087));
	}
	break;
	case ((NU8) 1):
	{
		nimln(201, "llstream.nim");
		{
			if (!((*s).rd == ((NI) 0))) goto LA5;
			result = copyString((*s).s);
		}
		goto LA3;
		LA5: ;
		{
			nimln(202, "llstream.nim");
			result = copyStr((*s).s, (*s).rd);
		}
		LA3: ;
		nimln(203, "llstream.nim");
		(*s).rd = ((*s).s ? (*s).s->Sup.len : 0);
	}
	break;
	case ((NU8) 2):
	{
		NI bytes;
		NI i;
		nimln(205, "llstream.nim");
		result = mnewString(((NI) 2048));
		nimln(206, "llstream.nim");
		if ((NU)(((NI) 0)) > (NU)(result->Sup.len)) raiseIndexError();
		bytes = readbuffer_13515((*s).f, ((void*) ((&result->data[((NI) 0)]))), ((NI) 2048));
		nimln(207, "llstream.nim");
		i = bytes;
		{
			nimln(208, "llstream.nim");
			while (1) {
				NI TMP2116;
				NI TMP2117;
				NI TMP2118;
				if (!(bytes == ((NI) 2048))) goto LA10;
				nimln(209, "llstream.nim");
				TMP2116 = addInt(i, ((NI) 2048));
				result = setLengthStr(result, ((NI)chckRange((NI)(TMP2116), ((NI) 0), ((NI) 2147483647))));
				nimln(210, "llstream.nim");
				TMP2117 = addInt(i, ((NI) 0));
				if ((NU)((NI)(TMP2117)) > (NU)(result->Sup.len)) raiseIndexError();
				bytes = readbuffer_13515((*s).f, ((void*) ((&result->data[(NI)(TMP2117)]))), ((NI) 2048));
				nimln(211, "llstream.nim");
				TMP2118 = addInt(i, bytes);
				i = (NI)(TMP2118);
			} LA10: ;
		}
		nimln(212, "llstream.nim");
		result = setLengthStr(result, ((NI)chckRange(i, ((NI) 0), ((NI) 2147483647))));
	}
	break;
	}
	popFrame();
	return result;
}