⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 stem_iso_8859_1_spanish.c

📁 postgresql8.3.4源码,开源数据库
💻 C
📖 第 1 页 / 共 3 页
字号:
static const struct among a_8[96] ={/*  0 */ { 3, s_8_0, -1, 2, 0},/*  1 */ { 3, s_8_1, -1, 2, 0},/*  2 */ { 3, s_8_2, -1, 2, 0},/*  3 */ { 3, s_8_3, -1, 2, 0},/*  4 */ { 4, s_8_4, -1, 2, 0},/*  5 */ { 2, s_8_5, -1, 2, 0},/*  6 */ { 4, s_8_6, 5, 2, 0},/*  7 */ { 4, s_8_7, 5, 2, 0},/*  8 */ { 4, s_8_8, 5, 2, 0},/*  9 */ { 2, s_8_9, -1, 2, 0},/* 10 */ { 2, s_8_10, -1, 2, 0},/* 11 */ { 2, s_8_11, -1, 2, 0},/* 12 */ { 3, s_8_12, -1, 2, 0},/* 13 */ { 4, s_8_13, -1, 2, 0},/* 14 */ { 4, s_8_14, -1, 2, 0},/* 15 */ { 4, s_8_15, -1, 2, 0},/* 16 */ { 2, s_8_16, -1, 2, 0},/* 17 */ { 4, s_8_17, 16, 2, 0},/* 18 */ { 4, s_8_18, 16, 2, 0},/* 19 */ { 5, s_8_19, 16, 2, 0},/* 20 */ { 3, s_8_20, 16, 2, 0},/* 21 */ { 5, s_8_21, 20, 2, 0},/* 22 */ { 5, s_8_22, 20, 2, 0},/* 23 */ { 5, s_8_23, 20, 2, 0},/* 24 */ { 2, s_8_24, -1, 1, 0},/* 25 */ { 4, s_8_25, 24, 2, 0},/* 26 */ { 5, s_8_26, 24, 2, 0},/* 27 */ { 4, s_8_27, -1, 2, 0},/* 28 */ { 5, s_8_28, -1, 2, 0},/* 29 */ { 4, s_8_29, -1, 2, 0},/* 30 */ { 4, s_8_30, -1, 2, 0},/* 31 */ { 4, s_8_31, -1, 2, 0},/* 32 */ { 3, s_8_32, -1, 2, 0},/* 33 */ { 3, s_8_33, -1, 2, 0},/* 34 */ { 4, s_8_34, -1, 2, 0},/* 35 */ { 5, s_8_35, -1, 2, 0},/* 36 */ { 2, s_8_36, -1, 2, 0},/* 37 */ { 2, s_8_37, -1, 2, 0},/* 38 */ { 2, s_8_38, -1, 2, 0},/* 39 */ { 2, s_8_39, -1, 2, 0},/* 40 */ { 4, s_8_40, 39, 2, 0},/* 41 */ { 4, s_8_41, 39, 2, 0},/* 42 */ { 4, s_8_42, 39, 2, 0},/* 43 */ { 4, s_8_43, 39, 2, 0},/* 44 */ { 5, s_8_44, 39, 2, 0},/* 45 */ { 3, s_8_45, 39, 2, 0},/* 46 */ { 5, s_8_46, 45, 2, 0},/* 47 */ { 5, s_8_47, 45, 2, 0},/* 48 */ { 5, s_8_48, 45, 2, 0},/* 49 */ { 2, s_8_49, -1, 1, 0},/* 50 */ { 4, s_8_50, 49, 2, 0},/* 51 */ { 5, s_8_51, 49, 2, 0},/* 52 */ { 5, s_8_52, -1, 2, 0},/* 53 */ { 5, s_8_53, -1, 2, 0},/* 54 */ { 6, s_8_54, -1, 2, 0},/* 55 */ { 4, s_8_55, -1, 2, 0},/* 56 */ { 6, s_8_56, 55, 2, 0},/* 57 */ { 6, s_8_57, 55, 2, 0},/* 58 */ { 6, s_8_58, 55, 2, 0},/* 59 */ { 5, s_8_59, -1, 2, 0},/* 60 */ { 6, s_8_60, -1, 2, 0},/* 61 */ { 6, s_8_61, -1, 2, 0},/* 62 */ { 6, s_8_62, -1, 2, 0},/* 63 */ { 3, s_8_63, -1, 2, 0},/* 64 */ { 3, s_8_64, -1, 1, 0},/* 65 */ { 5, s_8_65, 64, 2, 0},/* 66 */ { 5, s_8_66, 64, 2, 0},/* 67 */ { 5, s_8_67, 64, 2, 0},/* 68 */ { 4, s_8_68, -1, 2, 0},/* 69 */ { 4, s_8_69, -1, 2, 0},/* 70 */ { 4, s_8_70, -1, 2, 0},/* 71 */ { 6, s_8_71, 70, 2, 0},/* 72 */ { 6, s_8_72, 70, 2, 0},/* 73 */ { 7, s_8_73, 70, 2, 0},/* 74 */ { 5, s_8_74, 70, 2, 0},/* 75 */ { 7, s_8_75, 74, 2, 0},/* 76 */ { 7, s_8_76, 74, 2, 0},/* 77 */ { 7, s_8_77, 74, 2, 0},/* 78 */ { 4, s_8_78, -1, 1, 0},/* 79 */ { 6, s_8_79, 78, 2, 0},/* 80 */ { 6, s_8_80, 78, 2, 0},/* 81 */ { 6, s_8_81, 78, 2, 0},/* 82 */ { 6, s_8_82, 78, 2, 0},/* 83 */ { 7, s_8_83, 78, 2, 0},/* 84 */ { 4, s_8_84, -1, 2, 0},/* 85 */ { 4, s_8_85, -1, 2, 0},/* 86 */ { 4, s_8_86, -1, 2, 0},/* 87 */ { 4, s_8_87, -1, 2, 0},/* 88 */ { 2, s_8_88, -1, 2, 0},/* 89 */ { 3, s_8_89, -1, 2, 0},/* 90 */ { 3, s_8_90, -1, 2, 0},/* 91 */ { 3, s_8_91, -1, 2, 0},/* 92 */ { 3, s_8_92, -1, 2, 0},/* 93 */ { 3, s_8_93, -1, 2, 0},/* 94 */ { 3, s_8_94, -1, 2, 0},/* 95 */ { 2, s_8_95, -1, 2, 0}};static const symbol s_9_0[1] = { 'a' };static const symbol s_9_1[1] = { 'e' };static const symbol s_9_2[1] = { 'o' };static const symbol s_9_3[2] = { 'o', 's' };static const symbol s_9_4[1] = { 0xE1 };static const symbol s_9_5[1] = { 0xE9 };static const symbol s_9_6[1] = { 0xED };static const symbol s_9_7[1] = { 0xF3 };static const struct among a_9[8] ={/*  0 */ { 1, s_9_0, -1, 1, 0},/*  1 */ { 1, s_9_1, -1, 2, 0},/*  2 */ { 1, s_9_2, -1, 1, 0},/*  3 */ { 2, s_9_3, -1, 1, 0},/*  4 */ { 1, s_9_4, -1, 1, 0},/*  5 */ { 1, s_9_5, -1, 2, 0},/*  6 */ { 1, s_9_6, -1, 1, 0},/*  7 */ { 1, s_9_7, -1, 1, 0}};static const unsigned char g_v[] = { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 17, 4, 10 };static const symbol s_0[] = { 'a' };static const symbol s_1[] = { 'e' };static const symbol s_2[] = { 'i' };static const symbol s_3[] = { 'o' };static const symbol s_4[] = { 'u' };static const symbol s_5[] = { 'i', 'e', 'n', 'd', 'o' };static const symbol s_6[] = { 'a', 'n', 'd', 'o' };static const symbol s_7[] = { 'a', 'r' };static const symbol s_8[] = { 'e', 'r' };static const symbol s_9[] = { 'i', 'r' };static const symbol s_10[] = { 'u' };static const symbol s_11[] = { 'i', 'c' };static const symbol s_12[] = { 'l', 'o', 'g' };static const symbol s_13[] = { 'u' };static const symbol s_14[] = { 'e', 'n', 't', 'e' };static const symbol s_15[] = { 'a', 't' };static const symbol s_16[] = { 'a', 't' };static const symbol s_17[] = { 'u' };static const symbol s_18[] = { 'u' };static const symbol s_19[] = { 'g' };static const symbol s_20[] = { 'u' };static const symbol s_21[] = { 'g' };static int r_mark_regions(struct SN_env * z) {    z->I[0] = z->l;    z->I[1] = z->l;    z->I[2] = z->l;    {   int c1 = z->c; /* do, line 37 */        {   int c2 = z->c; /* or, line 39 */            if (in_grouping(z, g_v, 97, 252, 0)) goto lab2;            {   int c3 = z->c; /* or, line 38 */                if (out_grouping(z, g_v, 97, 252, 0)) goto lab4;                {    /* gopast */ /* grouping v, line 38 */                    int ret = out_grouping(z, g_v, 97, 252, 1);                    if (ret < 0) goto lab4;                    z->c += ret;                }                goto lab3;            lab4:                z->c = c3;                if (in_grouping(z, g_v, 97, 252, 0)) goto lab2;                {    /* gopast */ /* non v, line 38 */                    int ret = in_grouping(z, g_v, 97, 252, 1);                    if (ret < 0) goto lab2;                    z->c += ret;                }            }        lab3:            goto lab1;        lab2:            z->c = c2;            if (out_grouping(z, g_v, 97, 252, 0)) goto lab0;            {   int c4 = z->c; /* or, line 40 */                if (out_grouping(z, g_v, 97, 252, 0)) goto lab6;                {    /* gopast */ /* grouping v, line 40 */                    int ret = out_grouping(z, g_v, 97, 252, 1);                    if (ret < 0) goto lab6;                    z->c += ret;                }                goto lab5;            lab6:                z->c = c4;                if (in_grouping(z, g_v, 97, 252, 0)) goto lab0;                if (z->c >= z->l) goto lab0;                z->c++; /* next, line 40 */            }        lab5:            ;        }    lab1:        z->I[0] = z->c; /* setmark pV, line 41 */    lab0:        z->c = c1;    }    {   int c5 = z->c; /* do, line 43 */        {    /* gopast */ /* grouping v, line 44 */            int ret = out_grouping(z, g_v, 97, 252, 1);            if (ret < 0) goto lab7;            z->c += ret;        }        {    /* gopast */ /* non v, line 44 */            int ret = in_grouping(z, g_v, 97, 252, 1);            if (ret < 0) goto lab7;            z->c += ret;        }        z->I[1] = z->c; /* setmark p1, line 44 */        {    /* gopast */ /* grouping v, line 45 */            int ret = out_grouping(z, g_v, 97, 252, 1);            if (ret < 0) goto lab7;            z->c += ret;        }        {    /* gopast */ /* non v, line 45 */            int ret = in_grouping(z, g_v, 97, 252, 1);            if (ret < 0) goto lab7;            z->c += ret;        }        z->I[2] = z->c; /* setmark p2, line 45 */    lab7:        z->c = c5;    }    return 1;}static int r_postlude(struct SN_env * z) {    int among_var;    while(1) { /* repeat, line 49 */        int c1 = z->c;        z->bra = z->c; /* [, line 50 */        if (z->c >= z->l || z->p[z->c + 0] >> 5 != 7 || !((67641858 >> (z->p[z->c + 0] & 0x1f)) & 1)) among_var = 6; else        among_var = find_among(z, a_0, 6); /* substring, line 50 */        if (!(among_var)) goto lab0;        z->ket = z->c; /* ], line 50 */        switch(among_var) {            case 0: goto lab0;            case 1:                {   int ret = slice_from_s(z, 1, s_0); /* <-, line 51 */                    if (ret < 0) return ret;                }                break;            case 2:                {   int ret = slice_from_s(z, 1, s_1); /* <-, line 52 */                    if (ret < 0) return ret;                }                break;            case 3:                {   int ret = slice_from_s(z, 1, s_2); /* <-, line 53 */                    if (ret < 0) return ret;                }                break;            case 4:                {   int ret = slice_from_s(z, 1, s_3); /* <-, line 54 */                    if (ret < 0) return ret;                }                break;            case 5:                {   int ret = slice_from_s(z, 1, s_4); /* <-, line 55 */                    if (ret < 0) return ret;                }                break;            case 6:                if (z->c >= z->l) goto lab0;                z->c++; /* next, line 57 */                break;        }        continue;    lab0:        z->c = c1;        break;    }    return 1;}static int r_RV(struct SN_env * z) {    if (!(z->I[0] <= z->c)) return 0;    return 1;}static int r_R1(struct SN_env * z) {    if (!(z->I[1] <= z->c)) return 0;    return 1;}static int r_R2(struct SN_env * z) {    if (!(z->I[2] <= z->c)) return 0;    return 1;}static int r_attached_pronoun(struct SN_env * z) {    int among_var;    z->ket = z->c; /* [, line 68 */    if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((557090 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;    if (!(find_among_b(z, a_1, 13))) return 0; /* substring, line 68 */    z->bra = z->c; /* ], line 68 */    if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 111 && z->p[z->c - 1] != 114)) return 0;    among_var = find_among_b(z, a_2, 11); /* substring, line 72 */    if (!(among_var)) return 0;    {   int ret = r_RV(z);        if (ret == 0) return 0; /* call RV, line 72 */        if (ret < 0) return ret;    }    switch(among_var) {        case 0: return 0;        case 1:            z->bra = z->c; /* ], line 73 */            {   int ret = slice_from_s(z, 5, s_5); /* <-, line 73 */                if (ret < 0) return ret;            }            break;        case 2:            z->bra = z->c; /* ], line 74 */            {   int ret = slice_from_s(z, 4, s_6); /* <-, line 74 */                if (ret < 0) return ret;            }            break;        case 3:            z->bra = z->c; /* ], line 75 */            {   int ret = slice_from_s(z, 2, s_7); /* <-, line 75 */                if (ret < 0) return ret;            }            break;        case 4:            z->bra = z->c; /* ], line 76 */            {   int ret = slice_from_s(z, 2, s_8); /* <-, line 76 */                if (ret < 0) return ret;            }            break;        case 5:            z->bra = z->c; /* ], line 77 */            {   int ret = slice_from_s(z, 2, s_9); /* <-, line 77 */                if (ret < 0) return ret;            }            break;        case 6:            {   int ret = slice_del(z); /* delete, line 81 */                if (ret < 0) return ret;            }            break;        case 7:            if (!(eq_s_b(z, 1, s_10))) return 0;            {   int ret = slice_del(z); /* delete, line 82 */                if (ret < 0) return ret;            }            break;    }    return 1;}static int r_standard_suffix(struct SN_env * z) {    int among_var;    z->ket = z->c; /* [, line 87 */    if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((835634 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;    among_var = find_among_b(z, a_6, 46); /* substring, line 87 */    if (!(among_var)) return 0;    z->bra = z->c; /* ], line 87 */    switch(among_var) {        case 0: return 0;        case 1:            {   int ret = r_R2(z);                if (ret == 0) return 0; /* call R2, line 99 */                if (ret < 0) return ret;            }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -