예제 #1
0
N_NIMCALL(NIM_CHAR, chararg_216014)(tnode185813* n, NimStringDesc* name, NI pos, NIM_CHAR default_216019) {
	NIM_CHAR result;
	tnode185813* x;
	nimfr("charArg", "filters.nim")
	result = 0;
	nimln(39, "filters.nim");
	x = getarg_216042(n, name, pos);
	nimln(40, "filters.nim");
	{
		nimln(40, "filters.nim");
		if (!(x == NIM_NIL)) goto LA3;
		nimln(40, "filters.nim");
		result = default_216019;
	}
	goto LA1;
	LA3: ;
	{
		nimln(41, "filters.nim");
		if (!((*x).Kind == ((NU8) 5))) goto LA6;
		nimln(41, "filters.nim");
		nimln(41, "filters.nim");
		if (!(((TMP2652[(*x).Kind/8] &(1<<((*x).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP2653));
		result = ((NIM_CHAR) (((NI)chckRange(((NI)chckRange64((*x).kindU.S1.Intval, (-2147483647 -1), 2147483647)), 0, 255))));
	}
	goto LA1;
	LA6: ;
	{
		nimln(42, "filters.nim");
		invalidpragma_216036(n);
	}
	LA1: ;
	popFrame();
	return result;
}
예제 #2
0
N_NIMCALL(NI, npuParseInt)(NimStringDesc* s, NI* number, NI start) {
	NI result;
	NI64 res;
	nimfr("parseInt", "parseutils.nim")
	result = 0;
	res = 0;
	nimln(227, "parseutils.nim");
	result = npuParseBiggestInt(s, (&res), start);
	nimln(228, "parseutils.nim");
	{
		NIM_BOOL LOC3;
		NIM_BOOL LOC5;
		Overflowerror3443* e_94055;
		NimStringDesc* LOC9;
		LOC3 = 0;
		LOC3 = NIM_TRUE;
		if (!(LOC3)) goto LA4;
		nimln(229, "parseutils.nim");
		LOC5 = 0;
		LOC5 = (res < IL64(-2147483648));
		if (LOC5) goto LA6;
		LOC5 = (IL64(2147483647) < res);
		LA6: ;
		LOC3 = LOC5;
		LA4: ;
		if (!LOC3) goto LA7;
		e_94055 = 0;
		nimln(2265, "system.nim");
		e_94055 = (Overflowerror3443*) newObj((&NTI23401), sizeof(Overflowerror3443));
		(*e_94055).Sup.Sup.Sup.m_type = (&NTI3443);
		nimln(2266, "system.nim");
		LOC9 = 0;
		LOC9 = (*e_94055).Sup.Sup.message; (*e_94055).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TMP283));
		if (LOC9) nimGCunrefNoCycle(LOC9);
		nimln(230, "parseutils.nim");
		raiseException((Exception*)e_94055, "OverflowError");
	}
	goto LA1;
	LA7: ;
	{
		nimln(231, "parseutils.nim");
		if (!!((result == ((NI) 0)))) goto LA11;
		nimln(232, "parseutils.nim");
		(*number) = ((NI)chckRange64(res, ((NI) (-2147483647 -1)), ((NI) 2147483647)));
	}
	goto LA1;
	LA11: ;
	LA1: ;
	popFrame();
	return result;
}
예제 #3
0
N_NIMCALL(NI, npuParseInt)(NimStringDesc* s, NI* number, NI start) {
	NI result;
	NI64 res;
	nimfr("parseInt", "parseutils.nim")
	result = 0;
	res = 0;
	nimln(227, "parseutils.nim");
	result = npuParseBiggestInt(s, &res, start);
	nimln(228, "parseutils.nim");
	{
		NIM_BOOL LOC3;
		NIM_BOOL LOC5;
		EOverflow* e_86686;
		NimStringDesc* LOC9;
		nimln(228, "parseutils.nim");
		LOC3 = 0;
		LOC3 = NIM_TRUE;
		if (!(LOC3)) goto LA4;
		nimln(229, "parseutils.nim");
		LOC5 = 0;
		nimln(229, "parseutils.nim");
		LOC5 = (res < (-2147483647 -1));
		if (LOC5) goto LA6;
		nimln(229, "parseutils.nim");
		LOC5 = (2147483647 < res);
		LA6: ;
		LOC3 = LOC5;
		LA4: ;
		if (!LOC3) goto LA7;
		e_86686 = 0;
		nimln(1992, "system.nim");
		e_86686 = (EOverflow*) newObj((&NTI19201), sizeof(EOverflow));
		(*e_86686).Sup.Sup.Sup.Sup.m_type = (&NTI2445);
		nimln(1993, "system.nim");
		LOC9 = 0;
		LOC9 = (*e_86686).Sup.Sup.Sup.message; (*e_86686).Sup.Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TMP1140));
		if (LOC9) nimGCunrefNoCycle(LOC9);
		nimln(230, "parseutils.nim");
		raiseException((E_Base*)e_86686, "EOverflow");
	}
	goto LA1;
	LA7: ;
	{
		nimln(232, "parseutils.nim");
		(*number) = ((NI)chckRange64(res, (-2147483647 -1), 2147483647));
	}
	LA1: ;
	popFrame();
	return result;
}
예제 #4
0
N_NIMCALL(ttype187847*, getintlittype_242378)(tnode187813* literal) {
	ttype187847* result;
	NI64 value;
	nimfr("getIntLitType", "magicsys.nim")
	result = 0;
	nimln(105, "magicsys.nim");
	if (!(((TMP3132[(*literal).Kind/8] &(1<<((*literal).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3133));
	value = (*literal).kindU.S1.Intval;
	nimln(106, "magicsys.nim");
	{
		NIM_BOOL LOC3;
		nimln(106, "magicsys.nim");
		LOC3 = 0;
		nimln(106, "magicsys.nim");
		LOC3 = (-5 <= value);
		if (!(LOC3)) goto LA4;
		nimln(106, "magicsys.nim");
		LOC3 = (value <= 64);
		LA4: ;
		if (!LOC3) goto LA5;
		nimln(107, "magicsys.nim");
		if (((NI)chckRange64(value, (-2147483647 -1), 2147483647)) < -5 || ((NI)chckRange64(value, (-2147483647 -1), 2147483647)) > 64) raiseIndexError();
		result = inttypecache_242289[(((NI)chckRange64(value, (-2147483647 -1), 2147483647)))- -5];
		nimln(108, "magicsys.nim");
		{
			ttype187847* ti;
			nimln(108, "magicsys.nim");
			if (!(result == NIM_NIL)) goto LA9;
			nimln(109, "magicsys.nim");
			ti = getsystype_242024(((NU8) 31));
			nimln(110, "magicsys.nim");
			result = copytype_188151(ti, (*ti).Owner, NIM_FALSE);
			nimln(111, "magicsys.nim");
			asgnRefNoCycle((void**) &(*result).N, literal);
			nimln(112, "magicsys.nim");
			if (((NI)chckRange64(value, (-2147483647 -1), 2147483647)) < -5 || ((NI)chckRange64(value, (-2147483647 -1), 2147483647)) > 64) raiseIndexError();
			asgnRefNoCycle((void**) &inttypecache_242289[(((NI)chckRange64(value, (-2147483647 -1), 2147483647)))- -5], result);
		}
		LA9: ;
	}
	goto LA1;
	LA5: ;
	{
		ttype187847* ti;
		nimln(114, "magicsys.nim");
		ti = getsystype_242024(((NU8) 31));
		nimln(115, "magicsys.nim");
		result = copytype_188151(ti, (*ti).Owner, NIM_FALSE);
		nimln(116, "magicsys.nim");
		asgnRefNoCycle((void**) &(*result).N, literal);
	}
	LA1: ;
	popFrame();
	return result;
}
예제 #5
0
N_NIMCALL(NI, fsgetposition_126193)(tstream125629* s) {
	NI result;
	NI64 LOC1;
	nimfr("fsGetPosition", "streams.nim")
	result = 0;
	nimln(258, "streams.nim");
	nimln(258, "streams.nim");
	nimln(258, "streams.nim");
	if (s) chckObj((*s).Sup.m_type, (&NTI126156));
	LOC1 = 0;
	LOC1 = getfilepos_10855((*((tfilestream126156*) (s))).F);
	result = ((NI)chckRange64(LOC1, (-2147483647 -1), 2147483647));
	goto BeforeRet;
	BeforeRet: ;
	popFrame();
	return result;
}
예제 #6
0
N_NIMCALL(tmemfile237204, open_237803)(NimStringDesc* filename, NU8 mode, NI mappedsize, NI offset, NI newfilesize) {
	tmemfile237204 result;
	NIM_BOOL readonly;
	int flags;
	int LOC59;
	int LOC65;
	nimfr("open", "memfiles.nim")
	memset((void*)&result, 0, sizeof(result));
	nimln(95, "memfiles.nim");
	{
		NIM_BOOL LOC3;
		nimln(95, "memfiles.nim");
		nimln(95, "memfiles.nim");
		LOC3 = 0;
		nimln(95, "memfiles.nim");
		LOC3 = (newfilesize == -1);
		if (LOC3) goto LA4;
		nimln(95, "memfiles.nim");
		nimln(95, "memfiles.nim");
		LOC3 = !((mode == ((NU8) 0)));
		LA4: ;
		if (!!(LOC3)) goto LA5;
		nimln(95, "memfiles.nim");
		failedassertimpl_80421(((NimStringDesc*) &TMP2963));
	}
	LA5: ;
	nimln(96, "memfiles.nim");
	nimln(96, "memfiles.nim");
	readonly = (mode == ((NU8) 0));
	nimln(177, "memfiles.nim");
	nimln(177, "memfiles.nim");
	{
		if (!readonly) goto LA9;
		flags = O_RDONLY;
	}
	goto LA7;
	LA9: ;
	{
		flags = O_RDWR;
	}
	LA7: ;
	nimln(179, "memfiles.nim");
	{
		NI32 permissionsmode;
		nimln(179, "memfiles.nim");
		nimln(179, "memfiles.nim");
		if (!!((newfilesize == -1))) goto LA14;
		nimln(180, "memfiles.nim");
		nimln(180, "memfiles.nim");
		nimln(180, "memfiles.nim");
		flags = (NI32)((NI32)(flags | O_CREAT) | O_TRUNC);
		nimln(181, "memfiles.nim");
		nimln(181, "memfiles.nim");
		permissionsmode = (NI32)(S_IRUSR | S_IWUSR);
		nimln(182, "memfiles.nim");
		result.Handle = open(filename->data, flags, permissionsmode);
	}
	goto LA12;
	LA14: ;
	{
		nimln(184, "memfiles.nim");
		result.Handle = open(filename->data, flags);
	}
	LA12: ;
	nimln(186, "memfiles.nim");
	{
		NI32 LOC26;
		nimln(186, "memfiles.nim");
		if (!(result.Handle == ((NI32) -1))) goto LA19;
		nimln(99, "memfiles.nim");
		result.Mem = NIM_NIL;
		nimln(100, "memfiles.nim");
		result.Size = 0;
		nimln(174, "memfiles.nim");
		{
			int LOC25;
			nimln(174, "memfiles.nim");
			nimln(174, "memfiles.nim");
			if (!!((result.Handle == ((NI32) 0)))) goto LA23;
			nimln(174, "memfiles.nim");
			nimln(174, "memfiles.nim");
			LOC25 = 0;
			LOC25 = close(result.Handle);
		}
		LA23: ;
		nimln(175, "memfiles.nim");
		nimln(189, "memfiles.nim");
		LOC26 = 0;
		LOC26 = oslasterror_106231();
		oserror_106205(LOC26);
	}
	LA19: ;
	nimln(191, "memfiles.nim");
	{
		nimln(191, "memfiles.nim");
		nimln(191, "memfiles.nim");
		if (!!((newfilesize == -1))) goto LA29;
		nimln(192, "memfiles.nim");
		{
			int LOC33;
			NI32 LOC41;
			nimln(192, "memfiles.nim");
			nimln(192, "memfiles.nim");
			LOC33 = 0;
			LOC33 = ftruncate(result.Handle, ((off_t) (newfilesize)));
			if (!(LOC33 == ((NI32) -1))) goto LA34;
			nimln(99, "memfiles.nim");
			result.Mem = NIM_NIL;
			nimln(100, "memfiles.nim");
			result.Size = 0;
			nimln(174, "memfiles.nim");
			{
				int LOC40;
				nimln(174, "memfiles.nim");
				nimln(174, "memfiles.nim");
				if (!!((result.Handle == ((NI32) 0)))) goto LA38;
				nimln(174, "memfiles.nim");
				nimln(174, "memfiles.nim");
				LOC40 = 0;
				LOC40 = close(result.Handle);
			}
			LA38: ;
			nimln(175, "memfiles.nim");
			nimln(193, "memfiles.nim");
			LOC41 = 0;
			LOC41 = oslasterror_106231();
			oserror_106205(LOC41);
		}
		LA34: ;
	}
	LA29: ;
	nimln(195, "memfiles.nim");
	{
		nimln(195, "memfiles.nim");
		nimln(195, "memfiles.nim");
		if (!!((mappedsize == -1))) goto LA44;
		nimln(196, "memfiles.nim");
		result.Size = mappedsize;
	}
	goto LA42;
	LA44: ;
	{
		struct stat stat;
		memset((void*)&stat, 0, sizeof(stat));
		nimln(199, "memfiles.nim");
		{
			int LOC49;
			nimln(199, "memfiles.nim");
			nimln(199, "memfiles.nim");
			nimln(199, "memfiles.nim");
			LOC49 = 0;
			LOC49 = fstat(result.Handle, &stat);
			if (!!((LOC49 == ((NI32) -1)))) goto LA50;
			nimln(202, "memfiles.nim");
			result.Size = ((NI)chckRange64(stat.st_size, (-2147483647 -1), 2147483647));
		}
		goto LA47;
		LA50: ;
		{
			NI32 LOC58;
			nimln(99, "memfiles.nim");
			result.Mem = NIM_NIL;
			nimln(100, "memfiles.nim");
			result.Size = 0;
			nimln(174, "memfiles.nim");
			{
				int LOC57;
				nimln(174, "memfiles.nim");
				nimln(174, "memfiles.nim");
				if (!!((result.Handle == ((NI32) 0)))) goto LA55;
				nimln(174, "memfiles.nim");
				nimln(174, "memfiles.nim");
				LOC57 = 0;
				LOC57 = close(result.Handle);
			}
			LA55: ;
			nimln(175, "memfiles.nim");
			nimln(204, "memfiles.nim");
			LOC58 = 0;
			LOC58 = oslasterror_106231();
			oserror_106205(LOC58);
		}
		LA47: ;
	}
	LA42: ;
	nimln(206, "memfiles.nim");
	LOC59 = 0;
	nimln(209, "memfiles.nim");
	{
		if (!readonly) goto LA62;
		LOC59 = PROT_READ;
	}
	goto LA60;
	LA62: ;
	{
		nimln(209, "memfiles.nim");
		LOC59 = (NI32)(PROT_READ | PROT_WRITE);
	}
	LA60: ;
	LOC65 = 0;
	nimln(210, "memfiles.nim");
	{
		if (!readonly) goto LA68;
		LOC65 = MAP_PRIVATE;
	}
	goto LA66;
	LA68: ;
	{
		LOC65 = MAP_SHARED;
	}
	LA66: ;
	result.Mem = mmap(NIM_NIL, result.Size, LOC59, LOC65, result.Handle, ((off_t) (offset)));
	nimln(214, "memfiles.nim");
	{
		NI32 LOC80;
		nimln(214, "memfiles.nim");
		if (!(result.Mem == ((void*) (MAP_FAILED)))) goto LA73;
		nimln(99, "memfiles.nim");
		result.Mem = NIM_NIL;
		nimln(100, "memfiles.nim");
		result.Size = 0;
		nimln(174, "memfiles.nim");
		{
			int LOC79;
			nimln(174, "memfiles.nim");
			nimln(174, "memfiles.nim");
			if (!!((result.Handle == ((NI32) 0)))) goto LA77;
			nimln(174, "memfiles.nim");
			nimln(174, "memfiles.nim");
			LOC79 = 0;
			LOC79 = close(result.Handle);
		}
		LA77: ;
		nimln(175, "memfiles.nim");
		nimln(215, "memfiles.nim");
		LOC80 = 0;
		LOC80 = oslasterror_106231();
		oserror_106205(LOC80);
	}
	LA73: ;
	popFrame();
	return result;
}
예제 #7
0
N_NIMCALL(NI, hashtree_246022)(tnode186813* n) {
	NI result;
	nimfr("hashTree", "treetab.nim")
	result = 0;
	nimln(16, "treetab.nim");
	{
		nimln(16, "treetab.nim");
		if (!(n == NIM_NIL)) goto LA3;
		nimln(16, "treetab.nim");
		goto BeforeRet;
	}
	LA3: ;
	nimln(17, "treetab.nim");
	nimln(17, "treetab.nim");
	result = ((NI) ((*n).Kind));
	nimln(18, "treetab.nim");
	switch ((*n).Kind) {
	case ((NU8) 1):
	case ((NU8) 23):
	case ((NU8) 4):
	{
	}
	break;
	case ((NU8) 2):
	{
		nimln(22, "treetab.nim");
		if (!(((TMP3193[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3194));
		result = HEX21HEX26_118015(result, (*(*n).kindU.S5.Ident).H);
	}
	break;
	case ((NU8) 3):
	{
		nimln(24, "treetab.nim");
		if (!(((TMP3195[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3196));
		result = HEX21HEX26_118015(result, (*(*(*n).kindU.S4.Sym).Name).H);
	}
	break;
	case ((NU8) 5) ... ((NU8) 15):
	{
		nimln(26, "treetab.nim");
		{
			NIM_BOOL LOC11;
			nimln(26, "treetab.nim");
			LOC11 = 0;
			nimln(26, "treetab.nim");
			if (!(((TMP3197[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3198));
			LOC11 = ((-2147483647 -1) <= (*n).kindU.S1.Intval);
			if (!(LOC11)) goto LA12;
			nimln(26, "treetab.nim");
			if (!(((TMP3197[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3198));
			LOC11 = ((*n).kindU.S1.Intval <= 2147483647);
			LA12: ;
			if (!LOC11) goto LA13;
			nimln(27, "treetab.nim");
			if (!(((TMP3197[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3198));
			result = HEX21HEX26_118015(result, ((NI)chckRange64((*n).kindU.S1.Intval, (-2147483647 -1), 2147483647)));
		}
		LA13: ;
	}
	break;
	case ((NU8) 16) ... ((NU8) 18):
	{
		nimln(29, "treetab.nim");
		{
			NIM_BOOL LOC18;
			nimln(29, "treetab.nim");
			LOC18 = 0;
			nimln(29, "treetab.nim");
			if (!(((TMP3199[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3200));
			LOC18 = (-1.0000000000000000e+006 <= (*n).kindU.S2.Floatval);
			if (!(LOC18)) goto LA19;
			nimln(29, "treetab.nim");
			if (!(((TMP3199[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3200));
			LOC18 = ((*n).kindU.S2.Floatval <= 1.0000000000000000e+006);
			LA19: ;
			if (!LOC18) goto LA20;
			nimln(30, "treetab.nim");
			nimln(30, "treetab.nim");
			if (!(((TMP3199[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3200));
			result = HEX21HEX26_118015(result, float64ToInt32((*n).kindU.S2.Floatval));
		}
		LA20: ;
	}
	break;
	case ((NU8) 20) ... ((NU8) 22):
	{
		NI LOC23;
		nimln(32, "treetab.nim");
		nimln(32, "treetab.nim");
		if (!(((TMP3201[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3202));
		LOC23 = 0;
		LOC23 = hash_118827((*n).kindU.S3.Strval);
		result = HEX21HEX26_118015(result, LOC23);
	}
	break;
	default:
	{
		NI i_246197;
		NI HEX3Atmp_246216;
		NI LOC25;
		NI TMP3205;
		NI res_246218;
		i_246197 = 0;
		HEX3Atmp_246216 = 0;
		nimln(34, "treetab.nim");
		nimln(34, "treetab.nim");
		nimln(34, "treetab.nim");
		LOC25 = 0;
		LOC25 = sonslen_187191(n);
		TMP3205 = subInt(LOC25, 1);
		HEX3Atmp_246216 = (NI32)(TMP3205);
		nimln(1450, "system.nim");
		res_246218 = 0;
		nimln(1451, "system.nim");
		while (1) {
			NI LOC27;
			nimln(1451, "system.nim");
			if (!(res_246218 <= HEX3Atmp_246216)) goto LA26;
			nimln(1450, "system.nim");
			i_246197 = res_246218;
			nimln(35, "treetab.nim");
			nimln(35, "treetab.nim");
			if (((TMP3203[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0)) raiseFieldError(((NimStringDesc*) &TMP3204));
			if ((NU)(i_246197) >= (NU)((*n).kindU.S6.Sons->Sup.len)) raiseIndexError();
			LOC27 = 0;
			LOC27 = hashtree_246022((*n).kindU.S6.Sons->data[i_246197]);
			result = HEX21HEX26_118015(result, LOC27);
			nimln(1453, "system.nim");
			res_246218 = addInt(res_246218, 1);
		} LA26: ;
	}
	break;
	}
	BeforeRet: ;
	popFrame();
	return result;
}
예제 #8
0
N_NIMCALL(void, tobitset_219002)(tnode172659* s, tbitset218010** b) {
	NI64 first;
	NI64 j;
	NI64 LOC1;
	NI i_219467;
	NI HEX3Atmp_219554;
	NI LOC2;
	NI TMP3067;
	NI res_219556;
	nimfr("toBitSet", "nimsets.nim")
	first = 0;
	j = 0;
	nimln(79, "nimsets.nim");
	if ((NU)(0) >= (NU)((*(*s).Typ).Sons->Sup.len)) raiseIndexError();
	first = firstord_201002((*(*s).Typ).Sons->data[0]);
	nimln(80, "nimsets.nim");
	nimln(80, "nimsets.nim");
	LOC1 = 0;
	LOC1 = getsize_201153((*s).Typ);
	bitsetinit_218015(b, ((NI)chckRange64(LOC1, (-2147483647 -1), 2147483647)));	i_219467 = 0;
	HEX3Atmp_219554 = 0;
	nimln(81, "nimsets.nim");
	nimln(81, "nimsets.nim");
	nimln(81, "nimsets.nim");
	LOC2 = 0;
	LOC2 = sonslen_173022(s);
	TMP3067 = subInt(LOC2, 1);
	HEX3Atmp_219554 = (NI32)(TMP3067);
	nimln(1301, "system.nim");
	res_219556 = 0;
	nimln(1302, "system.nim");
	while (1) {
		nimln(1302, "system.nim");
		if (!(res_219556 <= HEX3Atmp_219554)) goto LA3;
		nimln(1301, "system.nim");
		i_219467 = res_219556;
		nimln(82, "nimsets.nim");
		{
			nimln(82, "nimsets.nim");
			if (((TMP3062[(*s).Kind/8] &(1<<((*s).Kind%8)))!=0)) raiseFieldError(((NimStringDesc*) &TMP3063));
			if ((NU)(i_219467) >= (NU)((*s).kindU.S6.Sons->Sup.len)) raiseIndexError();
			if (!((*(*s).kindU.S6.Sons->data[i_219467]).Kind == ((NU8) 44))) goto LA6;
			nimln(83, "nimsets.nim");
			if (((TMP3062[(*s).Kind/8] &(1<<((*s).Kind%8)))!=0)) raiseFieldError(((NimStringDesc*) &TMP3063));
			if ((NU)(i_219467) >= (NU)((*s).kindU.S6.Sons->Sup.len)) raiseIndexError();
			if (((TMP3062[(*(*s).kindU.S6.Sons->data[i_219467]).Kind/8] &(1<<((*(*s).kindU.S6.Sons->data[i_219467]).Kind%8)))!=0)) raiseFieldError(((NimStringDesc*) &TMP3063));
			if ((NU)(0) >= (NU)((*(*s).kindU.S6.Sons->data[i_219467]).kindU.S6.Sons->Sup.len)) raiseIndexError();
			j = getordvalue_201145((*(*s).kindU.S6.Sons->data[i_219467]).kindU.S6.Sons->data[0]);
			nimln(84, "nimsets.nim");
			while (1) {
				NI64 LOC9;
				NI64 TMP3068;
				nimln(84, "nimsets.nim");
				nimln(84, "nimsets.nim");
				if (((TMP3062[(*s).Kind/8] &(1<<((*s).Kind%8)))!=0)) raiseFieldError(((NimStringDesc*) &TMP3063));
				if ((NU)(i_219467) >= (NU)((*s).kindU.S6.Sons->Sup.len)) raiseIndexError();
				if (((TMP3062[(*(*s).kindU.S6.Sons->data[i_219467]).Kind/8] &(1<<((*(*s).kindU.S6.Sons->data[i_219467]).Kind%8)))!=0)) raiseFieldError(((NimStringDesc*) &TMP3063));
				if ((NU)(1) >= (NU)((*(*s).kindU.S6.Sons->data[i_219467]).kindU.S6.Sons->Sup.len)) raiseIndexError();
				LOC9 = 0;
				LOC9 = getordvalue_201145((*(*s).kindU.S6.Sons->data[i_219467]).kindU.S6.Sons->data[1]);
				if (!(j <= LOC9)) goto LA8;
				nimln(85, "nimsets.nim");
				nimln(85, "nimsets.nim");
				TMP3068 = subInt64(j, first);
				bitsetincl_218045(b, (NI64)(TMP3068));				nimln(86, "nimsets.nim");
				j = addInt64(j, 1);
			} LA8: ;
		}		goto LA4;
		LA6: ;
		{
			NI64 LOC11;
			NI64 TMP3069;
			nimln(88, "nimsets.nim");
			nimln(88, "nimsets.nim");
			nimln(88, "nimsets.nim");
			if (((TMP3062[(*s).Kind/8] &(1<<((*s).Kind%8)))!=0)) raiseFieldError(((NimStringDesc*) &TMP3063));
			if ((NU)(i_219467) >= (NU)((*s).kindU.S6.Sons->Sup.len)) raiseIndexError();
			LOC11 = 0;
			LOC11 = getordvalue_201145((*s).kindU.S6.Sons->data[i_219467]);
			TMP3069 = subInt64(LOC11, first);
			bitsetincl_218045(b, (NI64)(TMP3069));		}		LA4: ;
		nimln(1304, "system.nim");
		res_219556 = addInt(res_219556, 1);
	} LA3: ;
	popFrame();
}
예제 #9
0
N_NIMCALL(Memfile231208, open_231807)(NimStringDesc* filename, NU8 mode, NI mappedsize, NI offset, NI newfilesize) {
	Memfile231208 result;
	NIM_BOOL readonly;
	int flags;
	int LOC59;
	NI32 LOC65;
	nimfr("open", "memfiles.nim")
	memset((void*)(&result), 0, sizeof(result));
	nimln(96, "memfiles.nim");
	{
		NIM_BOOL LOC3;
		LOC3 = 0;
		LOC3 = (newfilesize == ((NI) -1));
		if (LOC3) goto LA4;
		LOC3 = !((mode == ((NU8) 0)));
		LA4: ;
		if (!!(LOC3)) goto LA5;
		failedassertimpl_87217(((NimStringDesc*) &TMP3725));
	}
	LA5: ;
	nimln(97, "memfiles.nim");
	readonly = (mode == ((NU8) 0));
	nimln(178, "memfiles.nim");
	{
		if (!readonly) goto LA9;
		flags = O_RDONLY;
	}
	goto LA7;
	LA9: ;
	{
		flags = O_RDWR;
	}
	LA7: ;
	nimln(180, "memfiles.nim");
	{
		NI32 permissionsmode;
		if (!!((newfilesize == ((NI) -1)))) goto LA14;
		nimln(181, "memfiles.nim");
		flags = (NI32)((NI32)(flags | O_CREAT) | O_TRUNC);
		nimln(182, "memfiles.nim");
		permissionsmode = (NI32)(S_IRUSR | S_IWUSR);
		nimln(183, "memfiles.nim");
		result.handle = open(filename->data, flags, permissionsmode);
	}
	goto LA12;
	LA14: ;
	{
		nimln(185, "memfiles.nim");
		result.handle = open(filename->data, flags);
	}
	LA12: ;
	nimln(187, "memfiles.nim");
	{
		NI32 LOC26;
		if (!(result.handle == ((NI32) -1))) goto LA19;
		nimln(100, "memfiles.nim");
		result.mem = NIM_NIL;
		nimln(101, "memfiles.nim");
		result.size = ((NI) 0);
		nimln(175, "memfiles.nim");
		{
			int LOC25;
			if (!!((result.handle == ((NI32) 0)))) goto LA23;
			LOC25 = 0;
			LOC25 = close(result.handle);
		}
		LA23: ;
		nimln(176, "memfiles.nim");
		nimln(190, "memfiles.nim");
		LOC26 = 0;
		LOC26 = oslasterror_117033();
		raiseoserror_117009(LOC26);
	}
	LA19: ;
	nimln(192, "memfiles.nim");
	{
		if (!!((newfilesize == ((NI) -1)))) goto LA29;
		nimln(193, "memfiles.nim");
		{
			int LOC33;
			NI32 LOC41;
			LOC33 = 0;
			LOC33 = ftruncate(result.handle, ((off_t) (newfilesize)));
			if (!(LOC33 == ((NI32) -1))) goto LA34;
			nimln(100, "memfiles.nim");
			result.mem = NIM_NIL;
			nimln(101, "memfiles.nim");
			result.size = ((NI) 0);
			nimln(175, "memfiles.nim");
			{
				int LOC40;
				if (!!((result.handle == ((NI32) 0)))) goto LA38;
				LOC40 = 0;
				LOC40 = close(result.handle);
			}
			LA38: ;
			nimln(176, "memfiles.nim");
			nimln(194, "memfiles.nim");
			LOC41 = 0;
			LOC41 = oslasterror_117033();
			raiseoserror_117009(LOC41);
		}
		LA34: ;
	}
	LA29: ;
	nimln(196, "memfiles.nim");
	{
		if (!!((mappedsize == ((NI) -1)))) goto LA44;
		nimln(197, "memfiles.nim");
		result.size = mappedsize;
	}
	goto LA42;
	LA44: ;
	{
		struct stat stat;
		memset((void*)(&stat), 0, sizeof(stat));
		nimln(200, "memfiles.nim");
		{
			int LOC49;
			LOC49 = 0;
			LOC49 = fstat(result.handle, (&stat));
			if (!!((LOC49 == ((NI32) -1)))) goto LA50;
			nimln(203, "memfiles.nim");
			result.size = ((NI)chckRange64(stat.st_size, ((NI) (-2147483647 -1)), ((NI) 2147483647)));
		}
		goto LA47;
		LA50: ;
		{
			NI32 LOC58;
			nimln(100, "memfiles.nim");
			result.mem = NIM_NIL;
			nimln(101, "memfiles.nim");
			result.size = ((NI) 0);
			nimln(175, "memfiles.nim");
			{
				int LOC57;
				if (!!((result.handle == ((NI32) 0)))) goto LA55;
				LOC57 = 0;
				LOC57 = close(result.handle);
			}
			LA55: ;
			nimln(176, "memfiles.nim");
			nimln(205, "memfiles.nim");
			LOC58 = 0;
			LOC58 = oslasterror_117033();
			raiseoserror_117009(LOC58);
		}
		LA47: ;
	}
	LA42: ;
	nimln(207, "memfiles.nim");
	LOC59 = 0;
	nimln(210, "memfiles.nim");
	{
		if (!readonly) goto LA62;
		LOC59 = PROT_READ;
	}
	goto LA60;
	LA62: ;
	{
		LOC59 = (NI32)(PROT_READ | PROT_WRITE);
	}
	LA60: ;
	LOC65 = 0;
	nimln(211, "memfiles.nim");
	{
		if (!readonly) goto LA68;
		LOC65 = (NI32)(MAP_PRIVATE | Mappopulate_109138);
	}
	goto LA66;
	LA68: ;
	{
		LOC65 = (NI32)(MAP_SHARED | Mappopulate_109138);
	}
	LA66: ;
	result.mem = mmap(NIM_NIL, result.size, LOC59, LOC65, result.handle, ((off_t) (offset)));
	nimln(215, "memfiles.nim");
	{
		NI32 LOC80;
		if (!(result.mem == ((void*) (MAP_FAILED)))) goto LA73;
		nimln(100, "memfiles.nim");
		result.mem = NIM_NIL;
		nimln(101, "memfiles.nim");
		result.size = ((NI) 0);
		nimln(175, "memfiles.nim");
		{
			int LOC79;
			if (!!((result.handle == ((NI32) 0)))) goto LA77;
			LOC79 = 0;
			LOC79 = close(result.handle);
		}
		LA77: ;
		nimln(176, "memfiles.nim");
		nimln(216, "memfiles.nim");
		LOC80 = 0;
		LOC80 = oslasterror_117033();
		raiseoserror_117009(LOC80);
	}
	LA73: ;
	popFrame();
	return result;
}
예제 #10
0
N_NIMCALL(tmemfile233204, open_233803)(NimStringDesc* filename, NU8 mode, NI mappedsize, NI offset, NI newfilesize) {
	tmemfile233204 result;
	NIM_BOOL readonly;
	int flags;
	int LOC58;
	int LOC64;
	nimfr("open", "memfiles.nim")
	memset((void*)&result, 0, sizeof(result));
	nimln(82, "memfiles.nim");
	{
		NIM_BOOL LOC3;
		nimln(82, "memfiles.nim");
		nimln(82, "memfiles.nim");
		LOC3 = 0;
		nimln(82, "memfiles.nim");
		LOC3 = (newfilesize == -1);
		if (LOC3) goto LA4;
		nimln(82, "memfiles.nim");
		nimln(82, "memfiles.nim");
		LOC3 = !((mode == ((NU8) 0)));
		LA4: ;
		if (!!(LOC3)) goto LA5;
		nimln(82, "memfiles.nim");
		failedassertimpl_80021(((NimStringDesc*) &TMP2954));
	}
	LA5: ;
	nimln(83, "memfiles.nim");
	nimln(83, "memfiles.nim");
	readonly = (mode == ((NU8) 0));
	nimln(164, "memfiles.nim");
	nimln(164, "memfiles.nim");
	{
		if (!readonly) goto LA9;
		flags = O_RDONLY;
	}
	goto LA7;
	LA9: ;
	{
		flags = O_RDWR;
	}
	LA7: ;
	nimln(166, "memfiles.nim");
	{
		nimln(166, "memfiles.nim");
		nimln(166, "memfiles.nim");
		if (!!((newfilesize == -1))) goto LA14;
		nimln(167, "memfiles.nim");
		nimln(167, "memfiles.nim");
		nimln(167, "memfiles.nim");
		flags = (NI32)((NI32)(flags | O_CREAT) | O_TRUNC);
	}
	LA14: ;
	nimln(169, "memfiles.nim");
	result.Handle = open(filename->data, flags);
	nimln(170, "memfiles.nim");
	{
		NI32 LOC25;
		nimln(170, "memfiles.nim");
		if (!(result.Handle == ((NI32) -1))) goto LA18;
		nimln(86, "memfiles.nim");
		result.Mem = NIM_NIL;
		nimln(87, "memfiles.nim");
		result.Size = 0;
		nimln(161, "memfiles.nim");
		{
			int LOC24;
			nimln(161, "memfiles.nim");
			nimln(161, "memfiles.nim");
			if (!!((result.Handle == ((NI32) 0)))) goto LA22;
			nimln(161, "memfiles.nim");
			nimln(161, "memfiles.nim");
			LOC24 = 0;
			LOC24 = close(result.Handle);
		}
		LA22: ;
		nimln(162, "memfiles.nim");
		nimln(173, "memfiles.nim");
		LOC25 = 0;
		LOC25 = oslasterror_107431();
		oserror_107405(LOC25);
	}
	LA18: ;
	nimln(175, "memfiles.nim");
	{
		nimln(175, "memfiles.nim");
		nimln(175, "memfiles.nim");
		if (!!((newfilesize == -1))) goto LA28;
		nimln(176, "memfiles.nim");
		{
			int LOC32;
			NI32 LOC40;
			nimln(176, "memfiles.nim");
			nimln(176, "memfiles.nim");
			LOC32 = 0;
			LOC32 = ftruncate(result.Handle, ((off_t) (newfilesize)));
			if (!(LOC32 == ((NI32) -1))) goto LA33;
			nimln(86, "memfiles.nim");
			result.Mem = NIM_NIL;
			nimln(87, "memfiles.nim");
			result.Size = 0;
			nimln(161, "memfiles.nim");
			{
				int LOC39;
				nimln(161, "memfiles.nim");
				nimln(161, "memfiles.nim");
				if (!!((result.Handle == ((NI32) 0)))) goto LA37;
				nimln(161, "memfiles.nim");
				nimln(161, "memfiles.nim");
				LOC39 = 0;
				LOC39 = close(result.Handle);
			}
			LA37: ;
			nimln(162, "memfiles.nim");
			nimln(177, "memfiles.nim");
			LOC40 = 0;
			LOC40 = oslasterror_107431();
			oserror_107405(LOC40);
		}
		LA33: ;
	}
	LA28: ;
	nimln(179, "memfiles.nim");
	{
		nimln(179, "memfiles.nim");
		nimln(179, "memfiles.nim");
		if (!!((mappedsize == -1))) goto LA43;
		nimln(180, "memfiles.nim");
		result.Size = mappedsize;
	}
	goto LA41;
	LA43: ;
	{
		struct stat stat;
		memset((void*)&stat, 0, sizeof(stat));
		nimln(183, "memfiles.nim");
		{
			int LOC48;
			nimln(183, "memfiles.nim");
			nimln(183, "memfiles.nim");
			nimln(183, "memfiles.nim");
			LOC48 = 0;
			LOC48 = fstat(result.Handle, &stat);
			if (!!((LOC48 == ((NI32) -1)))) goto LA49;
			nimln(186, "memfiles.nim");
			result.Size = ((NI)chckRange64(stat.st_size, (-2147483647 -1), 2147483647));
		}
		goto LA46;
		LA49: ;
		{
			NI32 LOC57;
			nimln(86, "memfiles.nim");
			result.Mem = NIM_NIL;
			nimln(87, "memfiles.nim");
			result.Size = 0;
			nimln(161, "memfiles.nim");
			{
				int LOC56;
				nimln(161, "memfiles.nim");
				nimln(161, "memfiles.nim");
				if (!!((result.Handle == ((NI32) 0)))) goto LA54;
				nimln(161, "memfiles.nim");
				nimln(161, "memfiles.nim");
				LOC56 = 0;
				LOC56 = close(result.Handle);
			}
			LA54: ;
			nimln(162, "memfiles.nim");
			nimln(188, "memfiles.nim");
			LOC57 = 0;
			LOC57 = oslasterror_107431();
			oserror_107405(LOC57);
		}
		LA46: ;
	}
	LA41: ;
	nimln(190, "memfiles.nim");
	LOC58 = 0;
	nimln(193, "memfiles.nim");
	{
		if (!readonly) goto LA61;
		LOC58 = PROT_READ;
	}
	goto LA59;
	LA61: ;
	{
		nimln(193, "memfiles.nim");
		LOC58 = (NI32)(PROT_READ | PROT_WRITE);
	}
	LA59: ;
	LOC64 = 0;
	nimln(194, "memfiles.nim");
	{
		if (!readonly) goto LA67;
		LOC64 = MAP_PRIVATE;
	}
	goto LA65;
	LA67: ;
	{
		LOC64 = MAP_SHARED;
	}
	LA65: ;
	result.Mem = mmap(NIM_NIL, result.Size, LOC58, LOC64, result.Handle, ((off_t) (offset)));
	nimln(198, "memfiles.nim");
	{
		NI32 LOC79;
		nimln(198, "memfiles.nim");
		if (!(result.Mem == ((void*) (MAP_FAILED)))) goto LA72;
		nimln(86, "memfiles.nim");
		result.Mem = NIM_NIL;
		nimln(87, "memfiles.nim");
		result.Size = 0;
		nimln(161, "memfiles.nim");
		{
			int LOC78;
			nimln(161, "memfiles.nim");
			nimln(161, "memfiles.nim");
			if (!!((result.Handle == ((NI32) 0)))) goto LA76;
			nimln(161, "memfiles.nim");
			nimln(161, "memfiles.nim");
			LOC78 = 0;
			LOC78 = close(result.Handle);
		}
		LA76: ;
		nimln(162, "memfiles.nim");
		nimln(199, "memfiles.nim");
		LOC79 = 0;
		LOC79 = oslasterror_107431();
		oserror_107405(LOC79);
	}
	LA72: ;
	popFrame();
	return result;
}
예제 #11
0
N_NIMCALL(NI, hashtree_224018)(tnode172659* n) {
	NI result;
	nimfr("hashTree", "treetab.nim")
	result = 0;
	nimln(16, "treetab.nim");
	{
		nimln(16, "treetab.nim");
		if (!(n == NIM_NIL)) goto LA3;
		nimln(16, "treetab.nim");
		goto BeforeRet;
	}	LA3: ;
	nimln(17, "treetab.nim");
	nimln(17, "treetab.nim");
	result = ((NI) ((*n).Kind));
	nimln(18, "treetab.nim");
	switch ((*n).Kind) {
	case ((NU8) 1):
	case ((NU8) 23):
	case ((NU8) 4):
	{
	}	break;
	case ((NU8) 2):
	{
		nimln(22, "treetab.nim");
		if (!(((TMP3142[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3143));
		result = HEX21HEX26_110013(result, (*(*n).kindU.S5.Ident).H);
	}	break;
	case ((NU8) 3):
	{
		nimln(24, "treetab.nim");
		if (!(((TMP3144[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3145));
		result = HEX21HEX26_110013(result, (*(*(*n).kindU.S4.Sym).Name).H);
	}	break;
	case ((NU8) 5) ... ((NU8) 15):
	{
		nimln(26, "treetab.nim");
		{
			NIM_BOOL LOC11;
			nimln(26, "treetab.nim");
			LOC11 = 0;
			nimln(702, "system.nim");
			if (!(((TMP3146[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3147));
			LOC11 = ((-2147483647 -1) <= (*n).kindU.S1.Intval);
			if (!(LOC11)) goto LA12;
			nimln(26, "treetab.nim");
			if (!(((TMP3146[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3147));
			LOC11 = ((*n).kindU.S1.Intval <= 2147483647);
			LA12: ;
			if (!LOC11) goto LA13;
			nimln(27, "treetab.nim");
			if (!(((TMP3146[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3147));
			result = HEX21HEX26_110013(result, ((NI)chckRange64((*n).kindU.S1.Intval, (-2147483647 -1), 2147483647)));
		}		LA13: ;
	}	break;
	case ((NU8) 16) ... ((NU8) 18):
	{
		nimln(29, "treetab.nim");
		{
			NIM_BOOL LOC18;
			nimln(29, "treetab.nim");
			LOC18 = 0;
			nimln(702, "system.nim");
			if (!(((TMP3148[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3149));
			LOC18 = (-1.0000000000000000e+06 <= (*n).kindU.S2.Floatval);
			if (!(LOC18)) goto LA19;
			nimln(29, "treetab.nim");
			if (!(((TMP3148[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3149));
			LOC18 = ((*n).kindU.S2.Floatval <= 1.0000000000000000e+06);
			LA19: ;
			if (!LOC18) goto LA20;
			nimln(30, "treetab.nim");
			nimln(30, "treetab.nim");
			if (!(((TMP3148[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3149));
			result = HEX21HEX26_110013(result, float64ToInt32((*n).kindU.S2.Floatval));
		}		LA20: ;
	}	break;
	case ((NU8) 20) ... ((NU8) 22):
	{
		NI LOC23;
		nimln(32, "treetab.nim");
		nimln(32, "treetab.nim");
		if (!(((TMP3150[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3151));
		LOC23 = 0;
		LOC23 = hash_110826((*n).kindU.S3.Strval);
		result = HEX21HEX26_110013(result, LOC23);
	}	break;
	default:
	{
		NI i_224157;
		NI HEX3Atmp_224173;
		NI LOC25;
		NI TMP3154;
		NI res_224175;
		i_224157 = 0;
		HEX3Atmp_224173 = 0;
		nimln(34, "treetab.nim");
		nimln(34, "treetab.nim");
		nimln(34, "treetab.nim");
		LOC25 = 0;
		LOC25 = sonslen_173022(n);
		TMP3154 = subInt(LOC25, 1);
		HEX3Atmp_224173 = (NI32)(TMP3154);
		nimln(1301, "system.nim");
		res_224175 = 0;
		nimln(1302, "system.nim");
		while (1) {
			NI LOC27;
			nimln(1302, "system.nim");
			if (!(res_224175 <= HEX3Atmp_224173)) goto LA26;
			nimln(1301, "system.nim");
			i_224157 = res_224175;
			nimln(35, "treetab.nim");
			nimln(35, "treetab.nim");
			if (((TMP3152[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0)) raiseFieldError(((NimStringDesc*) &TMP3153));
			if ((NU)(i_224157) >= (NU)((*n).kindU.S6.Sons->Sup.len)) raiseIndexError();
			LOC27 = 0;
			LOC27 = hashtree_224018((*n).kindU.S6.Sons->data[i_224157]);
			result = HEX21HEX26_110013(result, LOC27);
			nimln(1304, "system.nim");
			res_224175 = addInt(res_224175, 1);
		} LA26: ;
	}	break;
	}
	BeforeRet: ;	popFrame();
	return result;
}