コード例 #1
0
ファイル: pure_strtabs.c プロジェクト: rbehrends/csources
N_NIMCALL(NimStringDesc*, nstFormat)(NimStringDesc* f, tstringtable113610* t, NU8 flags) {
    NimStringDesc* result;
    NI i;
    nimfr("%", "strtabs.nim")
    result = 0;
    nimln(194, "strtabs.nim");
    result = copyString(((NimStringDesc*) &TMP297));
    nimln(195, "strtabs.nim");
    i = 0;
    nimln(196, "strtabs.nim");
    while (1) {
        nimln(196, "strtabs.nim");
        nimln(196, "strtabs.nim");
        if (!(i < f->Sup.len)) goto LA1;
        nimln(197, "strtabs.nim");
        {
            NI TMP314;
            nimln(197, "strtabs.nim");
            if ((NU)(i) > (NU)(f->Sup.len)) raiseIndexError();
            if (!((NU8)(f->data[i]) == (NU8)(36))) goto LA4;
            nimln(198, "strtabs.nim");
            nimln(198, "strtabs.nim");
            TMP314 = addInt(i, 1);
            if ((NU)((NI32)(TMP314)) > (NU)(f->Sup.len)) raiseIndexError();
            switch (((NU8)(f->data[(NI32)(TMP314)]))) {
            case 36:
            {
                nimln(200, "strtabs.nim");
                result = addChar(result, 36);
                nimln(201, "strtabs.nim");
                i = addInt(i, 2);
            }
            break;
            case 123:
            {
                NI j;
                NI TMP315;
                NI TMP316;
                NI TMP317;
                NimStringDesc* LOC11;
                NimStringDesc* LOC12;
                NI TMP318;
                nimln(203, "strtabs.nim");
                nimln(203, "strtabs.nim");
                TMP315 = addInt(i, 1);
                j = (NI32)(TMP315);
                nimln(204, "strtabs.nim");
                while (1) {
                    NIM_BOOL LOC9;
                    nimln(204, "strtabs.nim");
                    LOC9 = 0;
                    nimln(204, "strtabs.nim");
                    nimln(204, "strtabs.nim");
                    LOC9 = (j < f->Sup.len);
                    if (!(LOC9)) goto LA10;
                    nimln(698, "system.nim");
                    nimln(698, "system.nim");
                    if ((NU)(j) > (NU)(f->Sup.len)) raiseIndexError();
                    LOC9 = !(((NU8)(f->data[j]) == (NU8)(125)));
LA10:
                    ;
                    if (!LOC9) goto LA8;
                    nimln(204, "strtabs.nim");
                    j = addInt(j, 1);
                }
LA8:
                ;
                nimln(205, "strtabs.nim");
                nimln(205, "strtabs.nim");
                nimln(205, "strtabs.nim");
                nimln(205, "strtabs.nim");
                TMP316 = addInt(i, 2);
                nimln(205, "strtabs.nim");
                TMP317 = subInt(j, 1);
                LOC11 = 0;
                LOC11 = copyStrLast(f, (NI32)(TMP316), (NI32)(TMP317));
                LOC12 = 0;
                LOC12 = getvalue_113975(t, flags, LOC11);
                result = resizeString(result, LOC12->Sup.len + 0);
                appendString(result, LOC12);
                nimln(206, "strtabs.nim");
                nimln(206, "strtabs.nim");
                TMP318 = addInt(j, 1);
                i = (NI32)(TMP318);
            }
            break;
            case 97 ... 122:
            case 65 ... 90:
            case 128 ... 255:
            case 95:
            {
                NI j;
                NI TMP319;
                NI TMP320;
                NI TMP321;
                NimStringDesc* LOC17;
                NimStringDesc* LOC18;
                nimln(208, "strtabs.nim");
                nimln(208, "strtabs.nim");
                TMP319 = addInt(i, 1);
                j = (NI32)(TMP319);
                nimln(209, "strtabs.nim");
                while (1) {
                    NIM_BOOL LOC15;
                    nimln(209, "strtabs.nim");
                    LOC15 = 0;
                    nimln(209, "strtabs.nim");
                    nimln(209, "strtabs.nim");
                    LOC15 = (j < f->Sup.len);
                    if (!(LOC15)) goto LA16;
                    nimln(730, "system.nim");
                    if ((NU)(j) > (NU)(f->Sup.len)) raiseIndexError();
                    LOC15 = (((NU8)(f->data[j])) >= ((NU8)(97)) && ((NU8)(f->data[j])) <= ((NU8)(122)) || ((NU8)(f->data[j])) >= ((NU8)(65)) && ((NU8)(f->data[j])) <= ((NU8)(90)) || ((NU8)(f->data[j])) >= ((NU8)(48)) && ((NU8)(f->data[j])) <= ((NU8)(57)) || ((NU8)(f->data[j])) == ((NU8)(95)) || ((NU8)(f->data[j])) >= ((NU8)(128)) && ((NU8)(f->data[j])) <= ((NU8)(255)));
LA16:
                    ;
                    if (!LOC15) goto LA14;
                    nimln(209, "strtabs.nim");
                    j = addInt(j, 1);
                }
LA14:
                ;
                nimln(210, "strtabs.nim");
                nimln(210, "strtabs.nim");
                nimln(210, "strtabs.nim");
                nimln(210, "strtabs.nim");
                TMP320 = addInt(i, 1);
                nimln(210, "strtabs.nim");
                TMP321 = subInt(j, 1);
                LOC17 = 0;
                LOC17 = copyStrLast(f, (NI32)(TMP320), (NI32)(TMP321));
                LOC18 = 0;
                LOC18 = getvalue_113975(t, flags, LOC17);
                result = resizeString(result, LOC18->Sup.len + 0);
                appendString(result, LOC18);
                nimln(211, "strtabs.nim");
                i = j;
            }
            break;
            default:
            {
                nimln(213, "strtabs.nim");
                if ((NU)(i) > (NU)(f->Sup.len)) raiseIndexError();
                result = addChar(result, f->data[i]);
                nimln(214, "strtabs.nim");
                i = addInt(i, 1);
            }
            break;
            }
        }
        goto LA2;
LA4:
        ;
        {
            nimln(216, "strtabs.nim");
            if ((NU)(i) > (NU)(f->Sup.len)) raiseIndexError();
            result = addChar(result, f->data[i]);
            nimln(217, "strtabs.nim");
            i = addInt(i, 1);
        }
LA2:
        ;
    }
LA1:
    ;
    popFrame();
    return result;
}
コード例 #2
0
N_NIMCALL(void, addpathrec_3JEODh79bt1SXwL9cUHI7lhw)(NimStringDesc* dir0, Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0) {
	Stringtableobj_DKRIdH9c9cKI7YpQb9c0wKlEw* packages0;
	NI pos0;
	packages0 = nstnewStringTable(((Stringtablemode_G9c4wVDFIzf0xHmQvxso9a9cQ) 2));
	pos0 = (NI)((dir0 ? dir0->Sup.len : 0) - ((NI) 1));
	{
		if (!(((NU8)(dir0->data[pos0])) == ((NU8)(47)) || ((NU8)(dir0->data[pos0])) == ((NU8)(47)))) goto LA3;
		pos0 += ((NI) 1);
	}
	LA3: ;
	{
		Pathcomponent_9c1SIU9cO1wHcl09b703A9cDrg k_KeWeZHiyBnWbJ7NUxRxrzQ;
		NimStringDesc* p_dm2MlSSgl6QuA4g3oqnzug;
		DIR* d_ZfFno5oDVOm9aHJ009cmNoGQ;
		k_KeWeZHiyBnWbJ7NUxRxrzQ = (Pathcomponent_9c1SIU9cO1wHcl09b703A9cDrg)0;
		p_dm2MlSSgl6QuA4g3oqnzug = (NimStringDesc*)0;
		d_ZfFno5oDVOm9aHJ009cmNoGQ = opendir(dir0->data);
		{
			TSafePoint T_asNQM9aynXXg9ccUABbReyew_2;
			if (!!((d_ZfFno5oDVOm9aHJ009cmNoGQ == NIM_NIL))) goto LA8;
			pushSafePoint(&T_asNQM9aynXXg9ccUABbReyew_2);
			T_asNQM9aynXXg9ccUABbReyew_2.status = setjmp(T_asNQM9aynXXg9ccUABbReyew_2.context);
			if (T_asNQM9aynXXg9ccUABbReyew_2.status == 0) {
				{
					while (1) {
						{
							struct dirent* x_rBzPa0W2aCO6C2N57Y0ovQ;
							NimStringDesc* volatile y_KzqyWmE69cwQ0l9c9bXwsjU9cw;
							x_rBzPa0W2aCO6C2N57Y0ovQ = readdir(d_ZfFno5oDVOm9aHJ009cmNoGQ);
							{
								if (!(x_rBzPa0W2aCO6C2N57Y0ovQ == NIM_NIL)) goto LA16;
								goto LA11;
							}
							LA16: ;
							y_KzqyWmE69cwQ0l9c9bXwsjU9cw = cstrToNimstr(((NCSTRING) ((*x_rBzPa0W2aCO6C2N57Y0ovQ).d_name)));
							{
								NIM_BOOL LOC20;
								struct stat s_k2PyMBHM0O7gW5niqUdMGA;
								Pathcomponent_9c1SIU9cO1wHcl09b703A9cDrg volatile k_KeWeZHiyBnWbJ7NUxRxrzQ_2;
								LOC20 = (NIM_BOOL)0;
								LOC20 = !(eqStrings(y_KzqyWmE69cwQ0l9c9bXwsjU9cw, ((NimStringDesc*) &T_asNQM9aynXXg9ccUABbReyew_3)));
								if (!(LOC20)) goto LA21;
								LOC20 = !(eqStrings(y_KzqyWmE69cwQ0l9c9bXwsjU9cw, ((NimStringDesc*) &T_asNQM9aynXXg9ccUABbReyew_4)));
								LA21: ;
								if (!LOC20) goto LA22;
								memset((void*)(&s_k2PyMBHM0O7gW5niqUdMGA), 0, sizeof(s_k2PyMBHM0O7gW5niqUdMGA));
								{
									if (!NIM_TRUE) goto LA26;
									y_KzqyWmE69cwQ0l9c9bXwsjU9cw = HEX2F_BsTQv9c9anbxt9bKmR0aN1elQ(dir0, y_KzqyWmE69cwQ0l9c9bXwsjU9cw);
								}
								LA26: ;
								k_KeWeZHiyBnWbJ7NUxRxrzQ_2 = ((Pathcomponent_9c1SIU9cO1wHcl09b703A9cDrg) 0);
								{
									if (!!(((*x_rBzPa0W2aCO6C2N57Y0ovQ).d_type == ((NI8) 0)))) goto LA30;
									{
										if (!((*x_rBzPa0W2aCO6C2N57Y0ovQ).d_type == ((NI8) 4))) goto LA34;
										k_KeWeZHiyBnWbJ7NUxRxrzQ_2 = ((Pathcomponent_9c1SIU9cO1wHcl09b703A9cDrg) 2);
									}
									LA34: ;
									{
										if (!((*x_rBzPa0W2aCO6C2N57Y0ovQ).d_type == ((NI8) 10))) goto LA38;
										{
											NIM_BOOL LOC42;
											LOC42 = (NIM_BOOL)0;
											LOC42 = direxists_wf0Ae3eLXw0lSNEFJMV3ognimblecmd(y_KzqyWmE69cwQ0l9c9bXwsjU9cw);
											if (!LOC42) goto LA43;
											k_KeWeZHiyBnWbJ7NUxRxrzQ_2 = ((Pathcomponent_9c1SIU9cO1wHcl09b703A9cDrg) 3);
										}
										goto LA40;
										LA43: ;
										{
											k_KeWeZHiyBnWbJ7NUxRxrzQ_2 = ((Pathcomponent_9c1SIU9cO1wHcl09b703A9cDrg) 1);
										}
										LA40: ;
									}
									LA38: ;
									k_KeWeZHiyBnWbJ7NUxRxrzQ = k_KeWeZHiyBnWbJ7NUxRxrzQ_2;
									p_dm2MlSSgl6QuA4g3oqnzug = y_KzqyWmE69cwQ0l9c9bXwsjU9cw;
									{
										NIM_BOOL LOC48;
										LOC48 = (NIM_BOOL)0;
										LOC48 = (k_KeWeZHiyBnWbJ7NUxRxrzQ == ((Pathcomponent_9c1SIU9cO1wHcl09b703A9cDrg) 2));
										if (!(LOC48)) goto LA49;
										LOC48 = !(((NU8)(p_dm2MlSSgl6QuA4g3oqnzug->data[pos0]) == (NU8)(46)));
										LA49: ;
										if (!LOC48) goto LA50;
										addpackage_mPfTsfux8gBVeyQ8xwDYTQ(packages0, p_dm2MlSSgl6QuA4g3oqnzug);
									}
									LA50: ;
									goto LA13;
								}
								LA30: ;
								{
									int LOC54;
									LOC54 = (int)0;
									LOC54 = lstat(y_KzqyWmE69cwQ0l9c9bXwsjU9cw->data, (&s_k2PyMBHM0O7gW5niqUdMGA));
									if (!(LOC54 < ((NI32) 0))) goto LA55;
									goto LA11;
								}
								LA55: ;
								{
									NIM_BOOL LOC59;
									LOC59 = (NIM_BOOL)0;
									LOC59 = S_ISDIR(s_k2PyMBHM0O7gW5niqUdMGA.st_mode);
									if (!LOC59) goto LA60;
									k_KeWeZHiyBnWbJ7NUxRxrzQ_2 = ((Pathcomponent_9c1SIU9cO1wHcl09b703A9cDrg) 2);
								}
								goto LA57;
								LA60: ;
								{
									NIM_BOOL LOC63;
									LOC63 = (NIM_BOOL)0;
									LOC63 = S_ISLNK(s_k2PyMBHM0O7gW5niqUdMGA.st_mode);
									if (!LOC63) goto LA64;
									k_KeWeZHiyBnWbJ7NUxRxrzQ_2 = getsymlinkfilekind_WoXOp8qmMec1P4MyA3LBKg(y_KzqyWmE69cwQ0l9c9bXwsjU9cw);
								}
								goto LA57;
								LA64: ;
								LA57: ;
								k_KeWeZHiyBnWbJ7NUxRxrzQ = k_KeWeZHiyBnWbJ7NUxRxrzQ_2;
								p_dm2MlSSgl6QuA4g3oqnzug = y_KzqyWmE69cwQ0l9c9bXwsjU9cw;
								{
									NIM_BOOL LOC68;
									LOC68 = (NIM_BOOL)0;
									LOC68 = (k_KeWeZHiyBnWbJ7NUxRxrzQ == ((Pathcomponent_9c1SIU9cO1wHcl09b703A9cDrg) 2));
									if (!(LOC68)) goto LA69;
									LOC68 = !(((NU8)(p_dm2MlSSgl6QuA4g3oqnzug->data[pos0]) == (NU8)(46)));
									LA69: ;
									if (!LOC68) goto LA70;
									addpackage_mPfTsfux8gBVeyQ8xwDYTQ(packages0, p_dm2MlSSgl6QuA4g3oqnzug);
								}
								LA70: ;
							}
							LA22: ;
						} LA13: ;
					}
				} LA11: ;
				popSafePoint();
			}
			else {
				popSafePoint();
			}
			{
				int LOC74;
				LOC74 = (int)0;
				LOC74 = closedir(d_ZfFno5oDVOm9aHJ009cmNoGQ);
			}
			if (T_asNQM9aynXXg9ccUABbReyew_2.status != 0) reraiseException();
		}
		LA8: ;
	}
	{
		NimStringDesc* p_dm2MlSSgl6QuA4g3oqnzug_2;
		p_dm2MlSSgl6QuA4g3oqnzug_2 = (NimStringDesc*)0;
		{
			NimStringDesc* key_Ev9apnmbO2PJJuXUQfg55Zg;
			NimStringDesc* val_ybgqP7AeGJc5RfjZOOmLIA;
			key_Ev9apnmbO2PJJuXUQfg55Zg = (NimStringDesc*)0;
			val_ybgqP7AeGJc5RfjZOOmLIA = (NimStringDesc*)0;
			{
				NI h_0lk9afqbBF9cAQtskh16RYmQ;
				NI HEX3Atmp_xBs1KTOTJ0azvpgP9bD601g;
				NI res_yPiyJP1ZM9abouUrPkQkp8Q;
				h_0lk9afqbBF9cAQtskh16RYmQ = (NI)0;
				HEX3Atmp_xBs1KTOTJ0azvpgP9bD601g = (NI)0;
				HEX3Atmp_xBs1KTOTJ0azvpgP9bD601g = ((*packages0).data ? ((*packages0).data->Sup.len-1) : -1);
				res_yPiyJP1ZM9abouUrPkQkp8Q = ((NI) 0);
				{
					while (1) {
						if (!(res_yPiyJP1ZM9abouUrPkQkp8Q <= HEX3Atmp_xBs1KTOTJ0azvpgP9bD601g)) goto LA79;
						h_0lk9afqbBF9cAQtskh16RYmQ = res_yPiyJP1ZM9abouUrPkQkp8Q;
						{
							NimStringDesc* res_yPiyJP1ZM9abouUrPkQkp8Q_2;
							if (!!(((*packages0).data->data[h_0lk9afqbBF9cAQtskh16RYmQ].Field0 == 0))) goto LA82;
							key_Ev9apnmbO2PJJuXUQfg55Zg = (*packages0).data->data[h_0lk9afqbBF9cAQtskh16RYmQ].Field0;
							val_ybgqP7AeGJc5RfjZOOmLIA = (*packages0).data->data[h_0lk9afqbBF9cAQtskh16RYmQ].Field1;
							{
								if (!eqStrings(val_ybgqP7AeGJc5RfjZOOmLIA, ((NimStringDesc*) &T_asNQM9aynXXg9ccUABbReyew_5))) goto LA86;
								res_yPiyJP1ZM9abouUrPkQkp8Q_2 = key_Ev9apnmbO2PJJuXUQfg55Zg;
							}
							goto LA84;
							LA86: ;
							{
								NimStringDesc* LOC89;
								LOC89 = (NimStringDesc*)0;
								LOC89 = rawNewString(key_Ev9apnmbO2PJJuXUQfg55Zg->Sup.len + val_ybgqP7AeGJc5RfjZOOmLIA->Sup.len + 1);
appendString(LOC89, key_Ev9apnmbO2PJJuXUQfg55Zg);
appendChar(LOC89, 45);
appendString(LOC89, val_ybgqP7AeGJc5RfjZOOmLIA);
								res_yPiyJP1ZM9abouUrPkQkp8Q_2 = LOC89;
							}
							LA84: ;
							p_dm2MlSSgl6QuA4g3oqnzug_2 = res_yPiyJP1ZM9abouUrPkQkp8Q_2;
							addnimblepath_Io0tiMEKgDlbf67BdbC9cWw(p_dm2MlSSgl6QuA4g3oqnzug_2, info0);
						}
						LA82: ;
						res_yPiyJP1ZM9abouUrPkQkp8Q += ((NI) 1);
					} LA79: ;
				}
			}
		}
	}
}
コード例 #3
0
ファイル: magicsys.c プロジェクト: reactormonk/csources
N_NIMCALL(ttype187847*, getsystype_242024)(NU8 kind) {
	ttype187847* result;
	nimfr("getSysType", "magicsys.nim")
	result = 0;
	nimln(62, "magicsys.nim");
	result = gsystypes_242048[(kind)- 0];
	nimln(63, "magicsys.nim");
	{
		nimln(63, "magicsys.nim");
		if (!(result == NIM_NIL)) goto LA3;
		nimln(64, "magicsys.nim");
		switch (kind) {
		case ((NU8) 31):
		{
			nimln(65, "magicsys.nim");
			result = systypefromname_242204(((NimStringDesc*) &TMP3109));
		}
		break;
		case ((NU8) 32):
		{
			nimln(66, "magicsys.nim");
			result = systypefromname_242204(((NimStringDesc*) &TMP3110));
		}
		break;
		case ((NU8) 33):
		{
			nimln(67, "magicsys.nim");
			result = systypefromname_242204(((NimStringDesc*) &TMP3111));
		}
		break;
		case ((NU8) 34):
		{
			nimln(68, "magicsys.nim");
			result = systypefromname_242204(((NimStringDesc*) &TMP3112));
		}
		break;
		case ((NU8) 35):
		{
			nimln(69, "magicsys.nim");
			result = systypefromname_242204(((NimStringDesc*) &TMP3113));
		}
		break;
		case ((NU8) 40):
		{
			nimln(70, "magicsys.nim");
			result = systypefromname_242204(((NimStringDesc*) &TMP3114));
		}
		break;
		case ((NU8) 41):
		{
			nimln(71, "magicsys.nim");
			result = systypefromname_242204(((NimStringDesc*) &TMP3115));
		}
		break;
		case ((NU8) 42):
		{
			nimln(72, "magicsys.nim");
			result = systypefromname_242204(((NimStringDesc*) &TMP3116));
		}
		break;
		case ((NU8) 43):
		{
			nimln(73, "magicsys.nim");
			result = systypefromname_242204(((NimStringDesc*) &TMP3117));
		}
		break;
		case ((NU8) 44):
		{
			nimln(74, "magicsys.nim");
			result = systypefromname_242204(((NimStringDesc*) &TMP3118));
		}
		break;
		case ((NU8) 36):
		{
			nimln(75, "magicsys.nim");
			result = systypefromname_242204(((NimStringDesc*) &TMP3119));
		}
		break;
		case ((NU8) 37):
		{
			nimln(76, "magicsys.nim");
			result = systypefromname_242204(((NimStringDesc*) &TMP3120));
		}
		break;
		case ((NU8) 38):
		{
			nimln(77, "magicsys.nim");
			nimln(77, "magicsys.nim");
			result = systypefromname_242204(((NimStringDesc*) &TMP3121));
			goto BeforeRet;
		}
		break;
		case ((NU8) 39):
		{
			nimln(78, "magicsys.nim");
			result = systypefromname_242204(((NimStringDesc*) &TMP3122));
		}
		break;
		case ((NU8) 1):
		{
			nimln(79, "magicsys.nim");
			result = systypefromname_242204(((NimStringDesc*) &TMP3123));
		}
		break;
		case ((NU8) 2):
		{
			nimln(80, "magicsys.nim");
			result = systypefromname_242204(((NimStringDesc*) &TMP3124));
		}
		break;
		case ((NU8) 28):
		{
			nimln(81, "magicsys.nim");
			result = systypefromname_242204(((NimStringDesc*) &TMP3125));
		}
		break;
		case ((NU8) 29):
		{
			nimln(82, "magicsys.nim");
			result = systypefromname_242204(((NimStringDesc*) &TMP3126));
		}
		break;
		case ((NU8) 26):
		{
			nimln(83, "magicsys.nim");
			result = systypefromname_242204(((NimStringDesc*) &TMP3127));
		}
		break;
		case ((NU8) 5):
		{
			nimln(84, "magicsys.nim");
			result = newsystype_242075(((NU8) 5), ptrsize_142592);
		}
		break;
		default:
		{
			NimStringDesc* LOC26;
			nimln(85, "magicsys.nim");
			nimln(85, "magicsys.nim");
			LOC26 = 0;
			nimln(85, "magicsys.nim");
			LOC26 = rawNewString(reprEnum(kind, (&NTI187240))->Sup.len + 22);
appendString(LOC26, ((NimStringDesc*) &TMP3128));
appendString(LOC26, reprEnum(kind, (&NTI187240)));
			internalerror_165606(LOC26);
		}
		break;
		}
		nimln(86, "magicsys.nim");
		asgnRefNoCycle((void**) &gsystypes_242048[(kind)- 0], result);
	}
	LA3: ;
	nimln(87, "magicsys.nim");
	{
		NimStringDesc* LOC31;
		nimln(87, "magicsys.nim");
		nimln(87, "magicsys.nim");
		if (!!(((*result).Kind == kind))) goto LA29;
		nimln(88, "magicsys.nim");
		nimln(88, "magicsys.nim");
		LOC31 = 0;
		nimln(88, "magicsys.nim");
		nimln(88, "magicsys.nim");
		LOC31 = rawNewString(reprEnum(kind, (&NTI187240))->Sup.len + reprEnum((*result).Kind, (&NTI187240))->Sup.len + 14);
appendString(LOC31, ((NimStringDesc*) &TMP3129));
appendString(LOC31, reprEnum(kind, (&NTI187240)));
appendString(LOC31, ((NimStringDesc*) &TMP3130));
appendString(LOC31, reprEnum((*result).Kind, (&NTI187240)));
		internalerror_165606(LOC31);
	}
	LA29: ;
	nimln(89, "magicsys.nim");
	{
		NimStringDesc* LOC36;
		nimln(89, "magicsys.nim");
		if (!(result == NIM_NIL)) goto LA34;
		nimln(89, "magicsys.nim");
		nimln(89, "magicsys.nim");
		LOC36 = 0;
		nimln(89, "magicsys.nim");
		LOC36 = rawNewString(reprEnum(kind, (&NTI187240))->Sup.len + 16);
appendString(LOC36, ((NimStringDesc*) &TMP3131));
appendString(LOC36, reprEnum(kind, (&NTI187240)));
		internalerror_165606(LOC36);
	}
	LA34: ;
	BeforeRet: ;
	popFrame();
	return result;
}
コード例 #4
0
int main(int argc, char **argv)
{
    char *filename, *docFile, *codeDir, *srcSuffix, *flagFile, *consModule;
    char arg, *optarg, *buildFile, *apiFile, *xmlFile, *pyiFile;
    int optnr, exceptions, tracing, releaseGIL, parts, protHack, docs;
    int timestamp, was_flagFile;
    KwArgs kwArgs;
    FILE *file;
    sipSpec spec;
    stringList *versions, *backstops, *xfeatures, *extracts;

    /* Initialise. */
    sipVersion = SIP_VERSION_STR;
    includeDirList = NULL;
    versions = NULL;
    backstops = NULL;
    xfeatures = NULL;
    buildFile = NULL;
    codeDir = NULL;
    docFile = NULL;
    srcSuffix = NULL;
    flagFile = NULL;
    was_flagFile = FALSE;
    apiFile = NULL;
    xmlFile = NULL;
    pyiFile = NULL;
    consModule = NULL;
    extracts = NULL;
    exceptions = FALSE;
    tracing = FALSE;
    releaseGIL = FALSE;
    parts = 0;
    kwArgs = NoKwArgs;
    protHack = FALSE;
    docs = FALSE;
    timestamp = TRUE;

    /* Parse the command line. */
    optnr = 1;

    while ((arg = parseopt(argc, argv, "hVa:b:B:ec:d:fgI:j:km:op:Prs:t:Twx:X:y:z:", &flagFile, &optnr, &optarg)) != '\0')
        switch (arg)
        {
        case 'o':
            /* Generate docstrings. */
            docs = TRUE;
            break;

        case 'p':
            /* The name of the consolidated module. */
            consModule = optarg;
            break;

        case 'P':
            /* Enable the protected/public hack. */
            protHack = TRUE;
            break;

        case 'a':
            /* Where to generate the API file. */
            apiFile = optarg;
            break;

        case 'm':
            /* Where to generate the XML file. */
            xmlFile = optarg;
            break;

        case 'y':
            /* Where to generate the .pyi file. */
            pyiFile = optarg;
            break;

        case 'b':
            /* Generate a build file. */
            buildFile = optarg;
            break;

        case 'B':
            /* Define a backstop. */
            appendString(&backstops, optarg);
            break;

        case 'e':
            /* Enable exceptions. */
            exceptions = TRUE;
            break;

        case 'g':
            /* Always release the GIL. */
            releaseGIL = TRUE;
            break;

        case 'j':
            /* Generate the code in this number of parts. */
            parts = parseInt(optarg,'j');
            break;

        case 'z':
            /* Read a file for the next flags. */
            if (flagFile != NULL)
                fatal("The -z flag cannot be specified in an argument file\n");

            flagFile = optarg;
            was_flagFile = TRUE;
            break;

        case 'c':
            /* Where to generate the code. */
            codeDir = optarg;
            break;

        case 'd':
            /* Where to generate the documentation. */
            docFile = optarg;
            break;

        case 't':
            /* Which platform or version to generate code for. */
            appendString(&versions,optarg);
            break;

        case 'T':
            /*
             * Disable the timestamp in the header of generated files.  It is
             * now ignored apart from triggering a deprecation warning.
             */
            timestamp = FALSE;
            break;

        case 'x':
            /* Which features are disabled. */
            appendString(&xfeatures,optarg);
            break;

        case 'X':
            /* Which extracts are to be created. */
            appendString(&extracts, optarg);
            break;

        case 'I':
            /* Where to get included files from. */
            appendString(&includeDirList,optarg);
            break;

        case 'r':
            /* Enable tracing. */
            tracing = TRUE;
            break;

        case 's':
            /* The suffix to use for source files. */
            srcSuffix = optarg;
            break;

        case 'w':
            /* Enable warning messages. */
            warnings = TRUE;
            break;

        case 'f':
            /* Warning messages are fatal. */
            warnings_are_fatal = TRUE;
            break;

        case 'k':
            /* Allow keyword arguments in functions and methods. */
            kwArgs = AllKwArgs;
            break;

        case 'h':
            /* Help message. */
            help();
            break;

        case 'V':
            /* Display the version number. */
            version();
            break;

        default:
            usage();
        }

    if (optnr < argc)
    {
        file = NULL;
        filename = argv[optnr++];

        if (optnr < argc)
            usage();
    }
    else
    {
        file = stdin;
        filename = "stdin";
    }

    /* Issue warnings after they (might) have been enabled. */
    if (docFile != NULL)
        warning(DeprecationWarning, "the -d flag is deprecated\n");

    if (kwArgs != NoKwArgs)
        warning(DeprecationWarning, "the -k flag is deprecated\n");

    if (!timestamp)
        warning(DeprecationWarning, "the -T flag is ignored and deprecated\n");

    if (was_flagFile)
        warning(DeprecationWarning, "the -z flag is deprecated\n");

    /* Parse the input file. */
    parse(&spec, file, filename, versions, backstops, xfeatures, kwArgs,
            protHack);

    /* Verify and transform the parse tree. */
    transform(&spec);

    /* Generate code. */
    generateCode(&spec, codeDir, buildFile, docFile, srcSuffix, exceptions,
            tracing, releaseGIL, parts, versions, xfeatures, consModule, docs,
            FALSE);

    /* Generate any extracts. */
    generateExtracts(&spec, extracts);

    /* Generate the API file. */
    if (apiFile != NULL)
        generateAPI(&spec, spec.module, apiFile);

    /* Generate the XML export. */
    if (xmlFile != NULL)
        generateXML(&spec, spec.module,  xmlFile);

    /* Generate the .pyi file. */
    if (pyiFile != NULL)
        generateTypeHints(&spec, spec.module,  pyiFile);

    /* All done. */
    return 0;
}
コード例 #5
0
N_NIMCALL(void, annotatetype_402134)(Tnode191813* n, Ttype191849* t) {
	Ttype191849* x;
	x = skiptypes_195167(t, IL64(211106232576256));
	switch ((*n).kind) {
	case ((NU8) 37):
	{
		{
			if (!((*x).kind == ((NU8) 17))) goto LA4;
			asgnRefNoCycle((void**) (&(*n).typ), t);
			{
				NI i_402167;
				NI HEX3Atmp_402297;
				NI LOC7;
				NI res_402300;
				i_402167 = 0;
				HEX3Atmp_402297 = 0;
				LOC7 = 0;
				LOC7 = len_192097(n);
				HEX3Atmp_402297 = (LOC7 - 1);
				res_402300 = ((NI) 0);
				{
					while (1) {
						Tsym191843* field;
						if (!(res_402300 <= HEX3Atmp_402297)) goto LA9;
						i_402167 = res_402300;
						field = ithfield_402012((*x).n, i_402167);
						{
							NimStringDesc* LOC14;
							NimStringDesc* LOC15;
							if (!field == 0) goto LA12;
							LOC14 = 0;
							LOC15 = 0;
							LOC15 = nimIntToStr(i_402167);
							LOC14 = rawNewString(LOC15->Sup.len + 23);
appendString(LOC14, ((NimStringDesc*) &TMP3286));
appendString(LOC14, LOC15);
							globalerror_165161((*n).info, LOC14);
						}
						goto LA10;
						LA12: ;
						{
							annotatetype_402134((*n).kindU.S6.sons->data[i_402167], (*field).typ);
						}
						LA10: ;
						res_402300 += ((NI) 1);
					} LA9: ;
				}
			}
		}
		goto LA2;
		LA4: ;
		{
			if (!((*x).kind == ((NU8) 18))) goto LA18;
			asgnRefNoCycle((void**) (&(*n).typ), t);
			{
				NI i_402209;
				NI HEX3Atmp_402305;
				NI LOC21;
				NI res_402308;
				i_402209 = 0;
				HEX3Atmp_402305 = 0;
				LOC21 = 0;
				LOC21 = len_192097(n);
				HEX3Atmp_402305 = (LOC21 - 1);
				res_402308 = ((NI) 0);
				{
					while (1) {
						if (!(res_402308 <= HEX3Atmp_402305)) goto LA23;
						i_402209 = res_402308;
						{
							NI LOC26;
							NimStringDesc* LOC29;
							NimStringDesc* LOC30;
							LOC26 = 0;
							LOC26 = len_194377(x);
							if (!(LOC26 <= i_402209)) goto LA27;
							LOC29 = 0;
							LOC30 = 0;
							LOC30 = nimIntToStr(i_402209);
							LOC29 = rawNewString(LOC30->Sup.len + 23);
appendString(LOC29, ((NimStringDesc*) &TMP3286));
appendString(LOC29, LOC30);
							globalerror_165161((*n).info, LOC29);
						}
						goto LA24;
						LA27: ;
						{
							annotatetype_402134((*n).kindU.S6.sons->data[i_402209], (*x).sons->data[i_402209]);
						}
						LA24: ;
						res_402308 += ((NI) 1);
					} LA23: ;
				}
			}
		}
		goto LA2;
		LA18: ;
		{
			NIM_BOOL LOC33;
			LOC33 = 0;
			LOC33 = ((*x).kind == ((NU8) 25));
			if (!(LOC33)) goto LA34;
			LOC33 = ((*x).callconv == ((NU8) 8));
			LA34: ;
			if (!LOC33) goto LA35;
			asgnRefNoCycle((void**) (&(*n).typ), t);
		}
		goto LA2;
		LA35: ;
		{
			globalerror_165161((*n).info, ((NimStringDesc*) &TMP3287));
		}
		LA2: ;
	}
	break;
	case ((NU8) 41):
	{
		{
			if (!((*x).kind == ((NU8) 4) || (*x).kind == ((NU8) 16) || (*x).kind == ((NU8) 24) || (*x).kind == ((NU8) 27))) goto LA41;
			asgnRefNoCycle((void**) (&(*n).typ), t);
			{
				Tnode191813* m_402240;
				m_402240 = 0;
				{
					NI i_402316;
					NI HEX3Atmp_402318;
					NI LOC45;
					NI res_402320;
					i_402316 = 0;
					HEX3Atmp_402318 = 0;
					LOC45 = 0;
					LOC45 = len_192097(n);
					HEX3Atmp_402318 = (LOC45 - 1);
					res_402320 = ((NI) 0);
					{
						while (1) {
							Ttype191849* LOC48;
							if (!(res_402320 <= HEX3Atmp_402318)) goto LA47;
							i_402316 = res_402320;
							m_402240 = (*n).kindU.S6.sons->data[i_402316];
							LOC48 = 0;
							LOC48 = elemtype_221522(x);
							annotatetype_402134(m_402240, LOC48);
							res_402320 += ((NI) 1);
						} LA47: ;
					}
				}
			}
		}
		goto LA39;
		LA41: ;
		{
			globalerror_165161((*n).info, ((NimStringDesc*) &TMP3288));
		}
		LA39: ;
	}
	break;
	case ((NU8) 39):
	{
		{
			if (!((*x).kind == ((NU8) 19))) goto LA53;
			asgnRefNoCycle((void**) (&(*n).typ), t);
			{
				Tnode191813* m_402252;
				m_402252 = 0;
				{
					NI i_402327;
					NI HEX3Atmp_402329;
					NI LOC57;
					NI res_402331;
					i_402327 = 0;
					HEX3Atmp_402329 = 0;
					LOC57 = 0;
					LOC57 = len_192097(n);
					HEX3Atmp_402329 = (LOC57 - 1);
					res_402331 = ((NI) 0);
					{
						while (1) {
							Ttype191849* LOC60;
							if (!(res_402331 <= HEX3Atmp_402329)) goto LA59;
							i_402327 = res_402331;
							m_402252 = (*n).kindU.S6.sons->data[i_402327];
							LOC60 = 0;
							LOC60 = elemtype_221522(x);
							annotatetype_402134(m_402252, LOC60);
							res_402331 += ((NI) 1);
						} LA59: ;
					}
				}
			}
		}
		goto LA51;
		LA53: ;
		{
			globalerror_165161((*n).info, ((NimStringDesc*) &TMP3289));
		}
		LA51: ;
	}
	break;
	case ((NU8) 16) ... ((NU8) 19):
	{
		{
			if (!((*x).kind >= ((NU8) 36) && (*x).kind <= ((NU8) 39))) goto LA65;
			asgnRefNoCycle((void**) (&(*n).typ), t);
		}
		goto LA63;
		LA65: ;
		{
			globalerror_165161((*n).info, ((NimStringDesc*) &TMP3290));
		}
		LA63: ;
	}
	break;
	case ((NU8) 5) ... ((NU8) 15):
	{
		{
			if (!((*x).kind >= ((NU8) 31) && (*x).kind <= ((NU8) 44) || (*x).kind == ((NU8) 1) || (*x).kind == ((NU8) 2) || (*x).kind == ((NU8) 14))) goto LA71;
			asgnRefNoCycle((void**) (&(*n).typ), t);
		}
		goto LA69;
		LA71: ;
		{
			globalerror_165161((*n).info, ((NimStringDesc*) &TMP3291));
		}
		LA69: ;
	}
	break;
	case ((NU8) 20) ... ((NU8) 22):
	{
		{
			if (!((*x).kind == ((NU8) 28) || (*x).kind == ((NU8) 29))) goto LA77;
			asgnRefNoCycle((void**) (&(*n).typ), t);
		}
		goto LA75;
		LA77: ;
		{
			globalerror_165161((*n).info, ((NimStringDesc*) &TMP3292));
		}
		LA75: ;
	}
	break;
	case ((NU8) 23):
	{
		{
			if (!((*x).kind == ((NU8) 26) || (*x).kind == ((NU8) 29) || (*x).kind == ((NU8) 22) || (*x).kind == ((NU8) 21) || (*x).kind == ((NU8) 24) || (*x).kind == ((NU8) 25) || (*x).kind == ((NU8) 28) || (*x).kind == ((NU8) 50))) goto LA83;
			asgnRefNoCycle((void**) (&(*n).typ), t);
		}
		goto LA81;
		LA83: ;
		{
			globalerror_165161((*n).info, ((NimStringDesc*) &TMP3293));
		}
		LA81: ;
	}
	break;
	default:
	{
	}
	break;
	}
}
コード例 #6
0
ファイル: typesrenderer.c プロジェクト: rbehrends/csources
N_NIMCALL(void, renderparamtypes_345423)(TY10865** found, tnode192813* n) {
	nimfr("renderParamTypes", "typesrenderer.nim")
	nimln(81, "typesrenderer.nim");
	switch ((*n).Kind) {
	case ((NU8) 76):
	{
		NI i_345450;
		NI HEX3Atmp_345835;
		NI LOC2;
		NI res_345837;
		i_345450 = 0;
		HEX3Atmp_345835 = 0;
		nimln(83, "typesrenderer.nim");
		nimln(83, "typesrenderer.nim");
		nimln(83, "typesrenderer.nim");
		LOC2 = 0;
		LOC2 = len_193274(n);
		HEX3Atmp_345835 = subInt(LOC2, 1);
		nimln(1458, "system.nim");
		res_345837 = 1;
		nimln(1459, "system.nim");
		while (1) {
			tnode192813* LOC4;
			nimln(1459, "system.nim");
			if (!(res_345837 <= HEX3Atmp_345835)) goto LA3;
			nimln(1458, "system.nim");
			i_345450 = res_345837;
			nimln(83, "typesrenderer.nim");
			nimln(83, "typesrenderer.nim");
			LOC4 = 0;
			LOC4 = HEX5BHEX5D_193711(n, i_345450);
			renderparamtypes_345423(found, LOC4);
			nimln(1461, "system.nim");
			res_345837 = addInt(res_345837, 1);
		} LA3: ;
	}
	break;
	case ((NU8) 35):
	{
		NI typepos;
		NI LOC6;
		NI TMP4796;
		NimStringDesc* typestr;
		tnode192813* LOC11;
		NI i_345647;
		NI HEX3Atmp_345839;
		NI res_345841;
		nimln(86, "typesrenderer.nim");
		nimln(86, "typesrenderer.nim");
		nimln(86, "typesrenderer.nim");
		LOC6 = 0;
		LOC6 = len_193274(n);
		TMP4796 = subInt(LOC6, 2);
		typepos = (NI32)(TMP4796);
		nimln(87, "typesrenderer.nim");
		{
			nimln(87, "typesrenderer.nim");
			nimln(87, "typesrenderer.nim");
			if (!!((0 < typepos))) goto LA9;
			nimln(87, "typesrenderer.nim");
			failedassertimpl_80421(((NimStringDesc*) &TMP4797));
		}
		LA9: ;
		nimln(88, "typesrenderer.nim");
		nimln(88, "typesrenderer.nim");
		LOC11 = 0;
		LOC11 = HEX5BHEX5D_193711(n, typepos);
		typestr = rendertype_343208(LOC11);
		nimln(89, "typesrenderer.nim");
		{
			NIM_BOOL LOC14;
			NI TMP4798;
			tnode192813* LOC16;
			ttype192847* typ;
			NI TMP4799;
			tnode192813* LOC19;
			nimln(89, "typesrenderer.nim");
			LOC14 = 0;
			nimln(89, "typesrenderer.nim");
			nimln(89, "typesrenderer.nim");
			LOC14 = (typestr->Sup.len < 1);
			if (!(LOC14)) goto LA15;
			nimln(89, "typesrenderer.nim");
			nimln(89, "typesrenderer.nim");
			nimln(89, "typesrenderer.nim");
			nimln(89, "typesrenderer.nim");
			TMP4798 = addInt(typepos, 1);
			LOC16 = 0;
			LOC16 = HEX5BHEX5D_193711(n, (NI32)(TMP4798));
			LOC14 = !(((*LOC16).Kind == ((NU8) 1)));
			LA15: ;
			if (!LOC14) goto LA17;
			nimln(91, "typesrenderer.nim");
			nimln(91, "typesrenderer.nim");
			nimln(91, "typesrenderer.nim");
			TMP4799 = addInt(typepos, 1);
			LOC19 = 0;
			LOC19 = HEX5BHEX5D_193711(n, (NI32)(TMP4799));
			typ = (*LOC19).Typ;
			nimln(92, "typesrenderer.nim");
			{
				nimln(92, "typesrenderer.nim");
				nimln(92, "typesrenderer.nim");
				if (!!(typ == 0)) goto LA22;
				nimln(92, "typesrenderer.nim");
				typestr = typetostring_228020(typ, ((NU8) 2));
			}
			LA22: ;
			nimln(93, "typesrenderer.nim");
			{
				nimln(93, "typesrenderer.nim");
				nimln(93, "typesrenderer.nim");
				if (!(typestr->Sup.len < 1)) goto LA26;
				nimln(93, "typesrenderer.nim");
				goto BeforeRet;
			}
			LA26: ;
		}
		LA17: ;
		i_345647 = 0;
		HEX3Atmp_345839 = 0;
		nimln(94, "typesrenderer.nim");
		nimln(94, "typesrenderer.nim");
		HEX3Atmp_345839 = subInt(typepos, 1);
		nimln(1458, "system.nim");
		res_345841 = 0;
		nimln(1459, "system.nim");
		while (1) {
			NimStringDesc* LOC34;
			nimln(1459, "system.nim");
			if (!(res_345841 <= HEX3Atmp_345839)) goto LA28;
			nimln(1458, "system.nim");
			i_345647 = res_345841;
			nimln(95, "typesrenderer.nim");
			{
				tnode192813* LOC31;
				nimln(95, "typesrenderer.nim");
				nimln(95, "typesrenderer.nim");
				nimln(95, "typesrenderer.nim");
				LOC31 = 0;
				LOC31 = HEX5BHEX5D_193711(n, i_345647);
				if (!!(((*LOC31).Kind == ((NU8) 2)))) goto LA32;
				nimln(95, "typesrenderer.nim");
				failedassertimpl_80421(((NimStringDesc*) &TMP4792));
			}
			LA32: ;
			nimln(96, "typesrenderer.nim");
			(*found) = (TY10865*) incrSeq(&((*found))->Sup, sizeof(NimStringDesc*));
			LOC34 = 0;
			LOC34 = (*found)->data[(*found)->Sup.len-1]; (*found)->data[(*found)->Sup.len-1] = copyStringRC1(typestr);
			if (LOC34) nimGCunrefNoCycle(LOC34);
			nimln(1461, "system.nim");
			res_345841 = addInt(res_345841, 1);
		} LA28: ;
	}
	break;
	default:
	{
		NimStringDesc* LOC36;
		nimln(98, "typesrenderer.nim");
		nimln(98, "typesrenderer.nim");
		LOC36 = 0;
		nimln(98, "typesrenderer.nim");
		LOC36 = rawNewString(reprEnum((*n).Kind, (&NTI192023))->Sup.len + 31);
appendString(LOC36, ((NimStringDesc*) &TMP4800));
appendString(LOC36, reprEnum((*n).Kind, (&NTI192023)));
		internalerror_169591((*n).Info, LOC36);
	}
	break;
	}
	BeforeRet: ;
	popFrame();
}
コード例 #7
0
ファイル: typesrenderer.c プロジェクト: rbehrends/csources
N_NIMCALL(NimStringDesc*, rendertype_343208)(tnode192813* n) {
	NimStringDesc* result;
	nimfr("renderType", "typesrenderer.nim")
	result = 0;
	nimln(33, "typesrenderer.nim");
	switch ((*n).Kind) {
	case ((NU8) 2):
	{
		nimln(34, "typesrenderer.nim");
		if (!(((TMP4776[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP4777));
		result = copyString((*(*n).kindU.S5.Ident).S);
	}
	break;
	case ((NU8) 3):
	{
		nimln(35, "typesrenderer.nim");
		if (!(((TMP4779[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP4780));
		result = typetostring_228020((*(*n).kindU.S4.Sym).Typ, ((NU8) 0));
	}
	break;
	case ((NU8) 141):
	{
		tnode192813* LOC9;
		nimln(37, "typesrenderer.nim");
		{
			NI LOC6;
			nimln(37, "typesrenderer.nim");
			nimln(37, "typesrenderer.nim");
			nimln(37, "typesrenderer.nim");
			LOC6 = 0;
			LOC6 = len_193274(n);
			if (!!((LOC6 == 1))) goto LA7;
			nimln(37, "typesrenderer.nim");
			failedassertimpl_80421(((NimStringDesc*) &TMP4783));
		}
		LA7: ;
		nimln(38, "typesrenderer.nim");
		nimln(38, "typesrenderer.nim");
		LOC9 = 0;
		LOC9 = HEX5BHEX5D_193711(n, 0);
		result = rendertype_343208(LOC9);
	}
	break;
	case ((NU8) 139):
	{
		NimStringDesc* LOC16;
		tnode192813* LOC17;
		NimStringDesc* LOC18;
		nimln(40, "typesrenderer.nim");
		{
			NI LOC13;
			nimln(40, "typesrenderer.nim");
			nimln(40, "typesrenderer.nim");
			nimln(40, "typesrenderer.nim");
			LOC13 = 0;
			LOC13 = len_193274(n);
			if (!!((LOC13 == 1))) goto LA14;
			nimln(40, "typesrenderer.nim");
			failedassertimpl_80421(((NimStringDesc*) &TMP4783));
		}
		LA14: ;
		nimln(41, "typesrenderer.nim");
		nimln(41, "typesrenderer.nim");
		LOC16 = 0;
		nimln(41, "typesrenderer.nim");
		nimln(41, "typesrenderer.nim");
		LOC17 = 0;
		LOC17 = HEX5BHEX5D_193711(n, 0);
		LOC18 = 0;
		LOC18 = rendertype_343208(LOC17);
		LOC16 = rawNewString(LOC18->Sup.len + 4);
appendString(LOC16, ((NimStringDesc*) &TMP4784));
appendString(LOC16, LOC18);
		result = LOC16;
	}
	break;
	case ((NU8) 140):
	{
		NimStringDesc* LOC25;
		tnode192813* LOC26;
		NimStringDesc* LOC27;
		nimln(43, "typesrenderer.nim");
		{
			NI LOC22;
			nimln(43, "typesrenderer.nim");
			nimln(43, "typesrenderer.nim");
			nimln(43, "typesrenderer.nim");
			LOC22 = 0;
			LOC22 = len_193274(n);
			if (!!((LOC22 == 1))) goto LA23;
			nimln(43, "typesrenderer.nim");
			failedassertimpl_80421(((NimStringDesc*) &TMP4783));
		}
		LA23: ;
		nimln(44, "typesrenderer.nim");
		nimln(44, "typesrenderer.nim");
		LOC25 = 0;
		nimln(44, "typesrenderer.nim");
		nimln(44, "typesrenderer.nim");
		LOC26 = 0;
		LOC26 = HEX5BHEX5D_193711(n, 0);
		LOC27 = 0;
		LOC27 = rendertype_343208(LOC26);
		LOC25 = rawNewString(LOC27->Sup.len + 4);
appendString(LOC25, ((NimStringDesc*) &TMP4785));
appendString(LOC25, LOC27);
		result = LOC25;
	}
	break;
	case ((NU8) 145):
	{
		tnode192813* params;
		NI i_344423;
		NI HEX3Atmp_345401;
		NI LOC43;
		NI res_345403;
		nimln(46, "typesrenderer.nim");
		{
			NI LOC31;
			nimln(46, "typesrenderer.nim");
			nimln(46, "typesrenderer.nim");
			nimln(46, "typesrenderer.nim");
			LOC31 = 0;
			LOC31 = len_193274(n);
			if (!!((1 < LOC31))) goto LA32;
			nimln(46, "typesrenderer.nim");
			failedassertimpl_80421(((NimStringDesc*) &TMP4786));
		}
		LA32: ;
		nimln(47, "typesrenderer.nim");
		params = HEX5BHEX5D_193711(n, 0);
		nimln(48, "typesrenderer.nim");
		{
			nimln(48, "typesrenderer.nim");
			nimln(48, "typesrenderer.nim");
			if (!!(((*params).Kind == ((NU8) 76)))) goto LA36;
			nimln(48, "typesrenderer.nim");
			failedassertimpl_80421(((NimStringDesc*) &TMP4787));
		}
		LA36: ;
		nimln(49, "typesrenderer.nim");
		{
			NI LOC40;
			nimln(49, "typesrenderer.nim");
			nimln(49, "typesrenderer.nim");
			nimln(49, "typesrenderer.nim");
			LOC40 = 0;
			LOC40 = len_193274(params);
			if (!!((0 < LOC40))) goto LA41;
			nimln(49, "typesrenderer.nim");
			failedassertimpl_80421(((NimStringDesc*) &TMP4788));
		}
		LA41: ;
		nimln(50, "typesrenderer.nim");
		result = copyString(((NimStringDesc*) &TMP4789));
		i_344423 = 0;
		HEX3Atmp_345401 = 0;
		nimln(51, "typesrenderer.nim");
		nimln(51, "typesrenderer.nim");
		nimln(51, "typesrenderer.nim");
		LOC43 = 0;
		LOC43 = len_193274(params);
		HEX3Atmp_345401 = subInt(LOC43, 1);
		nimln(1458, "system.nim");
		res_345403 = 1;
		nimln(1459, "system.nim");
		while (1) {
			NimStringDesc* LOC45;
			tnode192813* LOC46;
			NimStringDesc* LOC47;
			nimln(1459, "system.nim");
			if (!(res_345403 <= HEX3Atmp_345401)) goto LA44;
			nimln(1458, "system.nim");
			i_344423 = res_345403;
			nimln(51, "typesrenderer.nim");
			nimln(51, "typesrenderer.nim");
			LOC45 = 0;
			nimln(51, "typesrenderer.nim");
			nimln(51, "typesrenderer.nim");
			LOC46 = 0;
			LOC46 = HEX5BHEX5D_193711(params, i_344423);
			LOC47 = 0;
			LOC47 = rendertype_343208(LOC46);
			LOC45 = rawNewString(LOC47->Sup.len + 1);
appendString(LOC45, LOC47);
appendChar(LOC45, 44);
			result = resizeString(result, LOC45->Sup.len + 0);
appendString(result, LOC45);
			nimln(1461, "system.nim");
			res_345403 = addInt(res_345403, 1);
		} LA44: ;
		nimln(52, "typesrenderer.nim");
		nimln(52, "typesrenderer.nim");
		nimln(52, "typesrenderer.nim");
		if ((NU)(subInt(result->Sup.len, 1)) > (NU)(result->Sup.len)) raiseIndexError();
		result->data[subInt(result->Sup.len, 1)] = 41;
	}
	break;
	case ((NU8) 35):
	{
		NI typepos;
		NI LOC54;
		NI TMP4791;
		NimStringDesc* typestr;
		tnode192813* LOC55;
		NI i_344624;
		NI HEX3Atmp_345405;
		NI res_345407;
		nimln(54, "typesrenderer.nim");
		{
			NI LOC51;
			nimln(54, "typesrenderer.nim");
			nimln(54, "typesrenderer.nim");
			nimln(54, "typesrenderer.nim");
			LOC51 = 0;
			LOC51 = len_193274(n);
			if (!!((3 <= LOC51))) goto LA52;
			nimln(54, "typesrenderer.nim");
			failedassertimpl_80421(((NimStringDesc*) &TMP4790));
		}
		LA52: ;
		nimln(55, "typesrenderer.nim");
		nimln(55, "typesrenderer.nim");
		nimln(55, "typesrenderer.nim");
		LOC54 = 0;
		LOC54 = len_193274(n);
		TMP4791 = subInt(LOC54, 2);
		typepos = (NI32)(TMP4791);
		nimln(56, "typesrenderer.nim");
		nimln(56, "typesrenderer.nim");
		LOC55 = 0;
		LOC55 = HEX5BHEX5D_193711(n, typepos);
		typestr = rendertype_343208(LOC55);
		nimln(57, "typesrenderer.nim");
		result = copyString(typestr);
		i_344624 = 0;
		HEX3Atmp_345405 = 0;
		nimln(58, "typesrenderer.nim");
		nimln(58, "typesrenderer.nim");
		HEX3Atmp_345405 = subInt(typepos, 1);
		nimln(1458, "system.nim");
		res_345407 = 1;
		nimln(1459, "system.nim");
		while (1) {
			NimStringDesc* LOC62;
			nimln(1459, "system.nim");
			if (!(res_345407 <= HEX3Atmp_345405)) goto LA56;
			nimln(1458, "system.nim");
			i_344624 = res_345407;
			nimln(59, "typesrenderer.nim");
			{
				tnode192813* LOC59;
				nimln(59, "typesrenderer.nim");
				nimln(59, "typesrenderer.nim");
				nimln(59, "typesrenderer.nim");
				LOC59 = 0;
				LOC59 = HEX5BHEX5D_193711(n, i_344624);
				if (!!(((*LOC59).Kind == ((NU8) 2)))) goto LA60;
				nimln(59, "typesrenderer.nim");
				failedassertimpl_80421(((NimStringDesc*) &TMP4792));
			}
			LA60: ;
			nimln(60, "typesrenderer.nim");
			nimln(60, "typesrenderer.nim");
			LOC62 = 0;
			LOC62 = rawNewString(typestr->Sup.len + 1);
appendChar(LOC62, 44);
appendString(LOC62, typestr);
			result = resizeString(result, LOC62->Sup.len + 0);
appendString(result, LOC62);
			nimln(1461, "system.nim");
			res_345407 = addInt(res_345407, 1);
		} LA56: ;
	}
	break;
	case ((NU8) 133):
	{
		NI i_345023;
		NI HEX3Atmp_345409;
		NI LOC69;
		NI res_345411;
		nimln(62, "typesrenderer.nim");
		{
			NI LOC66;
			nimln(62, "typesrenderer.nim");
			nimln(62, "typesrenderer.nim");
			nimln(62, "typesrenderer.nim");
			LOC66 = 0;
			LOC66 = len_193274(n);
			if (!!((0 < LOC66))) goto LA67;
			nimln(62, "typesrenderer.nim");
			failedassertimpl_80421(((NimStringDesc*) &TMP4793));
		}
		LA67: ;
		nimln(63, "typesrenderer.nim");
		result = copyString(((NimStringDesc*) &TMP4794));
		i_345023 = 0;
		HEX3Atmp_345409 = 0;
		nimln(64, "typesrenderer.nim");
		nimln(64, "typesrenderer.nim");
		nimln(64, "typesrenderer.nim");
		LOC69 = 0;
		LOC69 = len_193274(n);
		HEX3Atmp_345409 = subInt(LOC69, 1);
		nimln(1458, "system.nim");
		res_345411 = 0;
		nimln(1459, "system.nim");
		while (1) {
			NimStringDesc* LOC71;
			tnode192813* LOC72;
			NimStringDesc* LOC73;
			nimln(1459, "system.nim");
			if (!(res_345411 <= HEX3Atmp_345409)) goto LA70;
			nimln(1458, "system.nim");
			i_345023 = res_345411;
			nimln(64, "typesrenderer.nim");
			nimln(64, "typesrenderer.nim");
			LOC71 = 0;
			nimln(64, "typesrenderer.nim");
			nimln(64, "typesrenderer.nim");
			LOC72 = 0;
			LOC72 = HEX5BHEX5D_193711(n, i_345023);
			LOC73 = 0;
			LOC73 = rendertype_343208(LOC72);
			LOC71 = rawNewString(LOC73->Sup.len + 1);
appendString(LOC71, LOC73);
appendChar(LOC71, 44);
			result = resizeString(result, LOC71->Sup.len + 0);
appendString(result, LOC71);
			nimln(1461, "system.nim");
			res_345411 = addInt(res_345411, 1);
		} LA70: ;
		nimln(65, "typesrenderer.nim");
		nimln(65, "typesrenderer.nim");
		nimln(65, "typesrenderer.nim");
		if ((NU)(subInt(result->Sup.len, 1)) > (NU)(result->Sup.len)) raiseIndexError();
		result->data[subInt(result->Sup.len, 1)] = 93;
	}
	break;
	case ((NU8) 42):
	{
		NimStringDesc* LOC80;
		tnode192813* LOC81;
		NimStringDesc* LOC82;
		NI i_345222;
		NI HEX3Atmp_345413;
		NI LOC83;
		NI res_345415;
		nimln(67, "typesrenderer.nim");
		{
			NI LOC77;
			nimln(67, "typesrenderer.nim");
			nimln(67, "typesrenderer.nim");
			nimln(67, "typesrenderer.nim");
			LOC77 = 0;
			LOC77 = len_193274(n);
			if (!!((2 <= LOC77))) goto LA78;
			nimln(67, "typesrenderer.nim");
			failedassertimpl_80421(((NimStringDesc*) &TMP4795));
		}
		LA78: ;
		nimln(68, "typesrenderer.nim");
		nimln(68, "typesrenderer.nim");
		LOC80 = 0;
		nimln(68, "typesrenderer.nim");
		nimln(68, "typesrenderer.nim");
		LOC81 = 0;
		LOC81 = HEX5BHEX5D_193711(n, 0);
		LOC82 = 0;
		LOC82 = rendertype_343208(LOC81);
		LOC80 = rawNewString(LOC82->Sup.len + 1);
appendString(LOC80, LOC82);
appendChar(LOC80, 91);
		result = LOC80;
		i_345222 = 0;
		HEX3Atmp_345413 = 0;
		nimln(69, "typesrenderer.nim");
		nimln(69, "typesrenderer.nim");
		nimln(69, "typesrenderer.nim");
		LOC83 = 0;
		LOC83 = len_193274(n);
		HEX3Atmp_345413 = subInt(LOC83, 1);
		nimln(1458, "system.nim");
		res_345415 = 1;
		nimln(1459, "system.nim");
		while (1) {
			NimStringDesc* LOC85;
			tnode192813* LOC86;
			NimStringDesc* LOC87;
			nimln(1459, "system.nim");
			if (!(res_345415 <= HEX3Atmp_345413)) goto LA84;
			nimln(1458, "system.nim");
			i_345222 = res_345415;
			nimln(69, "typesrenderer.nim");
			nimln(69, "typesrenderer.nim");
			LOC85 = 0;
			nimln(69, "typesrenderer.nim");
			nimln(69, "typesrenderer.nim");
			LOC86 = 0;
			LOC86 = HEX5BHEX5D_193711(n, i_345222);
			LOC87 = 0;
			LOC87 = rendertype_343208(LOC86);
			LOC85 = rawNewString(LOC87->Sup.len + 1);
appendString(LOC85, LOC87);
appendChar(LOC85, 44);
			result = resizeString(result, LOC85->Sup.len + 0);
appendString(result, LOC85);
			nimln(1461, "system.nim");
			res_345415 = addInt(res_345415, 1);
		} LA84: ;
		nimln(70, "typesrenderer.nim");
		nimln(70, "typesrenderer.nim");
		nimln(70, "typesrenderer.nim");
		if ((NU)(subInt(result->Sup.len, 1)) > (NU)(result->Sup.len)) raiseIndexError();
		result->data[subInt(result->Sup.len, 1)] = 93;
	}
	break;
	default:
	{
		nimln(71, "typesrenderer.nim");
		result = copyString(((NimStringDesc*) &TMP4773));
	}
	break;
	}
	nimln(72, "typesrenderer.nim");
	{
		nimln(72, "typesrenderer.nim");
		nimln(72, "typesrenderer.nim");
		nimln(72, "typesrenderer.nim");
		if (!!(!(result == 0))) goto LA91;
		nimln(72, "typesrenderer.nim");
		failedassertimpl_80421(((NimStringDesc*) &TMP4782));
	}
	LA91: ;
	popFrame();
	return result;
}
コード例 #8
0
ファイル: compiler_nimconf.c プロジェクト: jlp765/csources
N_NIMCALL(void, parseassignment_185441)(Tlexer180185* L, Ttoken180181* tok) {
	Tlineinfo162338 info;
	NimStringDesc* s;
	NimStringDesc* val;
	NIM_BOOL percent;
	Tident166021* LOC22;
	{
		NIM_BOOL LOC3;
		Tident166021* LOC4;
		Tident166021* LOC6;
		LOC3 = 0;
		LOC4 = 0;
		LOC4 = getident_166463(((NimStringDesc*) &TMP1886));
		LOC3 = ((*(*tok).ident).Sup.id == (*LOC4).Sup.id);
		if (LOC3) goto LA5;
		LOC6 = 0;
		LOC6 = getident_166463(((NimStringDesc*) &TMP1887));
		LOC3 = ((*(*tok).ident).Sup.id == (*LOC6).Sup.id);
		LA5: ;
		if (!LOC3) goto LA7;
		conftok_185379(L, tok);
	}
	LA7: ;
	info = getlineinfo_180218((&(*L)), (&(*tok)));
	checksymbol_185410((&(*L)), (&(*tok)));
	s = toktostr_180323((&(*tok)));
	conftok_185379(L, tok);
	val = copyString(((NimStringDesc*) &TMP1888));
	{
		while (1) {
			NimStringDesc* LOC11;
			if (!((*tok).toktype == ((NU8) 110))) goto LA10;
			s = addChar(s, 46);
			conftok_185379(L, tok);
			checksymbol_185410((&(*L)), (&(*tok)));
			LOC11 = 0;
			LOC11 = toktostr_180323((&(*tok)));
			s = resizeString(s, LOC11->Sup.len + 0);
appendString(s, LOC11);
			conftok_185379(L, tok);
		} LA10: ;
	}
	{
		NimStringDesc* LOC16;
		if (!((*tok).toktype == ((NU8) 95))) goto LA14;
		conftok_185379(L, tok);
		checksymbol_185410((&(*L)), (&(*tok)));
		LOC16 = 0;
		LOC16 = toktostr_180323((&(*tok)));
		val = resizeString(val, LOC16->Sup.len + 0);
appendString(val, LOC16);
		conftok_185379(L, tok);
		{
			if (!((*tok).toktype == ((NU8) 96))) goto LA19;
			conftok_185379(L, tok);
		}
		goto LA17;
		LA19: ;
		{
			lexmessage_180483((&(*L)), ((NU16) 23), ((NimStringDesc*) &TMP1889));
		}
		LA17: ;
		val = addChar(val, 93);
	}
	LA14: ;
	LOC22 = 0;
	LOC22 = getident_166463(((NimStringDesc*) &TMP1890));
	percent = ((*(*tok).ident).Sup.id == (*LOC22).Sup.id);
	{
		NIM_BOOL LOC25;
		NimStringDesc* LOC33;
		LOC25 = 0;
		LOC25 = ((*tok).toktype == ((NU8) 107) || (*tok).toktype == ((NU8) 109));
		if (LOC25) goto LA26;
		LOC25 = percent;
		LA26: ;
		if (!LOC25) goto LA27;
		{
			if (!(((NI) 0) < (val ? val->Sup.len : 0))) goto LA31;
			val = addChar(val, 58);
		}
		LA31: ;
		conftok_185379(L, tok);
		checksymbol_185410((&(*L)), (&(*tok)));
		LOC33 = 0;
		LOC33 = toktostr_180323((&(*tok)));
		val = resizeString(val, LOC33->Sup.len + 0);
appendString(val, LOC33);
		conftok_185379(L, tok);
		{
			while (1) {
				NIM_BOOL LOC36;
				Tident166021* LOC38;
				NimStringDesc* LOC39;
				LOC36 = 0;
				LOC36 = !(((*tok).ident == NIM_NIL));
				if (!(LOC36)) goto LA37;
				LOC38 = 0;
				LOC38 = getident_166463(((NimStringDesc*) &TMP1891));
				LOC36 = ((*(*tok).ident).Sup.id == (*LOC38).Sup.id);
				LA37: ;
				if (!LOC36) goto LA35;
				conftok_185379(L, tok);
				checksymbol_185410((&(*L)), (&(*tok)));
				LOC39 = 0;
				LOC39 = toktostr_180323((&(*tok)));
				val = resizeString(val, LOC39->Sup.len + 0);
appendString(val, LOC39);
				conftok_185379(L, tok);
			} LA35: ;
		}
	}
	LA27: ;
	{
		NimStringDesc* LOC44;
		if (!percent) goto LA42;
		LOC44 = 0;
		LOC44 = nstFormat(val, gconfigvars_153231, 3);
		processswitch_175040(s, LOC44, ((NU8) 2), info);
	}
	goto LA40;
	LA42: ;
	{
		processswitch_175040(s, val, ((NU8) 2), info);
	}
	LA40: ;
}
コード例 #9
0
N_NIMCALL(void, addpathrec_150180)(NimStringDesc* dir, tlineinfo136509 info) {
	tstringtable112610* packages;
	NI pos;
	NI TMP1402;
	NU8 k_150207;
	NimStringDesc* p_150208;
	DIR* d_150219;
	NimStringDesc* p_150217;
	NimStringDesc* key_150229;
	NimStringDesc* val_150231;
	NI h_150233;
	NI HEX3Atmp_150235;
	NI res_150237;
	nimfr("addPathRec", "babelcmd.nim")
	nimln(79, "babelcmd.nim");
	packages = nstnewStringTable(((NU8) 2));
	nimln(80, "babelcmd.nim");
	nimln(80, "babelcmd.nim");
	nimln(80, "babelcmd.nim");
	TMP1402 = subInt(dir->Sup.len, 1);
	pos = (NI32)(TMP1402);
	nimln(81, "babelcmd.nim");
	{
		nimln(730, "system.nim");
		if ((NU)(pos) > (NU)(dir->Sup.len)) raiseIndexError();
		if (!(((NU8)(dir->data[pos])) == ((NU8)(47)) || ((NU8)(dir->data[pos])) == ((NU8)(47)))) goto LA3;
		nimln(81, "babelcmd.nim");
		pos = addInt(pos, 1);
	}	LA3: ;
	k_150207 = 0;
	p_150208 = 0;
	nimln(1227, "os.nim");
	d_150219 = opendir(dir->data);
	nimln(1228, "os.nim");
	{
		int LOC41;
		nimln(698, "system.nim");
		nimln(698, "system.nim");
		if (!!((d_150219 == NIM_NIL))) goto LA7;
		nimln(1229, "os.nim");
		while (1) {
			struct dirent* x_150221;
			NimStringDesc* y_150223;
			nimln(1230, "os.nim");
			x_150221 = readdir(d_150219);
			nimln(1231, "os.nim");
			{
				nimln(1231, "os.nim");
				if (!(x_150221 == NIM_NIL)) goto LA12;
				nimln(1231, "os.nim");
				goto LA9;
			}			LA12: ;
			nimln(1232, "os.nim");
			nimln(1232, "os.nim");
			y_150223 = cstrToNimstr(((NCSTRING) ((*x_150221).d_name)));
			nimln(1233, "os.nim");
			{
				NIM_BOOL LOC16;
				struct stat s_150225;
				NU8 k_150227;
				nimln(1233, "os.nim");
				LOC16 = 0;
				nimln(698, "system.nim");
				nimln(698, "system.nim");
				LOC16 = !(eqStrings(y_150223, ((NimStringDesc*) &TMP1396)));
				if (!(LOC16)) goto LA17;
				nimln(698, "system.nim");
				nimln(698, "system.nim");
				LOC16 = !(eqStrings(y_150223, ((NimStringDesc*) &TMP1397)));
				LA17: ;
				if (!LOC16) goto LA18;
				memset((void*)&s_150225, 0, sizeof(s_150225));
				nimln(1235, "os.nim");
				y_150223 = HEX2F_102067(dir, y_150223);
				nimln(1236, "os.nim");
				{
					int LOC22;
					nimln(1236, "os.nim");
					nimln(1236, "os.nim");
					LOC22 = 0;
					LOC22 = lstat(y_150223->data, &s_150225);
					if (!(LOC22 < ((NI32) 0))) goto LA23;
					nimln(1236, "os.nim");
					goto LA9;
				}				LA23: ;
				nimln(1237, "os.nim");
				k_150227 = ((NU8) 0);
				nimln(1238, "os.nim");
				{
					NIM_BOOL LOC27;
					nimln(1238, "os.nim");
					LOC27 = 0;
					LOC27 = S_ISDIR(s_150225.st_mode);
					if (!LOC27) goto LA28;
					nimln(1238, "os.nim");
					k_150227 = ((NU8) 2);
				}				LA28: ;
				nimln(1239, "os.nim");
				{
					NIM_BOOL LOC32;
					nimln(1239, "os.nim");
					LOC32 = 0;
					LOC32 = S_ISLNK(s_150225.st_mode);
					if (!LOC32) goto LA33;
					nimln(1239, "os.nim");
					nimln(1239, "os.nim");
					k_150227 = addInt(k_150227, 1);
				}				LA33: ;
				nimln(1237, "os.nim");
				k_150207 = k_150227;
				nimln(1232, "os.nim");
				p_150208 = y_150223;
				nimln(83, "babelcmd.nim");
				{
					NIM_BOOL LOC37;
					nimln(83, "babelcmd.nim");
					LOC37 = 0;
					nimln(83, "babelcmd.nim");
					LOC37 = (k_150207 == ((NU8) 2));
					if (!(LOC37)) goto LA38;
					nimln(698, "system.nim");
					nimln(698, "system.nim");
					if ((NU)(pos) > (NU)(p_150208->Sup.len)) raiseIndexError();
					LOC37 = !(((NU8)(p_150208->data[pos]) == (NU8)(46)));
					LA38: ;
					if (!LOC37) goto LA39;
					nimln(84, "babelcmd.nim");
					addpackage_150103(packages, p_150208);				}				LA39: ;
			}			LA18: ;
		} LA9: ;
		nimln(1241, "os.nim");
		nimln(1241, "os.nim");
		LOC41 = 0;
		LOC41 = closedir(d_150219);
	}	LA7: ;
	p_150217 = 0;
	key_150229 = 0;
	val_150231 = 0;
	h_150233 = 0;
	HEX3Atmp_150235 = 0;
	nimln(40, "strtabs.nim");
	nimln(40, "strtabs.nim");
	HEX3Atmp_150235 = ((*packages).Data->Sup.len-1);
	nimln(1308, "system.nim");
	res_150237 = 0;
	nimln(1309, "system.nim");
	while (1) {
		nimln(1309, "system.nim");
		if (!(res_150237 <= HEX3Atmp_150235)) goto LA42;
		nimln(1308, "system.nim");
		h_150233 = res_150237;
		nimln(41, "strtabs.nim");
		{
			NimStringDesc* res_150239;
			nimln(41, "strtabs.nim");
			nimln(41, "strtabs.nim");
			if ((NU)(h_150233) >= (NU)((*packages).Data->Sup.len)) raiseIndexError();
			if (!!((*packages).Data->data[h_150233].Field0 == 0)) goto LA45;
			nimln(42, "strtabs.nim");
			if ((NU)(h_150233) >= (NU)((*packages).Data->Sup.len)) raiseIndexError();
			key_150229 = (*packages).Data->data[h_150233].Field0;
			nimln(42, "strtabs.nim");
			if ((NU)(h_150233) >= (NU)((*packages).Data->Sup.len)) raiseIndexError();
			val_150231 = (*packages).Data->data[h_150233].Field1;
			nimln(58, "babelcmd.nim");
			nimln(58, "babelcmd.nim");
			{
				nimln(58, "babelcmd.nim");
				if (!eqStrings(val_150231, ((NimStringDesc*) &TMP1393))) goto LA49;
				res_150239 = key_150229;
			}			goto LA47;
			LA49: ;
			{
				NimStringDesc* LOC52;
				nimln(58, "babelcmd.nim");
				LOC52 = 0;
				LOC52 = rawNewString(key_150229->Sup.len + val_150231->Sup.len + 1);
appendString(LOC52, key_150229);
appendChar(LOC52, 45);
appendString(LOC52, val_150231);
				res_150239 = LOC52;
			}			LA47: ;
			nimln(58, "babelcmd.nim");
			p_150217 = res_150239;
			nimln(86, "babelcmd.nim");
			addbabelpath_150128(p_150217, info);		}		LA45: ;
		nimln(1311, "system.nim");
		res_150237 = addInt(res_150237, 1);
	} LA42: ;
	popFrame();
}
コード例 #10
0
ファイル: ccgutils.c プロジェクト: reactormonk/csources
N_NIMCALL(trope144007*, makellvmstring_464684)(NimStringDesc* s) {
    trope144007* result;
    NimStringDesc* res;
    NI i_464702;
    NI HEX3Atmp_464714;
    NI TMP6200;
    NI res_464716;
    trope144007* LOC10;
    nimfr("makeLLVMString", "ccgutils.nim")
    result = 0;
    nimln(166, "ccgutils.nim");
    result = NIM_NIL;
    nimln(167, "ccgutils.nim");
    res = copyString(((NimStringDesc*) &TMP6199));
    i_464702 = 0;
    HEX3Atmp_464714 = 0;
    nimln(168, "ccgutils.nim");
    nimln(168, "ccgutils.nim");
    nimln(168, "ccgutils.nim");
    TMP6200 = subInt(s->Sup.len, 1);
    HEX3Atmp_464714 = (NI64)(TMP6200);
    nimln(1450, "system.nim");
    res_464716 = 0;
    nimln(1451, "system.nim");
    while (1) {
        nimln(1451, "system.nim");
        if (!(res_464716 <= HEX3Atmp_464714)) goto LA1;
        nimln(1450, "system.nim");
        i_464702 = res_464716;
        nimln(169, "ccgutils.nim");
        {
            NI TMP6201;
            NI TMP6202;
            trope144007* LOC6;
            nimln(169, "ccgutils.nim");
            nimln(169, "ccgutils.nim");
            nimln(169, "ccgutils.nim");
            TMP6201 = addInt(i_464702, 1);
            TMP6202 = modInt((NI64)(TMP6201), 64);
            if (!(((NI) ((NI64)(TMP6202))) == 0)) goto LA4;
            nimln(170, "ccgutils.nim");
            nimln(170, "ccgutils.nim");
            LOC6 = 0;
            LOC6 = torope_144058(res);
            app_144040(&result, LOC6);
            nimln(171, "ccgutils.nim");
            res = setLengthStr(res, 0);
        }
LA4:
        ;
        nimln(172, "ccgutils.nim");
        if ((NU)(i_464702) > (NU)(s->Sup.len)) raiseIndexError();
        switch (((NU8)(s->data[i_464702]))) {
        case 0 ... 31:
        case 128 ... 255:
        case 34:
        case 92:
        {
            NimStringDesc* LOC8;
            nimln(174, "ccgutils.nim");
            res = addChar(res, 92);
            nimln(175, "ccgutils.nim");
            nimln(175, "ccgutils.nim");
            nimln(175, "ccgutils.nim");
            if ((NU)(i_464702) > (NU)(s->Sup.len)) raiseIndexError();
            LOC8 = 0;
            LOC8 = nsuToHex(((NI64) (((NU8)(s->data[i_464702])))), 2);
            res = resizeString(res, LOC8->Sup.len + 0);
            appendString(res, LOC8);
        }
        break;
        default:
        {
            nimln(176, "ccgutils.nim");
            if ((NU)(i_464702) > (NU)(s->Sup.len)) raiseIndexError();
            res = addChar(res, s->data[i_464702]);
        }
        break;
        }
        nimln(1453, "system.nim");
        res_464716 = addInt(res_464716, 1);
    }
LA1:
    ;
    nimln(177, "ccgutils.nim");
    res = resizeString(res, 4);
    appendString(res, ((NimStringDesc*) &TMP6203));
    nimln(178, "ccgutils.nim");
    nimln(178, "ccgutils.nim");
    LOC10 = 0;
    LOC10 = torope_144058(res);
    app_144040(&result, LOC10);
    popFrame();
    return result;
}
コード例 #11
0
ファイル: compiler_nimconf.c プロジェクト: jlp765/csources
N_NIMCALL(void, parsedirective_185344)(Tlexer180185* L, Ttoken180181* tok) {
	NU16 LOC1;
	ppgettok_185009(L, tok);
	LOC1 = 0;
	LOC1 = whichkeyword_171386((*tok).ident);
	switch (LOC1) {
	case ((NU16) 31):
	{
		NIM_BOOL res;
		condstack_185188 = (TY185169*) setLengthSeq(&(condstack_185188)->Sup, sizeof(NIM_BOOL), ((NI) ((NI)((condstack_185188 ? condstack_185188->Sup.len : 0) + ((NI) 1)))));
		res = evalppif_185147(L, tok);
		condstack_185188->data[(condstack_185188 ? (condstack_185188->Sup.len-1) : -1)] = res;
		{
			if (!!(res)) goto LA5;
			jumptodirective_185222(L, tok, ((NU8) 1));
		}
		LA5: ;
	}
	break;
	case ((NU16) 20):
	{
		doelif_185253(L, tok);
	}
	break;
	case ((NU16) 21):
	{
		doelse_185232(L, tok);
	}
	break;
	case ((NU16) 22):
	{
		doend_185193(L, tok);
	}
	break;
	case ((NU16) 180):
	{
		NimStringDesc* LOC11;
		NimStringDesc* LOC12;
		ppgettok_185009(L, tok);
		LOC11 = 0;
		LOC11 = toktostr_180323((&(*tok)));
		LOC12 = 0;
		LOC12 = nstFormat(LOC11, gconfigvars_153231, 5);
		msgwriteln_163538(LOC12);
		ppgettok_185009(L, tok);
	}
	break;
	default:
	{
		NimStringDesc* LOC14;
		LOC14 = 0;
		LOC14 = nsuNormalize((*(*tok).ident).s);
		if (eqStrings(LOC14, ((NimStringDesc*) &TMP1883))) goto LA15;
		if (eqStrings(LOC14, ((NimStringDesc*) &TMP1884))) goto LA16;
		if (eqStrings(LOC14, ((NimStringDesc*) &TMP1885))) goto LA17;
		goto LA18;
		LA15: ;
		{
			NimStringDesc* key;
			NimStringDesc* LOC21;
			ppgettok_185009(L, tok);
			key = toktostr_180323((&(*tok)));
			ppgettok_185009(L, tok);
			LOC21 = 0;
			LOC21 = toktostr_180323((&(*tok)));
			putenv_121669(key, LOC21);
			ppgettok_185009(L, tok);
		}
		goto LA19;
		LA16: ;
		{
			NimStringDesc* key;
			NimStringDesc* LOC23;
			NimStringDesc* LOC24;
			NimStringDesc* LOC25;
			ppgettok_185009(L, tok);
			key = toktostr_180323((&(*tok)));
			ppgettok_185009(L, tok);
			LOC23 = 0;
			LOC24 = 0;
			LOC24 = toktostr_180323((&(*tok)));
			LOC25 = 0;
			LOC25 = getenv_121644(key);
			LOC23 = rawNewString(LOC24->Sup.len + LOC25->Sup.len + 0);
appendString(LOC23, LOC24);
appendString(LOC23, LOC25);
			putenv_121669(key, LOC23);
			ppgettok_185009(L, tok);
		}
		goto LA19;
		LA17: ;
		{
			NimStringDesc* key;
			NimStringDesc* LOC27;
			NimStringDesc* LOC28;
			NimStringDesc* LOC29;
			ppgettok_185009(L, tok);
			key = toktostr_180323((&(*tok)));
			ppgettok_185009(L, tok);
			LOC27 = 0;
			LOC28 = 0;
			LOC28 = getenv_121644(key);
			LOC29 = 0;
			LOC29 = toktostr_180323((&(*tok)));
			LOC27 = rawNewString(LOC28->Sup.len + LOC29->Sup.len + 0);
appendString(LOC27, LOC28);
appendString(LOC27, LOC29);
			putenv_121669(key, LOC27);
			ppgettok_185009(L, tok);
		}
		goto LA19;
		LA18: ;
		{
			NimStringDesc* LOC31;
			LOC31 = 0;
			LOC31 = toktostr_180323((&(*tok)));
			lexmessage_180483((&(*L)), ((NU16) 30), LOC31);
		}
		LA19: ;
	}
	break;
	}
}
コード例 #12
0
ファイル: highlite.c プロジェクト: ddlsmurf/Nimrod
N_NIMCALL(void, Nimnexttoken_153511)(TY153007* G_153514) {
NI Pos_153521;
NimStringDesc* Id_153709;
NIM_BOOL LOC19;
NIM_BOOL LOC25;
NIM_BOOL LOC26;
NIM_BOOL LOC33;
NIM_BOOL LOC45;
NIM_BOOL LOC51;
NIM_BOOL LOC52;
NIM_BOOL LOC63;
NimStringDesc* LOC67;
NimStringDesc* LOC68;
Pos_153521 = 0;
Pos_153521 = (*G_153514).Pos;
(*G_153514).Start = (*G_153514).Pos;
if (!((*G_153514).State == ((NU8) 10))) goto LA2;
(*G_153514).Kind = ((NU8) 10);
while (1) {
switch (((NU8)((*G_153514).Buf[Pos_153521]))) {
case 92:
(*G_153514).Kind = ((NU8) 13);
Pos_153521 += 1;
switch (((NU8)((*G_153514).Buf[Pos_153521]))) {
case 120:
case 88:
Pos_153521 += 1;
if (!(((NU8)((*G_153514).Buf[Pos_153521])) >= ((NU8)(48)) && ((NU8)((*G_153514).Buf[Pos_153521])) <= ((NU8)(57)) || ((NU8)((*G_153514).Buf[Pos_153521])) >= ((NU8)(65)) && ((NU8)((*G_153514).Buf[Pos_153521])) <= ((NU8)(70)) || ((NU8)((*G_153514).Buf[Pos_153521])) >= ((NU8)(97)) && ((NU8)((*G_153514).Buf[Pos_153521])) <= ((NU8)(102)) || ((NU8)((*G_153514).Buf[Pos_153521])) == ((NU8)(95)))) goto LA6;
Pos_153521 += 1;
LA6: ;
if (!(((NU8)((*G_153514).Buf[Pos_153521])) >= ((NU8)(48)) && ((NU8)((*G_153514).Buf[Pos_153521])) <= ((NU8)(57)) || ((NU8)((*G_153514).Buf[Pos_153521])) >= ((NU8)(65)) && ((NU8)((*G_153514).Buf[Pos_153521])) <= ((NU8)(70)) || ((NU8)((*G_153514).Buf[Pos_153521])) >= ((NU8)(97)) && ((NU8)((*G_153514).Buf[Pos_153521])) <= ((NU8)(102)) || ((NU8)((*G_153514).Buf[Pos_153521])) == ((NU8)(95)))) goto LA9;
Pos_153521 += 1;
LA9: ;
break;
case 48 ... 57:
while (1) {
if (!(((NU8)((*G_153514).Buf[Pos_153521])) >= ((NU8)(48)) && ((NU8)((*G_153514).Buf[Pos_153521])) <= ((NU8)(57)))) goto LA11;
Pos_153521 += 1;
} LA11: ;
break;
case 0:
(*G_153514).State = ((NU8) 1);
break;
default:
Pos_153521 += 1;
break;
}
goto LA4;
break;
case 0:
case 13:
case 10:
(*G_153514).State = ((NU8) 1);
goto LA4;
break;
case 34:
Pos_153521 += 1;
(*G_153514).State = ((NU8) 1);
goto LA4;
break;
default:
Pos_153521 += 1;
break;
}
} LA4: ;
goto LA1;
LA2: ;
switch (((NU8)((*G_153514).Buf[Pos_153521]))) {
case 32:
case 9 ... 13:
(*G_153514).Kind = ((NU8) 2);
while (1) {
if (!(((NU8)((*G_153514).Buf[Pos_153521])) == ((NU8)(32)) || ((NU8)((*G_153514).Buf[Pos_153521])) >= ((NU8)(9)) && ((NU8)((*G_153514).Buf[Pos_153521])) <= ((NU8)(13)))) goto LA12;
Pos_153521 += 1;
} LA12: ;
break;
case 35:
(*G_153514).Kind = ((NU8) 16);
while (1) {
if (!!((((NU8)((*G_153514).Buf[Pos_153521])) == ((NU8)(0)) || ((NU8)((*G_153514).Buf[Pos_153521])) == ((NU8)(10)) || ((NU8)((*G_153514).Buf[Pos_153521])) == ((NU8)(13))))) goto LA13;
Pos_153521 += 1;
} LA13: ;
break;
case 97 ... 122:
case 65 ... 90:
case 95:
case 128 ... 255:
Id_153709 = 0;
Id_153709 = copyString(((NimStringDesc*) &TMP197260));
while (1) {
if (!(((NU8)((*G_153514).Buf[Pos_153521])) >= ((NU8)(48)) && ((NU8)((*G_153514).Buf[Pos_153521])) <= ((NU8)(57)) || ((NU8)((*G_153514).Buf[Pos_153521])) >= ((NU8)(65)) && ((NU8)((*G_153514).Buf[Pos_153521])) <= ((NU8)(90)) || ((NU8)((*G_153514).Buf[Pos_153521])) == ((NU8)(95)) || ((NU8)((*G_153514).Buf[Pos_153521])) >= ((NU8)(97)) && ((NU8)((*G_153514).Buf[Pos_153521])) <= ((NU8)(122)) || ((NU8)((*G_153514).Buf[Pos_153521])) >= ((NU8)(128)) && ((NU8)((*G_153514).Buf[Pos_153521])) <= ((NU8)(248)))) goto LA14;
Id_153709 = addChar(Id_153709, (*G_153514).Buf[Pos_153521]);
Pos_153521 += 1;
} LA14: ;
if (!((NU8)((*G_153514).Buf[Pos_153521]) == (NU8)(34))) goto LA16;
LOC19 = ((NU8)((*G_153514).Buf[(NI64)(Pos_153521 + 1)]) == (NU8)(34));
if (!(LOC19)) goto LA20;
LOC19 = ((NU8)((*G_153514).Buf[(NI64)(Pos_153521 + 2)]) == (NU8)(34));
LA20: ;
if (!LOC19) goto LA21;
Pos_153521 += 3;
(*G_153514).Kind = ((NU8) 11);
while (1) {
switch (((NU8)((*G_153514).Buf[Pos_153521]))) {
case 0:
goto LA23;
break;
case 34:
Pos_153521 += 1;
LOC26 = ((NU8)((*G_153514).Buf[Pos_153521]) == (NU8)(34));
if (!(LOC26)) goto LA27;
LOC26 = ((NU8)((*G_153514).Buf[(NI64)(Pos_153521 + 1)]) == (NU8)(34));
LA27: ;
LOC25 = LOC26;
if (!(LOC25)) goto LA28;
LOC25 = !(((NU8)((*G_153514).Buf[(NI64)(Pos_153521 + 2)]) == (NU8)(34)));
LA28: ;
if (!LOC25) goto LA29;
Pos_153521 += 2;
goto LA23;
LA29: ;
break;
default:
Pos_153521 += 1;
break;
}
} LA23: ;
goto LA18;
LA21: ;
(*G_153514).Kind = ((NU8) 23);
Pos_153521 += 1;
while (1) {
if (!!((((NU8)((*G_153514).Buf[Pos_153521])) == ((NU8)(0)) || ((NU8)((*G_153514).Buf[Pos_153521])) == ((NU8)(10)) || ((NU8)((*G_153514).Buf[Pos_153521])) == ((NU8)(13))))) goto LA31;
LOC33 = ((NU8)((*G_153514).Buf[Pos_153521]) == (NU8)(34));
if (!(LOC33)) goto LA34;
LOC33 = !(((NU8)((*G_153514).Buf[(NI64)(Pos_153521 + 1)]) == (NU8)(34)));
LA34: ;
if (!LOC33) goto LA35;
goto LA31;
LA35: ;
Pos_153521 += 1;
} LA31: ;
if (!((NU8)((*G_153514).Buf[Pos_153521]) == (NU8)(34))) goto LA38;
Pos_153521 += 1;
LA38: ;
LA18: ;
goto LA15;
LA16: ;
(*G_153514).Kind = Nimgetkeyword_153201(Id_153709);
LA15: ;
break;
case 48:
Pos_153521 += 1;
switch (((NU8)((*G_153514).Buf[Pos_153521]))) {
case 98:
case 66:
Pos_153521 += 1;
while (1) {
if (!(((NU8)((*G_153514).Buf[Pos_153521])) >= ((NU8)(48)) && ((NU8)((*G_153514).Buf[Pos_153521])) <= ((NU8)(49)) || ((NU8)((*G_153514).Buf[Pos_153521])) == ((NU8)(95)))) goto LA40;
Pos_153521 += 1;
} LA40: ;
Pos_153521 = Nimnumberpostfix_153230(G_153514, Pos_153521);
break;
case 120:
case 88:
Pos_153521 += 1;
while (1) {
if (!(((NU8)((*G_153514).Buf[Pos_153521])) >= ((NU8)(48)) && ((NU8)((*G_153514).Buf[Pos_153521])) <= ((NU8)(57)) || ((NU8)((*G_153514).Buf[Pos_153521])) >= ((NU8)(65)) && ((NU8)((*G_153514).Buf[Pos_153521])) <= ((NU8)(70)) || ((NU8)((*G_153514).Buf[Pos_153521])) >= ((NU8)(97)) && ((NU8)((*G_153514).Buf[Pos_153521])) <= ((NU8)(102)) || ((NU8)((*G_153514).Buf[Pos_153521])) == ((NU8)(95)))) goto LA41;
Pos_153521 += 1;
} LA41: ;
Pos_153521 = Nimnumberpostfix_153230(G_153514, Pos_153521);
break;
case 111:
case 79:
Pos_153521 += 1;
while (1) {
if (!(((NU8)((*G_153514).Buf[Pos_153521])) >= ((NU8)(48)) && ((NU8)((*G_153514).Buf[Pos_153521])) <= ((NU8)(55)) || ((NU8)((*G_153514).Buf[Pos_153521])) == ((NU8)(95)))) goto LA42;
Pos_153521 += 1;
} LA42: ;
Pos_153521 = Nimnumberpostfix_153230(G_153514, Pos_153521);
break;
default:
Pos_153521 = Nimnumber_153371(G_153514, Pos_153521);
break;
}
break;
case 49 ... 57:
Pos_153521 = Nimnumber_153371(G_153514, Pos_153521);
break;
case 39:
Pos_153521 += 1;
(*G_153514).Kind = ((NU8) 12);
while (1) {
switch (((NU8)((*G_153514).Buf[Pos_153521]))) {
case 0:
case 13:
case 10:
goto LA43;
break;
case 39:
Pos_153521 += 1;
goto LA43;
break;
case 92:
Pos_153521 += 2;
break;
default:
Pos_153521 += 1;
break;
}
} LA43: ;
break;
case 34:
Pos_153521 += 1;
LOC45 = ((NU8)((*G_153514).Buf[Pos_153521]) == (NU8)(34));
if (!(LOC45)) goto LA46;
LOC45 = ((NU8)((*G_153514).Buf[(NI64)(Pos_153521 + 1)]) == (NU8)(34));
LA46: ;
if (!LOC45) goto LA47;
Pos_153521 += 2;
(*G_153514).Kind = ((NU8) 11);
while (1) {
switch (((NU8)((*G_153514).Buf[Pos_153521]))) {
case 0:
goto LA49;
break;
case 34:
Pos_153521 += 1;
LOC52 = ((NU8)((*G_153514).Buf[Pos_153521]) == (NU8)(34));
if (!(LOC52)) goto LA53;
LOC52 = ((NU8)((*G_153514).Buf[(NI64)(Pos_153521 + 1)]) == (NU8)(34));
LA53: ;
LOC51 = LOC52;
if (!(LOC51)) goto LA54;
LOC51 = !(((NU8)((*G_153514).Buf[(NI64)(Pos_153521 + 2)]) == (NU8)(34)));
LA54: ;
if (!LOC51) goto LA55;
Pos_153521 += 2;
goto LA49;
LA55: ;
break;
default:
Pos_153521 += 1;
break;
}
} LA49: ;
goto LA44;
LA47: ;
(*G_153514).Kind = ((NU8) 10);
while (1) {
switch (((NU8)((*G_153514).Buf[Pos_153521]))) {
case 0:
case 13:
case 10:
goto LA57;
break;
case 34:
Pos_153521 += 1;
goto LA57;
break;
case 92:
(*G_153514).State = (*G_153514).Kind;
goto LA57;
break;
default:
Pos_153521 += 1;
break;
}
} LA57: ;
LA44: ;
break;
case 40:
case 41:
case 91:
case 93:
case 123:
case 125:
case 96:
case 58:
case 44:
case 59:
Pos_153521 += 1;
(*G_153514).Kind = ((NU8) 15);
break;
case 0:
(*G_153514).Kind = ((NU8) 0);
break;
default:
if (!((TMP197261[((NU8)((*G_153514).Buf[Pos_153521]))/8] &(1<<(((NU8)((*G_153514).Buf[Pos_153521]))%8)))!=0)) goto LA59;
(*G_153514).Kind = ((NU8) 14);
while (1) {
if (!((TMP197261[((NU8)((*G_153514).Buf[Pos_153521]))/8] &(1<<(((NU8)((*G_153514).Buf[Pos_153521]))%8)))!=0)) goto LA61;
Pos_153521 += 1;
} LA61: ;
goto LA58;
LA59: ;
Pos_153521 += 1;
(*G_153514).Kind = ((NU8) 1);
LA58: ;
break;
}
LA1: ;
(*G_153514).Length = (NI64)(Pos_153521 - (*G_153514).Pos);
LOC63 = !(((*G_153514).Kind == ((NU8) 0)));
if (!(LOC63)) goto LA64;
LOC63 = ((*G_153514).Length <= 0);
LA64: ;
if (!LOC63) goto LA65;
LOC67 = 0;
LOC68 = 0;
LOC68 = cstrToNimstr((*G_153514).Buf);
LOC67 = rawNewString(LOC68->Sup.len + 14);
appendString(LOC67, ((NimStringDesc*) &TMP197262));
appendString(LOC67, LOC68);
Internalerror_48163(LOC67);
LA65: ;
(*G_153514).Pos = Pos_153521;
}
コード例 #13
0
ファイル: pure_strtabs.c プロジェクト: rbehrends/csources
N_NIMCALL(NimStringDesc*, getvalue_113975)(tstringtable113610* t, NU8 flags, NimStringDesc* key) {
    NimStringDesc* result;
    nimfr("getValue", "strtabs.nim")
    result = 0;
    nimln(150, "strtabs.nim");
    {
        NIM_BOOL LOC3;
        nimln(150, "strtabs.nim");
        LOC3 = 0;
        LOC3 = nsthasKey(t, key);
        if (!LOC3) goto LA4;
        nimln(150, "strtabs.nim");
        nimln(150, "strtabs.nim");
        result = nstGet(t, key);
        goto BeforeRet;
    }
LA4:
    ;
    nimln(152, "strtabs.nim");
    {
        nimln(730, "system.nim");
        if (!((flags &(1<<((((NU8) 0))&7)))!=0)) goto LA8;
        nimln(152, "strtabs.nim");
        nimln(152, "strtabs.nim");
        result = getenv_104824(key);
    }
    goto LA6;
LA8:
    ;
    {
        nimln(153, "strtabs.nim");
        result = copyString(((NimStringDesc*) &TMP297));
    }
LA6:
    ;
    nimln(154, "strtabs.nim");
    {
        nimln(154, "strtabs.nim");
        nimln(154, "strtabs.nim");
        if (!(result->Sup.len == 0)) goto LA13;
        nimln(155, "strtabs.nim");
        {
            NimStringDesc* LOC19;
            nimln(730, "system.nim");
            if (!((flags &(1<<((((NU8) 2))&7)))!=0)) goto LA17;
            nimln(155, "strtabs.nim");
            nimln(155, "strtabs.nim");
            LOC19 = 0;
            LOC19 = rawNewString(key->Sup.len + 1);
            appendChar(LOC19, 36);
            appendString(LOC19, key);
            result = LOC19;
        }
        goto LA15;
LA17:
        ;
        {
            nimln(156, "strtabs.nim");
            nimln(730, "system.nim");
            if (!!(((flags &(1<<((((NU8) 1))&7)))!=0))) goto LA21;
            nimln(156, "strtabs.nim");
            raiseformatexception_113955(key);
        }
        goto LA15;
LA21:
        ;
LA15:
        ;
    }
LA13:
    ;
BeforeRet:
    ;
    popFrame();
    return result;
}
コード例 #14
0
ファイル: pure_strtabs.c プロジェクト: rbehrends/csources
N_NIMCALL(NimStringDesc*, nstDollar)(tstringtable113610* t) {
    NimStringDesc* result;
    nimfr("$", "strtabs.nim")
    result = 0;
    nimln(221, "strtabs.nim");
    {
        NI LOC3;
        nimln(221, "strtabs.nim");
        nimln(221, "strtabs.nim");
        LOC3 = 0;
        LOC3 = nstlen(t);
        if (!(LOC3 == 0)) goto LA4;
        nimln(222, "strtabs.nim");
        result = copyString(((NimStringDesc*) &TMP322));
    }
    goto LA1;
LA4:
    ;
    {
        NimStringDesc* key_114194;
        NimStringDesc* val_114195;
        NI h_114198;
        NI HEX3Atmp_114200;
        NI res_114202;
        nimln(224, "strtabs.nim");
        result = copyString(((NimStringDesc*) &TMP323));
        key_114194 = 0;
        val_114195 = 0;
        h_114198 = 0;
        HEX3Atmp_114200 = 0;
        nimln(40, "strtabs.nim");
        nimln(40, "strtabs.nim");
        HEX3Atmp_114200 = ((*t).Data->Sup.len-1);
        nimln(1308, "system.nim");
        res_114202 = 0;
        nimln(1309, "system.nim");
        while (1) {
            nimln(1309, "system.nim");
            if (!(res_114202 <= HEX3Atmp_114200)) goto LA7;
            nimln(1308, "system.nim");
            h_114198 = res_114202;
            nimln(41, "strtabs.nim");
            {
                nimln(41, "strtabs.nim");
                nimln(41, "strtabs.nim");
                if ((NU)(h_114198) >= (NU)((*t).Data->Sup.len)) raiseIndexError();
                if (!!((*t).Data->data[h_114198].Field0 == 0)) goto LA10;
                nimln(42, "strtabs.nim");
                if ((NU)(h_114198) >= (NU)((*t).Data->Sup.len)) raiseIndexError();
                key_114194 = (*t).Data->data[h_114198].Field0;
                nimln(42, "strtabs.nim");
                if ((NU)(h_114198) >= (NU)((*t).Data->Sup.len)) raiseIndexError();
                val_114195 = (*t).Data->data[h_114198].Field1;
                nimln(226, "strtabs.nim");
                {
                    nimln(706, "system.nim");
                    nimln(226, "strtabs.nim");
                    if (!(1 < result->Sup.len)) goto LA14;
                    nimln(226, "strtabs.nim");
                    result = resizeString(result, 2);
                    appendString(result, ((NimStringDesc*) &TMP324));
                }
LA14:
                ;
                nimln(227, "strtabs.nim");
                result = resizeString(result, key_114194->Sup.len + 0);
                appendString(result, key_114194);
                nimln(228, "strtabs.nim");
                result = resizeString(result, 2);
                appendString(result, ((NimStringDesc*) &TMP325));
                nimln(229, "strtabs.nim");
                result = resizeString(result, val_114195->Sup.len + 0);
                appendString(result, val_114195);
            }
LA10:
            ;
            nimln(1311, "system.nim");
            res_114202 = addInt(res_114202, 1);
        }
LA7:
        ;
        nimln(230, "strtabs.nim");
        result = resizeString(result, 1);
        appendString(result, ((NimStringDesc*) &TMP326));
    }
LA1:
    ;
    popFrame();
    return result;
}
コード例 #15
0
N_NIMCALL(void, npcnext)(tcfgparser156014* c, tcfgevent156008* Result) {
	switch ((*c).Tok.Kind) {
	case ((NU8) 1):
	{
		(*Result).Kind = ((NU8) 0);
	}
	break;
	case ((NU8) 7):
	{
		rawgettok_156048(c, &(*c).Tok);
		chckNil((void*)Result);
		genericReset((void*)Result, (&NTI156008));
		(*Result).Sup.m_type = (&NTI156008);
		getkeyvalpair_156899(c, ((NU8) 3), Result);
	}
	break;
	case ((NU8) 2):
	{
		chckNil((void*)Result);
		genericReset((void*)Result, (&NTI156008));
		(*Result).Sup.m_type = (&NTI156008);
		getkeyvalpair_156899(c, ((NU8) 2), Result);
	}
	break;
	case ((NU8) 5):
	{
		rawgettok_156048(c, &(*c).Tok);
		{
			if (!((*c).Tok.Kind == ((NU8) 2))) goto LA7;
			(*Result).Kind = ((NU8) 1);
			unsureAsgnRef((void**) &(*Result).kindU.S2.Section, copyString((*c).Tok.Literal));
		}
		goto LA5;
		LA7: ;
		{
			NimStringDesc* LOC10;
			(*Result).Kind = ((NU8) 4);
			LOC10 = 0;
			LOC10 = rawNewString((*c).Tok.Literal->Sup.len + 28);
appendString(LOC10, ((NimStringDesc*) &TMP138));
appendString(LOC10, (*c).Tok.Literal);
			unsureAsgnRef((void**) &(*Result).kindU.S4.Msg, npcerrorStr(&(*c), LOC10));
		}
		LA5: ;
		rawgettok_156048(c, &(*c).Tok);
		{
			if (!((*c).Tok.Kind == ((NU8) 6))) goto LA13;
			rawgettok_156048(c, &(*c).Tok);
		}
		goto LA11;
		LA13: ;
		{
			NimStringDesc* LOC16;
			genericReset((void*)Result, (&NTI156008));
			(*Result).Kind = ((NU8) 4);
			LOC16 = 0;
			LOC16 = rawNewString((*c).Tok.Literal->Sup.len + 25);
appendString(LOC16, ((NimStringDesc*) &TMP140));
appendString(LOC16, (*c).Tok.Literal);
			unsureAsgnRef((void**) &(*Result).kindU.S4.Msg, npcerrorStr(&(*c), LOC16));
		}
		LA11: ;
	}
	break;
	case ((NU8) 0):
	case ((NU8) 3):
	case ((NU8) 4):
	case ((NU8) 6):
	{
		NimStringDesc* LOC18;
		(*Result).Kind = ((NU8) 4);
		LOC18 = 0;
		LOC18 = rawNewString((*c).Tok.Literal->Sup.len + 15);
appendString(LOC18, ((NimStringDesc*) &TMP141));
appendString(LOC18, (*c).Tok.Literal);
		unsureAsgnRef((void**) &(*Result).kindU.S4.Msg, npcerrorStr(&(*c), LOC18));
		rawgettok_156048(c, &(*c).Tok);
	}
	break;
	}
}
コード例 #16
0
ファイル: compiler_nimblecmd.c プロジェクト: jlp765/csources
N_NIMCALL(void, addpathrec_172266)(NimStringDesc* dir, Tlineinfo162338 info) {
	Stringtableobj133012* packages;
	NI pos;
	packages = nstnewStringTable(((NU8) 2));
	pos = (NI)((dir ? dir->Sup.len : 0) - ((NI) 1));
	{
		if (!(((NU8)(dir->data[pos])) == ((NU8)(47)) || ((NU8)(dir->data[pos])) == ((NU8)(47)))) goto LA3;
		pos += ((NI) 1);
	}
	LA3: ;
	{
		NU8 k_172292;
		NimStringDesc* p_172293;
		DIR* d_172308;
		k_172292 = 0;
		p_172293 = 0;
		d_172308 = opendir(dir->data);
		{
			int LOC62;
			if (!!((d_172308 == NIM_NIL))) goto LA8;
			{
				while (1) {
					{
						struct dirent* x_172310;
						NimStringDesc* y_172312;
						x_172310 = readdir(d_172308);
						{
							if (!(x_172310 == NIM_NIL)) goto LA15;
							goto LA10;
						}
						LA15: ;
						y_172312 = cstrToNimstr(((NCSTRING) ((*x_172310).d_name)));
						{
							NIM_BOOL LOC19;
							struct stat s_172314;
							NU8 k_172316;
							LOC19 = 0;
							LOC19 = !(eqStrings(y_172312, ((NimStringDesc*) &TMP1658)));
							if (!(LOC19)) goto LA20;
							LOC19 = !(eqStrings(y_172312, ((NimStringDesc*) &TMP1659)));
							LA20: ;
							if (!LOC19) goto LA21;
							memset((void*)(&s_172314), 0, sizeof(s_172314));
							y_172312 = HEX2F_118292(dir, y_172312);
							k_172316 = ((NU8) 0);
							{
								if (!!(((*x_172310).d_type == ((NI8) 0)))) goto LA25;
								{
									if (!((*x_172310).d_type == ((NI8) 4))) goto LA29;
									k_172316 = ((NU8) 2);
								}
								LA29: ;
								{
									if (!((*x_172310).d_type == ((NI8) 10))) goto LA33;
									k_172316 = (NU8)(k_172316 + ((NI) 1));
								}
								LA33: ;
								k_172292 = k_172316;
								p_172293 = y_172312;
								{
									NIM_BOOL LOC37;
									LOC37 = 0;
									LOC37 = (k_172292 == ((NU8) 2));
									if (!(LOC37)) goto LA38;
									LOC37 = !(((NU8)(p_172293->data[pos]) == (NU8)(46)));
									LA38: ;
									if (!LOC37) goto LA39;
									addpackage_172126(packages, p_172293);
								}
								LA39: ;
								goto LA12;
							}
							LA25: ;
							{
								int LOC43;
								LOC43 = 0;
								LOC43 = lstat(y_172312->data, (&s_172314));
								if (!(LOC43 < ((NI32) 0))) goto LA44;
								goto LA10;
							}
							LA44: ;
							{
								NIM_BOOL LOC48;
								LOC48 = 0;
								LOC48 = S_ISDIR(s_172314.st_mode);
								if (!LOC48) goto LA49;
								k_172316 = ((NU8) 2);
							}
							LA49: ;
							{
								NIM_BOOL LOC53;
								LOC53 = 0;
								LOC53 = S_ISLNK(s_172314.st_mode);
								if (!LOC53) goto LA54;
								k_172316 = (NU8)(k_172316 + ((NI) 1));
							}
							LA54: ;
							k_172292 = k_172316;
							p_172293 = y_172312;
							{
								NIM_BOOL LOC58;
								LOC58 = 0;
								LOC58 = (k_172292 == ((NU8) 2));
								if (!(LOC58)) goto LA59;
								LOC58 = !(((NU8)(p_172293->data[pos]) == (NU8)(46)));
								LA59: ;
								if (!LOC58) goto LA60;
								addpackage_172126(packages, p_172293);
							}
							LA60: ;
						}
						LA21: ;
					} LA12: ;
				}
			} LA10: ;
			LOC62 = 0;
			LOC62 = closedir(d_172308);
		}
		LA8: ;
	}
	{
		NimStringDesc* p_172303;
		p_172303 = 0;
		{
			NimStringDesc* key_172322;
			NimStringDesc* val_172324;
			key_172322 = 0;
			val_172324 = 0;
			{
				NI h_172326;
				NI HEX3Atmp_172328;
				NI res_172330;
				h_172326 = 0;
				HEX3Atmp_172328 = 0;
				HEX3Atmp_172328 = ((*packages).data ? ((*packages).data->Sup.len-1) : -1);
				res_172330 = ((NI) 0);
				{
					while (1) {
						if (!(res_172330 <= HEX3Atmp_172328)) goto LA67;
						h_172326 = res_172330;
						{
							NimStringDesc* res_172334;
							if (!!((*packages).data->data[h_172326].Field0 == 0)) goto LA70;
							key_172322 = (*packages).data->data[h_172326].Field0;
							val_172324 = (*packages).data->data[h_172326].Field1;
							{
								if (!eqStrings(val_172324, ((NimStringDesc*) &TMP1660))) goto LA74;
								res_172334 = key_172322;
							}
							goto LA72;
							LA74: ;
							{
								NimStringDesc* LOC77;
								LOC77 = 0;
								LOC77 = rawNewString(key_172322->Sup.len + val_172324->Sup.len + 1);
appendString(LOC77, key_172322);
appendChar(LOC77, 45);
appendString(LOC77, val_172324);
								res_172334 = LOC77;
							}
							LA72: ;
							p_172303 = res_172334;
							addnimblepath_172175(p_172303, info);
						}
						LA70: ;
						res_172330 += ((NI) 1);
					} LA67: ;
				}
			}
		}
	}
}
コード例 #17
0
N_NIMCALL(NI, llreadfromstdin_162501)(tllstream162204* s, void* buf, NI buflen) {
	NI result;
	NimStringDesc* LOC1;
	NimStringDesc* line;
	NI triples;
	NI TMP1611;
	nimfr("LLreadFromStdin", "llstream.nim")
	result = 0;
	nimln(115, "llstream.nim");
	LOC1 = 0;
	LOC1 = (*s).S; (*s).S = copyStringRC1(((NimStringDesc*) &TMP1602));
	if (LOC1) nimGCunrefNoCycle(LOC1);
	nimln(116, "llstream.nim");
	(*s).Rd = 0;
	nimln(117, "llstream.nim");
	nimln(117, "llstream.nim");
	line = rawNewString(120);
	nimln(118, "llstream.nim");
	triples = 0;
	nimln(119, "llstream.nim");
	while (1) {
		NimStringDesc* LOC3;
		NIM_BOOL LOC9;
		NI LOC10;
		nimln(119, "llstream.nim");
		LOC3 = 0;
		nimln(119, "llstream.nim");
		{
			nimln(119, "llstream.nim");
			nimln(119, "llstream.nim");
			if (!((*s).S->Sup.len == 0)) goto LA6;
			LOC3 = copyString(((NimStringDesc*) &TMP1608));
		}		goto LA4;
		LA6: ;
		{
			LOC3 = copyString(((NimStringDesc*) &TMP1609));
		}		LA4: ;
		LOC9 = 0;
		LOC9 = readlinefromstdin_162376(LOC3, &line);
		if (!LOC9) goto LA2;
		nimln(120, "llstream.nim");
		(*s).S = resizeString((*s).S, line->Sup.len + 0);
appendString((*s).S, line);
		nimln(121, "llstream.nim");
		(*s).S = resizeString((*s).S, 1);
appendString((*s).S, ((NimStringDesc*) &TMP1610));
		nimln(122, "llstream.nim");
		nimln(122, "llstream.nim");
		LOC10 = 0;
		LOC10 = counttriples_162462(line);
		triples = addInt(triples, LOC10);
		nimln(123, "llstream.nim");
		{
			NIM_BOOL LOC13;
			nimln(123, "llstream.nim");
			nimln(123, "llstream.nim");
			nimln(123, "llstream.nim");
			nimln(123, "llstream.nim");
			LOC13 = 0;
			LOC13 = continueline_162443(line, (((NI) ((NI)(triples & 1))) == 1));
			if (!!(LOC13)) goto LA14;
			nimln(123, "llstream.nim");
			goto LA2;
		}		LA14: ;
	} LA2: ;
	nimln(124, "llstream.nim");
	(*s).Lineoffset = addInt((*s).Lineoffset, 1);
	nimln(125, "llstream.nim");
	nimln(125, "llstream.nim");
	nimln(125, "llstream.nim");
	nimln(125, "llstream.nim");
	TMP1611 = subInt((*s).S->Sup.len, (*s).Rd);
	result = ((buflen <= (NI32)(TMP1611)) ? buflen : (NI32)(TMP1611));
	nimln(126, "llstream.nim");
	{
		nimln(706, "system.nim");
		if (!(0 < result)) goto LA18;
		nimln(127, "llstream.nim");
		if ((NU)((*s).Rd) > (NU)((*s).S->Sup.len)) raiseIndexError();
		memcpy(buf, ((void*) (&(*s).S->data[(*s).Rd])), result);		nimln(128, "llstream.nim");
		(*s).Rd = addInt((*s).Rd, result);
	}	LA18: ;
	popFrame();
	return result;
}
コード例 #18
0
ファイル: printWriter.c プロジェクト: hternier/cen-electronic
void appendStringAndDecf(OutputStream* stream, const char* s, float value) {
	appendString(stream, s);
    appendDecf(stream, value);
}
コード例 #19
0
ファイル: typesrenderer.c プロジェクト: rbehrends/csources
N_NIMCALL(NimStringDesc*, renderplainsymbolname_343007)(tnode192813* n) {
	NimStringDesc* result;
	nimfr("renderPlainSymbolName", "typesrenderer.nim")
	result = 0;
	nimln(11, "typesrenderer.nim");
	result = copyString(((NimStringDesc*) &TMP4773));
	nimln(12, "typesrenderer.nim");
	switch ((*n).Kind) {
	case ((NU8) 31):
	{
		NI i_343032;
		NI HEX3Atmp_343201;
		NI LOC2;
		NI res_343203;
		i_343032 = 0;
		HEX3Atmp_343201 = 0;
		nimln(14, "typesrenderer.nim");
		nimln(14, "typesrenderer.nim");
		nimln(14, "typesrenderer.nim");
		LOC2 = 0;
		LOC2 = len_193274(n);
		HEX3Atmp_343201 = subInt(LOC2, 1);
		nimln(1458, "system.nim");
		res_343203 = 0;
		nimln(1459, "system.nim");
		while (1) {
			NI LOC4;
			tnode192813* LOC5;
			nimln(1459, "system.nim");
			if (!(res_343203 <= HEX3Atmp_343201)) goto LA3;
			nimln(1458, "system.nim");
			i_343032 = res_343203;
			nimln(15, "typesrenderer.nim");
			nimln(15, "typesrenderer.nim");
			nimln(15, "typesrenderer.nim");
			nimln(15, "typesrenderer.nim");
			LOC4 = 0;
			LOC4 = len_193274(n);
			LOC5 = 0;
			LOC5 = HEX5BHEX5D_193711(n, subInt(LOC4, 1));
			result = renderplainsymbolname_343007(LOC5);
			nimln(16, "typesrenderer.nim");
			{
				nimln(16, "typesrenderer.nim");
				nimln(16, "typesrenderer.nim");
				if (!(0 < result->Sup.len)) goto LA8;
				nimln(17, "typesrenderer.nim");
				goto BeforeRet;
			}
			LA8: ;
			nimln(1461, "system.nim");
			res_343203 = addInt(res_343203, 1);
		} LA3: ;
	}
	break;
	case ((NU8) 2):
	{
		nimln(19, "typesrenderer.nim");
		{
			nimln(19, "typesrenderer.nim");
			nimln(19, "typesrenderer.nim");
			if (!(((TMP4776[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP4777));
			if (!!(eqStrings((*(*n).kindU.S5.Ident).S, ((NimStringDesc*) &TMP4778)))) goto LA13;
			nimln(20, "typesrenderer.nim");
			if (!(((TMP4776[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP4777));
			result = copyString((*(*n).kindU.S5.Ident).S);
		}
		LA13: ;
	}
	break;
	case ((NU8) 3):
	{
		nimln(22, "typesrenderer.nim");
		if (!(((TMP4779[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP4780));
		result = renderdefinitionname_216118((*n).kindU.S4.Sym, NIM_TRUE);
	}
	break;
	case ((NU8) 43):
	{
		tnode192813* LOC17;
		nimln(24, "typesrenderer.nim");
		nimln(24, "typesrenderer.nim");
		LOC17 = 0;
		LOC17 = HEX5BHEX5D_193711(n, 0);
		result = renderplainsymbolname_343007(LOC17);
	}
	break;
	case ((NU8) 53):
	{
		NI LOC19;
		tnode192813* LOC20;
		nimln(26, "typesrenderer.nim");
		nimln(26, "typesrenderer.nim");
		nimln(26, "typesrenderer.nim");
		nimln(26, "typesrenderer.nim");
		LOC19 = 0;
		LOC19 = len_193274(n);
		LOC20 = 0;
		LOC20 = HEX5BHEX5D_193711(n, subInt(LOC19, 1));
		result = renderplainsymbolname_343007(LOC20);
	}
	break;
	default:
	{
		NimStringDesc* LOC22;
		nimln(28, "typesrenderer.nim");
		nimln(28, "typesrenderer.nim");
		LOC22 = 0;
		nimln(28, "typesrenderer.nim");
		LOC22 = rawNewString(reprEnum((*n).Kind, (&NTI192023))->Sup.len + 29);
appendString(LOC22, ((NimStringDesc*) &TMP4781));
appendString(LOC22, reprEnum((*n).Kind, (&NTI192023)));
		internalerror_169591((*n).Info, LOC22);
	}
	break;
	}
	nimln(29, "typesrenderer.nim");
	{
		nimln(29, "typesrenderer.nim");
		nimln(29, "typesrenderer.nim");
		nimln(29, "typesrenderer.nim");
		if (!!(!(result == 0))) goto LA25;
		nimln(29, "typesrenderer.nim");
		failedassertimpl_80421(((NimStringDesc*) &TMP4782));
	}
	LA25: ;
	BeforeRet: ;
	popFrame();
	return result;
}
コード例 #20
0
ファイル: printWriter.c プロジェクト: hternier/cen-electronic
void appendStringAndDec(OutputStream* stream, const char* s, long value) {
    appendString(stream, s);
    appendDec(stream, value);
}
コード例 #21
0
ファイル: magicsys.c プロジェクト: ddlsmurf/Nimrod
N_NIMCALL(TY55552*, Getsystype_102008)(NU8 Kind_102010) {
TY55552* Result_102080;
NimStringDesc* LOC4;
NimStringDesc* LOC8;
NimStringDesc* LOC12;
Result_102080 = 0;
Result_102080 = Gsystypes_102028[(Kind_102010)-0];
if (!(Result_102080 == NIM_NIL)) goto LA2;
switch (Kind_102010) {
case ((NU8) 31):
Result_102080 = Systypefromname_102073(((NimStringDesc*) &TMP196039));
break;
case ((NU8) 32):
Result_102080 = Systypefromname_102073(((NimStringDesc*) &TMP196040));
break;
case ((NU8) 33):
Result_102080 = Systypefromname_102073(((NimStringDesc*) &TMP196041));
break;
case ((NU8) 34):
Result_102080 = Systypefromname_102073(((NimStringDesc*) &TMP196042));
break;
case ((NU8) 35):
Result_102080 = Systypefromname_102073(((NimStringDesc*) &TMP196043));
break;
case ((NU8) 36):
Result_102080 = Systypefromname_102073(((NimStringDesc*) &TMP196044));
break;
case ((NU8) 37):
Result_102080 = Systypefromname_102073(((NimStringDesc*) &TMP196045));
break;
case ((NU8) 38):
Result_102080 = Systypefromname_102073(((NimStringDesc*) &TMP196046));
break;
case ((NU8) 1):
Result_102080 = Systypefromname_102073(((NimStringDesc*) &TMP196047));
break;
case ((NU8) 2):
Result_102080 = Systypefromname_102073(((NimStringDesc*) &TMP196048));
break;
case ((NU8) 28):
Result_102080 = Systypefromname_102073(((NimStringDesc*) &TMP196049));
break;
case ((NU8) 29):
Result_102080 = Systypefromname_102073(((NimStringDesc*) &TMP196050));
break;
case ((NU8) 26):
Result_102080 = Systypefromname_102073(((NimStringDesc*) &TMP196051));
break;
case ((NU8) 5):
Result_102080 = Newsystype_102044(((NU8) 5), Ptrsize_51580);
break;
default:
LOC4 = 0;
LOC4 = rawNewString(reprEnum(Kind_102010, NTI55162)->Sup.len + 22);
appendString(LOC4, ((NimStringDesc*) &TMP196052));
appendString(LOC4, reprEnum(Kind_102010, NTI55162));
Internalerror_48163(LOC4);
break;
}
asgnRef((void**) &Gsystypes_102028[(Kind_102010)-0], Result_102080);
LA2: ;
if (!!(((*Result_102080).Kind == Kind_102010))) goto LA6;
LOC8 = 0;
LOC8 = rawNewString(reprEnum(Kind_102010, NTI55162)->Sup.len + reprEnum((*Result_102080).Kind, NTI55162)->Sup.len + 14);
appendString(LOC8, ((NimStringDesc*) &TMP196053));
appendString(LOC8, reprEnum(Kind_102010, NTI55162));
appendString(LOC8, ((NimStringDesc*) &TMP196054));
appendString(LOC8, reprEnum((*Result_102080).Kind, NTI55162));
Internalerror_48163(LOC8);
LA6: ;
if (!(Result_102080 == NIM_NIL)) goto LA10;
LOC12 = 0;
LOC12 = rawNewString(reprEnum(Kind_102010, NTI55162)->Sup.len + 16);
appendString(LOC12, ((NimStringDesc*) &TMP196055));
appendString(LOC12, reprEnum(Kind_102010, NTI55162));
Internalerror_48163(LOC12);
LA10: ;
return Result_102080;
}
コード例 #22
0
ファイル: printWriter.c プロジェクト: hternier/cen-electronic
void appendKeyAndName(OutputStream* stream, const char* key, const char* name) {
    appendString(stream, key);
    appendString(stream, name);
}
コード例 #23
0
ファイル: stdlib_cookies.c プロジェクト: reactormonk/csources
N_NIMCALL(NimStringDesc*, setcookie_333106)(NimStringDesc* key, NimStringDesc* value, NimStringDesc* domain, NimStringDesc* path, NimStringDesc* expires, NIM_BOOL noname) {
	NimStringDesc* result;
	NimStringDesc* LOC5;
	nimfr("setCookie", "cookies.nim")
	result = 0;
	nimln(35, "cookies.nim");
	result = copyString(((NimStringDesc*) &TMP4689));
	nimln(36, "cookies.nim");
	{
		nimln(36, "cookies.nim");
		if (!!(noname)) goto LA3;
		nimln(36, "cookies.nim");
		result = resizeString(result, 12);
appendString(result, ((NimStringDesc*) &TMP4690));
	}
	LA3: ;
	nimln(37, "cookies.nim");
	nimln(37, "cookies.nim");
	LOC5 = 0;
	LOC5 = rawNewString(key->Sup.len + value->Sup.len + 1);
appendString(LOC5, key);
appendString(LOC5, ((NimStringDesc*) &TMP4691));
appendString(LOC5, value);
	result = resizeString(result, LOC5->Sup.len + 0);
appendString(result, LOC5);
	nimln(38, "cookies.nim");
	{
		NimStringDesc* LOC10;
		nimln(38, "cookies.nim");
		nimln(38, "cookies.nim");
		if (!!(((domain) && (domain)->Sup.len == 0))) goto LA8;
		nimln(38, "cookies.nim");
		nimln(38, "cookies.nim");
		LOC10 = 0;
		LOC10 = rawNewString(domain->Sup.len + 9);
appendString(LOC10, ((NimStringDesc*) &TMP4692));
appendString(LOC10, domain);
		result = resizeString(result, LOC10->Sup.len + 0);
appendString(result, LOC10);
	}
	LA8: ;
	nimln(39, "cookies.nim");
	{
		NimStringDesc* LOC15;
		nimln(39, "cookies.nim");
		nimln(39, "cookies.nim");
		if (!!(((path) && (path)->Sup.len == 0))) goto LA13;
		nimln(39, "cookies.nim");
		nimln(39, "cookies.nim");
		LOC15 = 0;
		LOC15 = rawNewString(path->Sup.len + 7);
appendString(LOC15, ((NimStringDesc*) &TMP4693));
appendString(LOC15, path);
		result = resizeString(result, LOC15->Sup.len + 0);
appendString(result, LOC15);
	}
	LA13: ;
	nimln(40, "cookies.nim");
	{
		NimStringDesc* LOC20;
		nimln(40, "cookies.nim");
		nimln(40, "cookies.nim");
		if (!!(((expires) && (expires)->Sup.len == 0))) goto LA18;
		nimln(40, "cookies.nim");
		nimln(40, "cookies.nim");
		LOC20 = 0;
		LOC20 = rawNewString(expires->Sup.len + 10);
appendString(LOC20, ((NimStringDesc*) &TMP4694));
appendString(LOC20, expires);
		result = resizeString(result, LOC20->Sup.len + 0);
appendString(result, LOC20);
	}
	LA18: ;
	popFrame();
	return result;
}
コード例 #24
0
ファイル: printWriter.c プロジェクト: hternier/cen-electronic
void appendStringCRLF(OutputStream* outputStream, const char* s) {
    appendString(outputStream, s);
    appendCRLF(outputStream);
}
コード例 #25
0
ファイル: stdlib_strtabs.c プロジェクト: nim-lang/csources
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nstFormat)(NimStringDesc* f, tyObject_StringTableObj_V5PVrt9bIxZEeV7lfvqqtNg* t, tySet_tyEnum_FormatFlag_F4vlKAV4d0Kt9aXmu9cVNBrg flags) {
	NimStringDesc* result;
	NI i;
	result = (NimStringDesc*)0;
	result = ((NimStringDesc*) NIM_NIL);
	i = ((NI) 0);
	{
		while (1) {
			if (!(i < (f ? f->Sup.len : 0))) goto LA2;
			{
				if (!((NU8)(f->data[i]) == (NU8)(36))) goto LA5_;
				switch (((NU8)(f->data[(NI)(i + ((NI) 1))]))) {
				case 36:
				{
					result = addChar(result, 36);
					i += ((NI) 2);
				}
				break;
				case 123:
				{
					NI j;
					NimStringDesc* T13_;
					NimStringDesc* T14_;
					j = (NI)(i + ((NI) 1));
					{
						while (1) {
							NIM_BOOL T11_;
							T11_ = (NIM_BOOL)0;
							T11_ = (j < (f ? f->Sup.len : 0));
							if (!(T11_)) goto LA12_;
							T11_ = !(((NU8)(f->data[j]) == (NU8)(125)));
							LA12_: ;
							if (!T11_) goto LA10;
							j += ((NI) 1);
						} LA10: ;
					}
					T13_ = (NimStringDesc*)0;
					T13_ = substr_TWXUwbnq0SWWvDLfr8LXYw(f, (NI)(i + ((NI) 2)), (NI)(j - ((NI) 1)));
					T14_ = (NimStringDesc*)0;
					T14_ = getValue_4FxACgRMhRTaH9axGj4POzA(t, flags, T13_);
					result = resizeString(result, (T14_ ? T14_->Sup.len : 0) + 0);
appendString(result, T14_);
					i = (NI)(j + ((NI) 1));
				}
				break;
				case 97 ... 122:
				case 65 ... 90:
				case 128 ... 255:
				case 95:
				{
					NI j_2;
					NimStringDesc* T20_;
					NimStringDesc* T21_;
					j_2 = (NI)(i + ((NI) 1));
					{
						while (1) {
							NIM_BOOL T18_;
							T18_ = (NIM_BOOL)0;
							T18_ = (j_2 < (f ? f->Sup.len : 0));
							if (!(T18_)) goto LA19_;
							T18_ = (((NU8)(f->data[j_2])) >= ((NU8)(97)) && ((NU8)(f->data[j_2])) <= ((NU8)(122)) || ((NU8)(f->data[j_2])) >= ((NU8)(65)) && ((NU8)(f->data[j_2])) <= ((NU8)(90)) || ((NU8)(f->data[j_2])) >= ((NU8)(48)) && ((NU8)(f->data[j_2])) <= ((NU8)(57)) || ((NU8)(f->data[j_2])) == ((NU8)(95)) || ((NU8)(f->data[j_2])) >= ((NU8)(128)) && ((NU8)(f->data[j_2])) <= ((NU8)(255)));
							LA19_: ;
							if (!T18_) goto LA17;
							j_2 += ((NI) 1);
						} LA17: ;
					}
					T20_ = (NimStringDesc*)0;
					T20_ = substr_TWXUwbnq0SWWvDLfr8LXYw(f, (NI)(i + ((NI) 1)), (NI)(j_2 - ((NI) 1)));
					T21_ = (NimStringDesc*)0;
					T21_ = getValue_4FxACgRMhRTaH9axGj4POzA(t, flags, T20_);
					result = resizeString(result, (T21_ ? T21_->Sup.len : 0) + 0);
appendString(result, T21_);
					i = j_2;
				}
				break;
				default:
				{
					result = addChar(result, f->data[i]);
					i += ((NI) 1);
				}
				break;
				}
			}
			goto LA3_;
			LA5_: ;
			{
				result = addChar(result, f->data[i]);
				i += ((NI) 1);
			}
			LA3_: ;
		} LA2: ;
	}
	return result;
}
コード例 #26
0
N_NIMCALL(void, getescapedchar_156290)(tcfgparser156014* c, ttoken156012* tok) {
	(*c).Sup.Bufpos += 1;
	switch (((NU8)((*c).Sup.Buf[(*c).Sup.Bufpos]))) {
	case 110:
	case 78:
	{
		(*tok).Literal = resizeString((*tok).Literal, 1);
appendString((*tok).Literal, ((NimStringDesc*) &TMP129));
		(*c).Sup.Bufpos += 1;
	}
	break;
	case 114:
	case 82:
	case 99:
	case 67:
	{
		(*tok).Literal = addChar((*tok).Literal, 13);
		(*c).Sup.Bufpos += 1;
	}
	break;
	case 108:
	case 76:
	{
		(*tok).Literal = addChar((*tok).Literal, 10);
		(*c).Sup.Bufpos += 1;
	}
	break;
	case 102:
	case 70:
	{
		(*tok).Literal = addChar((*tok).Literal, 12);
		(*c).Sup.Bufpos += 1;
	}
	break;
	case 101:
	case 69:
	{
		(*tok).Literal = addChar((*tok).Literal, 27);
		(*c).Sup.Bufpos += 1;
	}
	break;
	case 97:
	case 65:
	{
		(*tok).Literal = addChar((*tok).Literal, 7);
		(*c).Sup.Bufpos += 1;
	}
	break;
	case 98:
	case 66:
	{
		(*tok).Literal = addChar((*tok).Literal, 8);
		(*c).Sup.Bufpos += 1;
	}
	break;
	case 118:
	case 86:
	{
		(*tok).Literal = addChar((*tok).Literal, 11);
		(*c).Sup.Bufpos += 1;
	}
	break;
	case 116:
	case 84:
	{
		(*tok).Literal = addChar((*tok).Literal, 9);
		(*c).Sup.Bufpos += 1;
	}
	break;
	case 39:
	case 34:
	{
		(*tok).Literal = addChar((*tok).Literal, (*c).Sup.Buf[(*c).Sup.Bufpos]);
		(*c).Sup.Bufpos += 1;
	}
	break;
	case 92:
	{
		(*tok).Literal = addChar((*tok).Literal, 92);
		(*c).Sup.Bufpos += 1;
	}
	break;
	case 120:
	case 88:
	{
		NI xi;
		(*c).Sup.Bufpos += 1;
		xi = 0;
		handlehexchar_156125(c, &xi);
		handlehexchar_156125(c, &xi);
		(*tok).Literal = addChar((*tok).Literal, ((NIM_CHAR) (((NI) (xi)))));
	}
	break;
	case 48 ... 57:
	{
		NI xi;
		xi = 0;
		handledecchars_156228(c, &xi);
		{
			if (!(xi <= 255)) goto LA16;
			(*tok).Literal = addChar((*tok).Literal, ((NIM_CHAR) (((NI) (xi)))));
		}
		goto LA14;
		LA16: ;
		{
			(*tok).Kind = ((NU8) 0);
		}
		LA14: ;
	}
	break;
	default:
	{
		(*tok).Kind = ((NU8) 0);
	}
	break;
	}
}
コード例 #27
0
ファイル: nimrod.c プロジェクト: reactormonk/csources
N_NIMCALL(void, handlecmdline_529603)(void) {
	nimfr("handleCmdLine", "nimrod.nim")
	nimln(35, "nimrod.nim");
	{
		NI LOC3;
		nimln(35, "nimrod.nim");
		nimln(35, "nimrod.nim");
		LOC3 = 0;
		LOC3 = paramcount_114233();
		if (!(LOC3 == 0)) goto LA4;
		nimln(36, "nimrod.nim");
		writecommandlineusage_171002();
	}
	goto LA1;
	LA4: ;
	{
		nimln(39, "nimrod.nim");
		processcmdline_523207(((NU8) 0), ((NimStringDesc*) &TMP7787));
		nimln(40, "nimrod.nim");
		{
			TSafePoint TMP7788;
			TY108700 p;
			NimStringDesc* LOC15;
			NimStringDesc* LOC16;
			nimln(40, "nimrod.nim");
			nimln(40, "nimrod.nim");
			if (!!(((gprojectname_135206) && (gprojectname_135206)->Sup.len == 0))) goto LA9;
			nimln(41, "nimrod.nim");
			pushSafePoint(&TMP7788);
			TMP7788.status = setjmp(TMP7788.context);
			if (TMP7788.status == 0) {
				nimln(42, "nimrod.nim");
				asgnRefNoCycle((void**) &gprojectfull_135208, canonicalizepath_135335(gprojectname_135206));
				popSafePoint();
			}
			else {
				popSafePoint();
				setFrame((TFrame*)&F);
				if (isObj(getCurrentException()->Sup.m_type, (&NTI2435))) {
					NimStringDesc* LOC14;
					TMP7788.status = 0;
					nimln(44, "nimrod.nim");
					LOC14 = 0;
					LOC14 = gprojectfull_135208; gprojectfull_135208 = copyStringRC1(gprojectname_135206);
					if (LOC14) nimGCunrefNoCycle(LOC14);
					popCurrentException();
				}
			}
			if (TMP7788.status != 0) reraiseException();
			nimln(45, "nimrod.nim");
			chckNil((void*)&p);
			memset((void*)&p, 0, sizeof(p));
			nossplitFile(gprojectfull_135208, &p);
			nimln(46, "nimrod.nim");
			LOC15 = 0;
			LOC15 = gprojectpath_135207; gprojectpath_135207 = copyStringRC1(p.Field0);
			if (LOC15) nimGCunrefNoCycle(LOC15);
			nimln(47, "nimrod.nim");
			LOC16 = 0;
			LOC16 = gprojectname_135206; gprojectname_135206 = copyStringRC1(p.Field1);
			if (LOC16) nimGCunrefNoCycle(LOC16);
		}
		goto LA7;
		LA9: ;
		{
			nimln(49, "nimrod.nim");
			asgnRefNoCycle((void**) &gprojectpath_135207, nosgetCurrentDir());
		}
		LA7: ;
		nimln(50, "nimrod.nim");
		loadconfigs_181607(((NimStringDesc*) &TMP7789));
		nimln(53, "nimrod.nim");
		initvars_167714();
		nimln(54, "nimrod.nim");
		processcmdline_523207(((NU8) 1), ((NimStringDesc*) &TMP7787));
		nimln(55, "nimrod.nim");
		maincommand_527011();
		nimln(56, "nimrod.nim");
		{
			NimStringDesc* LOC22;
			nimln(56, "nimrod.nim");
			if (!(2 <= gverbosity_135120)) goto LA20;
			nimln(56, "nimrod.nim");
			nimln(56, "nimrod.nim");
			LOC22 = 0;
			LOC22 = gcgetstatistics_6621();
			printf("%s\012", (LOC22)->data);
		}
		LA20: ;
		nimln(58, "nimrod.nim");
		{
			nimln(58, "nimrod.nim");
			if (!(gerrorcounter_162182 == 0)) goto LA25;
			nimln(62, "nimrod.nim");
			{
				nimln(62, "nimrod.nim");
				if (!((gglobaloptions_135111 &(1<<((((NU8) 13))&31)))!=0)) goto LA29;
				nimln(63, "nimrod.nim");
				{
					NimStringDesc* ex;
					NimStringDesc* LOC44;
					nimln(63, "nimrod.nim");
					if (!(gcmd_135113 == ((NU8) 4))) goto LA33;
					ex = 0;
					nimln(65, "nimrod.nim");
					{
						NimStringDesc* LOC39;
						nimln(65, "nimrod.nim");
						nimln(65, "nimrod.nim");
						if (!(0 < outfile_135117->Sup.len)) goto LA37;
						nimln(66, "nimrod.nim");
						nimln(66, "nimrod.nim");
						LOC39 = 0;
						LOC39 = prependcurdir_529401(outfile_135117);
						ex = nospquoteShell(LOC39);
					}
					goto LA35;
					LA37: ;
					{
						NimStringDesc* LOC41;
						NimStringDesc* LOC42;
						NimStringDesc* LOC43;
						nimln(68, "nimrod.nim");
						nimln(69, "nimrod.nim");
						nimln(69, "nimrod.nim");
						nimln(69, "nimrod.nim");
						LOC41 = 0;
						LOC41 = noschangeFileExt(gprojectfull_135208, ((NimStringDesc*) &TMP7790));
						LOC42 = 0;
						LOC42 = prependcurdir_529401(LOC41);
						LOC43 = 0;
						LOC43 = completecfilepath_167753(LOC42, NIM_TRUE);
						ex = nospquoteShell(LOC43);
					}
					LA35: ;
					nimln(70, "nimrod.nim");
					nimln(70, "nimrod.nim");
					LOC44 = 0;
					LOC44 = rawNewString(ex->Sup.len + arguments_523205->Sup.len + 6);
appendString(LOC44, ((NimStringDesc*) &TMP7791));
appendString(LOC44, ex);
appendChar(LOC44, 32);
appendString(LOC44, arguments_523205);
					execexternalprogram_167785(LOC44);
				}
				goto LA31;
				LA33: ;
				{
					NimStringDesc* binpath;
					NimStringDesc* ex;
					NimStringDesc* LOC52;
					binpath = 0;
					nimln(73, "nimrod.nim");
					{
						nimln(73, "nimrod.nim");
						nimln(73, "nimrod.nim");
						if (!(0 < outfile_135117->Sup.len)) goto LA48;
						nimln(75, "nimrod.nim");
						binpath = prependcurdir_529401(outfile_135117);
					}
					goto LA46;
					LA48: ;
					{
						NimStringDesc* LOC51;
						nimln(78, "nimrod.nim");
						nimln(78, "nimrod.nim");
						LOC51 = 0;
						LOC51 = noschangeFileExt(gprojectfull_135208, ((NimStringDesc*) &TMP7787));
						binpath = prependcurdir_529401(LOC51);
					}
					LA46: ;
					nimln(79, "nimrod.nim");
					ex = nospquoteShell(binpath);
					nimln(80, "nimrod.nim");
					nimln(80, "nimrod.nim");
					LOC52 = 0;
					LOC52 = rawNewString(ex->Sup.len + arguments_523205->Sup.len + 1);
appendString(LOC52, ex);
appendChar(LOC52, 32);
appendString(LOC52, arguments_523205);
					execexternalprogram_167785(LOC52);
				}
				LA31: ;
			}
			LA29: ;
		}
		LA25: ;
	}
	LA1: ;
	popFrame();
}
コード例 #28
0
N_NIMCALL(void, getstring_156478)(tcfgparser156014* c, ttoken156012* tok, NIM_BOOL rawmode) {
	NI pos;
	NCSTRING buf;
	pos = (NI64)((*c).Sup.Bufpos + 1);
	buf = (*c).Sup.Buf;
	(*tok).Kind = ((NU8) 2);
	{
		NIM_BOOL LOC3;
		LOC3 = 0;
		LOC3 = ((NU8)(buf[pos]) == (NU8)(34));
		if (!(LOC3)) goto LA4;
		LOC3 = ((NU8)(buf[(NI64)(pos + 1)]) == (NU8)(34));
		LA4: ;
		if (!LOC3) goto LA5;
		pos += 2;
		pos = handlecrlf_156464(c, pos);
		buf = (*c).Sup.Buf;
		{
			while (1) {
				switch (((NU8)(buf[pos]))) {
				case 34:
				{
					{
						NIM_BOOL LOC12;
						LOC12 = 0;
						LOC12 = ((NU8)(buf[(NI64)(pos + 1)]) == (NU8)(34));
						if (!(LOC12)) goto LA13;
						LOC12 = ((NU8)(buf[(NI64)(pos + 2)]) == (NU8)(34));
						LA13: ;
						if (!LOC12) goto LA14;
						goto LA7;
					}
					LA14: ;
					(*tok).Literal = addChar((*tok).Literal, 34);
					pos += 1;
				}
				break;
				case 13:
				case 10:
				{
					pos = handlecrlf_156464(c, pos);
					buf = (*c).Sup.Buf;
					(*tok).Literal = resizeString((*tok).Literal, 1);
appendString((*tok).Literal, ((NimStringDesc*) &TMP129));
				}
				break;
				case 0:
				{
					(*tok).Kind = ((NU8) 0);
					goto LA7;
				}
				break;
				default:
				{
					(*tok).Literal = addChar((*tok).Literal, buf[pos]);
					pos += 1;
				}
				break;
				}
			}
		} LA7: ;
		(*c).Sup.Bufpos = (NI64)(pos + 3);
	}
	goto LA1;
	LA5: ;
	{
		{
			while (1) {
				NIM_CHAR ch;
				ch = buf[pos];
				{
					if (!((NU8)(ch) == (NU8)(34))) goto LA24;
					pos += 1;
					goto LA20;
				}
				LA24: ;
				{
					if (!(((NU8)(ch)) == ((NU8)(13)) || ((NU8)(ch)) == ((NU8)(10)) || ((NU8)(ch)) == ((NU8)(0)))) goto LA28;
					(*tok).Kind = ((NU8) 0);
					goto LA20;
				}
				LA28: ;
				{
					NIM_BOOL LOC32;
					LOC32 = 0;
					LOC32 = ((NU8)(ch) == (NU8)(92));
					if (!(LOC32)) goto LA33;
					LOC32 = !(rawmode);
					LA33: ;
					if (!LOC32) goto LA34;
					(*c).Sup.Bufpos = pos;
					getescapedchar_156290(c, tok);
					pos = (*c).Sup.Bufpos;
				}
				goto LA30;
				LA34: ;
				{
					(*tok).Literal = addChar((*tok).Literal, ch);
					pos += 1;
				}
				LA30: ;
			}
		} LA20: ;
		(*c).Sup.Bufpos = pos;
	}
	LA1: ;
}
コード例 #29
0
ファイル: pure_parseopt.c プロジェクト: Varriount/csources
N_NIMCALL(void, initoptparser_417619)(NimStringDesc* cmdline, toptparser417607* Result) {
	nimfr("initOptParser", "parseopt.nim")
	nimln(47, "parseopt.nim");
	(*Result).Pos = 0;
	nimln(48, "parseopt.nim");
	(*Result).Inshortstate = NIM_FALSE;
	nimln(49, "parseopt.nim");
	{
		nimln(698, "system.nim");
		nimln(698, "system.nim");
		if (!!(((cmdline) && (cmdline)->Sup.len == 0))) goto LA3;
		nimln(50, "parseopt.nim");
		unsureAsgnRef((void**) &(*Result).Cmd, copyString(cmdline));
	}	goto LA1;
	LA3: ;
	{
		NI i_417632;
		NI HEX3Atmp_417634;
		NI res_417636;
		nimln(52, "parseopt.nim");
		unsureAsgnRef((void**) &(*Result).Cmd, copyString(((NimStringDesc*) &TMP7028)));
		i_417632 = 0;
		HEX3Atmp_417634 = 0;
		nimln(53, "parseopt.nim");
		HEX3Atmp_417634 = paramcount_107029();
		nimln(1301, "system.nim");
		res_417636 = 1;
		nimln(1302, "system.nim");
		while (1) {
			NimStringDesc* LOC7;
			NimStringDesc* LOC8;
			NimStringDesc* LOC9;
			nimln(1302, "system.nim");
			if (!(res_417636 <= HEX3Atmp_417634)) goto LA6;
			nimln(1301, "system.nim");
			i_417632 = res_417636;
			nimln(54, "parseopt.nim");
			nimln(54, "parseopt.nim");
			LOC7 = 0;
			nimln(54, "parseopt.nim");
			nimln(54, "parseopt.nim");
			LOC8 = 0;
			LOC8 = paramstr_107005(i_417632);
			LOC9 = 0;
			LOC9 = quoteifcontainswhite_84662(LOC8);
			LOC7 = rawNewString((*Result).Cmd->Sup.len + LOC9->Sup.len + 1);
appendString(LOC7, (*Result).Cmd);
appendString(LOC7, LOC9);
appendChar(LOC7, 32);
			unsureAsgnRef((void**) &(*Result).Cmd, LOC7);
			nimln(1304, "system.nim");
			res_417636 = addInt(res_417636, 1);
		} LA6: ;
	}	LA1: ;
	nimln(55, "parseopt.nim");
	(*Result).Kind = ((NU8) 0);
	nimln(56, "parseopt.nim");
	unsureAsgnRef((void**) &(*Result).Key, copyString(((NimStringDesc*) &TMP7032)));
	nimln(57, "parseopt.nim");
	unsureAsgnRef((void**) &(*Result).Val, copyString(((NimStringDesc*) &TMP7032)));
	popFrame();
}
コード例 #30
0
char *taskLists_Delete(char *access_token, TaskListItem *item)
{

    if (access_token != NULL && item != NULL)
    {
        if (item->id == NULL)
            return NULL;

        CURL *curl;
        
        curl = curl_easy_init();

        struct MemoryStruct memoryStruct;

        memoryStruct.memory = malloc(1);
        memoryStruct.size = 0;

        struct curl_slist *headers = NULL;

        int str_lenght = strlen(HEADER_AUTHORIZATION) + 1;
        char *header = malloc(str_lenght * sizeof (char));
        strcpy(header, HEADER_AUTHORIZATION);

        header = appendString(header, access_token);


        headers = curl_slist_append(headers, header);

        char *listHttpRequest = malloc(sizeof (char*));
        appendString(listHttpRequest, LISTS_HTTP_REQUEST);
        appendString(listHttpRequest, "/");
        appendString(listHttpRequest, item->id);

        char * postFields = "";
        struct WriteThis writeThis;
        writeThis.readptr = postFields;
        writeThis.sizeleft = strlen(postFields);


        curl_easy_setopt(curl, CURLOPT_URL, listHttpRequest);

        curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
        curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L);

        curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);

        curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, "DELETE");

        curl_easy_setopt(curl, CURLOPT_READFUNCTION, readCallback);
        curl_easy_setopt(curl, CURLOPT_READDATA, &writeThis);
        curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, (curl_off_t) writeThis.sizeleft);

        curl_easy_setopt(curl, CURLOPT_TIMEOUT, 30000 / 1000);
        curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, httpsCallback);
        curl_easy_setopt(curl, CURLOPT_WRITEDATA, &memoryStruct);

        curl_easy_perform(curl);
        curl_easy_cleanup(curl);

        return memoryStruct.memory;
    }
    return NULL;
}