mirror of
https://github.com/postgres/postgres.git
synced 2025-05-02 11:44:50 +03:00
Update snowball
Update to snowball tag v2.1.0. Major changes are new stemmers for Armenian, Serbian, and Yiddish.
This commit is contained in:
parent
b071a31149
commit
678d0e239b
@ -3837,6 +3837,7 @@ Parser: "pg_catalog.default"
|
||||
Schema | Name | Description
|
||||
------------+-----------------+-----------------------------------------------------------
|
||||
pg_catalog | arabic_stem | snowball stemmer for arabic language
|
||||
pg_catalog | armenian_stem | snowball stemmer for armenian language
|
||||
pg_catalog | basque_stem | snowball stemmer for basque language
|
||||
pg_catalog | catalan_stem | snowball stemmer for catalan language
|
||||
pg_catalog | danish_stem | snowball stemmer for danish language
|
||||
@ -3857,11 +3858,13 @@ Parser: "pg_catalog.default"
|
||||
pg_catalog | portuguese_stem | snowball stemmer for portuguese language
|
||||
pg_catalog | romanian_stem | snowball stemmer for romanian language
|
||||
pg_catalog | russian_stem | snowball stemmer for russian language
|
||||
pg_catalog | serbian_stem | snowball stemmer for serbian language
|
||||
pg_catalog | simple | simple dictionary: just lower case and check for stopword
|
||||
pg_catalog | spanish_stem | snowball stemmer for spanish language
|
||||
pg_catalog | swedish_stem | snowball stemmer for swedish language
|
||||
pg_catalog | tamil_stem | snowball stemmer for tamil language
|
||||
pg_catalog | turkish_stem | snowball stemmer for turkish language
|
||||
pg_catalog | yiddish_stem | snowball stemmer for yiddish language
|
||||
</screen>
|
||||
</para>
|
||||
</listitem>
|
||||
|
@ -43,6 +43,7 @@ OBJS += \
|
||||
stem_ISO_8859_2_romanian.o \
|
||||
stem_KOI8_R_russian.o \
|
||||
stem_UTF_8_arabic.o \
|
||||
stem_UTF_8_armenian.o \
|
||||
stem_UTF_8_basque.o \
|
||||
stem_UTF_8_catalan.o \
|
||||
stem_UTF_8_danish.o \
|
||||
@ -64,10 +65,12 @@ OBJS += \
|
||||
stem_UTF_8_portuguese.o \
|
||||
stem_UTF_8_romanian.o \
|
||||
stem_UTF_8_russian.o \
|
||||
stem_UTF_8_serbian.o \
|
||||
stem_UTF_8_spanish.o \
|
||||
stem_UTF_8_swedish.o \
|
||||
stem_UTF_8_tamil.o \
|
||||
stem_UTF_8_turkish.o
|
||||
stem_UTF_8_turkish.o \
|
||||
stem_UTF_8_yiddish.o
|
||||
|
||||
# first column is language name and also name of dictionary for not-all-ASCII
|
||||
# words, second is name of dictionary for all-ASCII words
|
||||
@ -75,6 +78,7 @@ OBJS += \
|
||||
# must come after creation of that language
|
||||
LANGUAGES= \
|
||||
arabic arabic \
|
||||
armenian armenian \
|
||||
basque basque \
|
||||
catalan catalan \
|
||||
danish danish \
|
||||
@ -95,10 +99,12 @@ LANGUAGES= \
|
||||
portuguese portuguese \
|
||||
romanian romanian \
|
||||
russian english \
|
||||
serbian serbian \
|
||||
spanish spanish \
|
||||
swedish swedish \
|
||||
tamil tamil \
|
||||
turkish turkish
|
||||
turkish turkish \
|
||||
yiddish yiddish
|
||||
|
||||
|
||||
SQLSCRIPT= snowball_create.sql
|
||||
|
@ -29,8 +29,8 @@ We choose to include the derived files in the PostgreSQL distribution
|
||||
because most installations will not have the Snowball compiler available.
|
||||
|
||||
We are currently synced with the Snowball git commit
|
||||
c70ed64f9d41c1032fba4e962b054f8e9d489a74 (tag v2.0.0)
|
||||
of 2019-10-02.
|
||||
4764395431c8f2a0b4fe18b816ab1fc966a45837 (tag v2.1.0)
|
||||
of 2021-01-21.
|
||||
|
||||
To update the PostgreSQL sources from a new Snowball version:
|
||||
|
||||
@ -59,7 +59,8 @@ do not require any changes.
|
||||
|
||||
4. Check whether any stemmer modules have been added or removed. If so, edit
|
||||
the OBJS list in Makefile, the list of #include's in dict_snowball.c, and the
|
||||
stemmer_modules[] table in dict_snowball.c. You might also need to change
|
||||
stemmer_modules[] table in dict_snowball.c, as well as the list in the
|
||||
documentation in textsearch.sgml. You might also need to change
|
||||
the LANGUAGES list in Makefile and tsearch_config_languages in initdb.c.
|
||||
|
||||
5. The various stopword files in stopwords/ must be downloaded
|
||||
|
@ -46,6 +46,7 @@
|
||||
#include "snowball/libstemmer/stem_ISO_8859_2_romanian.h"
|
||||
#include "snowball/libstemmer/stem_KOI8_R_russian.h"
|
||||
#include "snowball/libstemmer/stem_UTF_8_arabic.h"
|
||||
#include "snowball/libstemmer/stem_UTF_8_armenian.h"
|
||||
#include "snowball/libstemmer/stem_UTF_8_basque.h"
|
||||
#include "snowball/libstemmer/stem_UTF_8_catalan.h"
|
||||
#include "snowball/libstemmer/stem_UTF_8_danish.h"
|
||||
@ -67,10 +68,12 @@
|
||||
#include "snowball/libstemmer/stem_UTF_8_portuguese.h"
|
||||
#include "snowball/libstemmer/stem_UTF_8_romanian.h"
|
||||
#include "snowball/libstemmer/stem_UTF_8_russian.h"
|
||||
#include "snowball/libstemmer/stem_UTF_8_serbian.h"
|
||||
#include "snowball/libstemmer/stem_UTF_8_spanish.h"
|
||||
#include "snowball/libstemmer/stem_UTF_8_swedish.h"
|
||||
#include "snowball/libstemmer/stem_UTF_8_tamil.h"
|
||||
#include "snowball/libstemmer/stem_UTF_8_turkish.h"
|
||||
#include "snowball/libstemmer/stem_UTF_8_yiddish.h"
|
||||
|
||||
PG_MODULE_MAGIC;
|
||||
|
||||
@ -117,6 +120,7 @@ static const stemmer_module stemmer_modules[] =
|
||||
STEMMER_MODULE(romanian, PG_LATIN2, ISO_8859_2),
|
||||
STEMMER_MODULE(russian, PG_KOI8R, KOI8_R),
|
||||
STEMMER_MODULE(arabic, PG_UTF8, UTF_8),
|
||||
STEMMER_MODULE(armenian, PG_UTF8, UTF_8),
|
||||
STEMMER_MODULE(basque, PG_UTF8, UTF_8),
|
||||
STEMMER_MODULE(catalan, PG_UTF8, UTF_8),
|
||||
STEMMER_MODULE(danish, PG_UTF8, UTF_8),
|
||||
@ -138,10 +142,12 @@ static const stemmer_module stemmer_modules[] =
|
||||
STEMMER_MODULE(portuguese, PG_UTF8, UTF_8),
|
||||
STEMMER_MODULE(romanian, PG_UTF8, UTF_8),
|
||||
STEMMER_MODULE(russian, PG_UTF8, UTF_8),
|
||||
STEMMER_MODULE(serbian, PG_UTF8, UTF_8),
|
||||
STEMMER_MODULE(spanish, PG_UTF8, UTF_8),
|
||||
STEMMER_MODULE(swedish, PG_UTF8, UTF_8),
|
||||
STEMMER_MODULE(tamil, PG_UTF8, UTF_8),
|
||||
STEMMER_MODULE(turkish, PG_UTF8, UTF_8),
|
||||
STEMMER_MODULE(yiddish, PG_UTF8, UTF_8),
|
||||
|
||||
/*
|
||||
* Stemmer with PG_SQL_ASCII encoding should be valid for any server
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "header.h"
|
||||
|
||||
extern struct SN_env * SN_create_env(int S_size, int I_size, int B_size)
|
||||
extern struct SN_env * SN_create_env(int S_size, int I_size)
|
||||
{
|
||||
struct SN_env * z = (struct SN_env *) calloc(1, sizeof(struct SN_env));
|
||||
if (z == NULL) return NULL;
|
||||
@ -25,12 +25,6 @@ extern struct SN_env * SN_create_env(int S_size, int I_size, int B_size)
|
||||
if (z->I == NULL) goto error;
|
||||
}
|
||||
|
||||
if (B_size)
|
||||
{
|
||||
z->B = (unsigned char *) calloc(B_size, sizeof(unsigned char));
|
||||
if (z->B == NULL) goto error;
|
||||
}
|
||||
|
||||
return z;
|
||||
error:
|
||||
SN_close_env(z, S_size);
|
||||
@ -50,7 +44,6 @@ extern void SN_close_env(struct SN_env * z, int S_size)
|
||||
free(z->S);
|
||||
}
|
||||
free(z->I);
|
||||
free(z->B);
|
||||
if (z->p) lose_s(z->p);
|
||||
free(z);
|
||||
}
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#include "header.h"
|
||||
|
||||
@ -61,38 +61,38 @@ static const symbol s_0_31[4] = { 'e', 'r', 'e', 't' };
|
||||
|
||||
static const struct among a_0[32] =
|
||||
{
|
||||
/* 0 */ { 3, s_0_0, -1, 1, 0},
|
||||
/* 1 */ { 5, s_0_1, 0, 1, 0},
|
||||
/* 2 */ { 4, s_0_2, -1, 1, 0},
|
||||
/* 3 */ { 1, s_0_3, -1, 1, 0},
|
||||
/* 4 */ { 5, s_0_4, 3, 1, 0},
|
||||
/* 5 */ { 4, s_0_5, 3, 1, 0},
|
||||
/* 6 */ { 6, s_0_6, 5, 1, 0},
|
||||
/* 7 */ { 3, s_0_7, 3, 1, 0},
|
||||
/* 8 */ { 4, s_0_8, 3, 1, 0},
|
||||
/* 9 */ { 3, s_0_9, 3, 1, 0},
|
||||
/* 10 */ { 2, s_0_10, -1, 1, 0},
|
||||
/* 11 */ { 5, s_0_11, 10, 1, 0},
|
||||
/* 12 */ { 4, s_0_12, 10, 1, 0},
|
||||
/* 13 */ { 2, s_0_13, -1, 1, 0},
|
||||
/* 14 */ { 5, s_0_14, 13, 1, 0},
|
||||
/* 15 */ { 4, s_0_15, 13, 1, 0},
|
||||
/* 16 */ { 1, s_0_16, -1, 2, 0},
|
||||
/* 17 */ { 4, s_0_17, 16, 1, 0},
|
||||
/* 18 */ { 2, s_0_18, 16, 1, 0},
|
||||
/* 19 */ { 5, s_0_19, 18, 1, 0},
|
||||
/* 20 */ { 7, s_0_20, 19, 1, 0},
|
||||
/* 21 */ { 4, s_0_21, 18, 1, 0},
|
||||
/* 22 */ { 5, s_0_22, 18, 1, 0},
|
||||
/* 23 */ { 4, s_0_23, 18, 1, 0},
|
||||
/* 24 */ { 3, s_0_24, 16, 1, 0},
|
||||
/* 25 */ { 6, s_0_25, 24, 1, 0},
|
||||
/* 26 */ { 5, s_0_26, 24, 1, 0},
|
||||
/* 27 */ { 3, s_0_27, 16, 1, 0},
|
||||
/* 28 */ { 3, s_0_28, 16, 1, 0},
|
||||
/* 29 */ { 5, s_0_29, 28, 1, 0},
|
||||
/* 30 */ { 2, s_0_30, -1, 1, 0},
|
||||
/* 31 */ { 4, s_0_31, 30, 1, 0}
|
||||
{ 3, s_0_0, -1, 1, 0},
|
||||
{ 5, s_0_1, 0, 1, 0},
|
||||
{ 4, s_0_2, -1, 1, 0},
|
||||
{ 1, s_0_3, -1, 1, 0},
|
||||
{ 5, s_0_4, 3, 1, 0},
|
||||
{ 4, s_0_5, 3, 1, 0},
|
||||
{ 6, s_0_6, 5, 1, 0},
|
||||
{ 3, s_0_7, 3, 1, 0},
|
||||
{ 4, s_0_8, 3, 1, 0},
|
||||
{ 3, s_0_9, 3, 1, 0},
|
||||
{ 2, s_0_10, -1, 1, 0},
|
||||
{ 5, s_0_11, 10, 1, 0},
|
||||
{ 4, s_0_12, 10, 1, 0},
|
||||
{ 2, s_0_13, -1, 1, 0},
|
||||
{ 5, s_0_14, 13, 1, 0},
|
||||
{ 4, s_0_15, 13, 1, 0},
|
||||
{ 1, s_0_16, -1, 2, 0},
|
||||
{ 4, s_0_17, 16, 1, 0},
|
||||
{ 2, s_0_18, 16, 1, 0},
|
||||
{ 5, s_0_19, 18, 1, 0},
|
||||
{ 7, s_0_20, 19, 1, 0},
|
||||
{ 4, s_0_21, 18, 1, 0},
|
||||
{ 5, s_0_22, 18, 1, 0},
|
||||
{ 4, s_0_23, 18, 1, 0},
|
||||
{ 3, s_0_24, 16, 1, 0},
|
||||
{ 6, s_0_25, 24, 1, 0},
|
||||
{ 5, s_0_26, 24, 1, 0},
|
||||
{ 3, s_0_27, 16, 1, 0},
|
||||
{ 3, s_0_28, 16, 1, 0},
|
||||
{ 5, s_0_29, 28, 1, 0},
|
||||
{ 2, s_0_30, -1, 1, 0},
|
||||
{ 4, s_0_31, 30, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_1_0[2] = { 'g', 'd' };
|
||||
@ -102,10 +102,10 @@ static const symbol s_1_3[2] = { 'k', 't' };
|
||||
|
||||
static const struct among a_1[4] =
|
||||
{
|
||||
/* 0 */ { 2, s_1_0, -1, -1, 0},
|
||||
/* 1 */ { 2, s_1_1, -1, -1, 0},
|
||||
/* 2 */ { 2, s_1_2, -1, -1, 0},
|
||||
/* 3 */ { 2, s_1_3, -1, -1, 0}
|
||||
{ 2, s_1_0, -1, -1, 0},
|
||||
{ 2, s_1_1, -1, -1, 0},
|
||||
{ 2, s_1_2, -1, -1, 0},
|
||||
{ 2, s_1_3, -1, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_2_0[2] = { 'i', 'g' };
|
||||
@ -116,11 +116,11 @@ static const symbol s_2_4[4] = { 'l', 0xF8, 's', 't' };
|
||||
|
||||
static const struct among a_2[5] =
|
||||
{
|
||||
/* 0 */ { 2, s_2_0, -1, 1, 0},
|
||||
/* 1 */ { 3, s_2_1, 0, 1, 0},
|
||||
/* 2 */ { 4, s_2_2, 1, 1, 0},
|
||||
/* 3 */ { 3, s_2_3, -1, 1, 0},
|
||||
/* 4 */ { 4, s_2_4, -1, 2, 0}
|
||||
{ 2, s_2_0, -1, 1, 0},
|
||||
{ 3, s_2_1, 0, 1, 0},
|
||||
{ 4, s_2_2, 1, 1, 0},
|
||||
{ 3, s_2_3, -1, 1, 0},
|
||||
{ 4, s_2_4, -1, 2, 0}
|
||||
};
|
||||
|
||||
static const unsigned char g_c[] = { 119, 223, 119, 1 };
|
||||
@ -133,52 +133,50 @@ static const symbol s_0[] = { 's', 't' };
|
||||
static const symbol s_1[] = { 'i', 'g' };
|
||||
static const symbol s_2[] = { 'l', 0xF8, 's' };
|
||||
|
||||
static int r_mark_regions(struct SN_env * z) { /* forwardmode */
|
||||
z->I[0] = z->l; /* $p1 = <integer expression>, line 33 */
|
||||
{ int c_test1 = z->c; /* test, line 35 */
|
||||
{ int ret = z->c + 3; /* hop, line 35 */
|
||||
if (0 > ret || ret > z->l) return 0;
|
||||
z->c = ret;
|
||||
}
|
||||
z->I[1] = z->c; /* setmark x, line 35 */
|
||||
static int r_mark_regions(struct SN_env * z) {
|
||||
z->I[1] = z->l;
|
||||
{ int c_test1 = z->c;
|
||||
z->c = z->c + 3;
|
||||
if (z->c > z->l) return 0;
|
||||
z->I[0] = z->c;
|
||||
z->c = c_test1;
|
||||
}
|
||||
if (out_grouping(z, g_v, 97, 248, 1) < 0) return 0; /* goto */ /* grouping v, line 36 */
|
||||
{ /* gopast */ /* non v, line 36 */
|
||||
if (out_grouping(z, g_v, 97, 248, 1) < 0) return 0;
|
||||
{
|
||||
int ret = in_grouping(z, g_v, 97, 248, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[0] = z->c; /* setmark p1, line 36 */
|
||||
/* try, line 37 */
|
||||
if (!(z->I[0] < z->I[1])) goto lab0; /* $(<integer expression> < <integer expression>), line 37 */
|
||||
z->I[0] = z->I[1]; /* $p1 = <integer expression>, line 37 */
|
||||
z->I[1] = z->c;
|
||||
|
||||
if (!(z->I[1] < z->I[0])) goto lab0;
|
||||
z->I[1] = z->I[0];
|
||||
lab0:
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_main_suffix(struct SN_env * z) { /* backwardmode */
|
||||
static int r_main_suffix(struct SN_env * z) {
|
||||
int among_var;
|
||||
|
||||
{ int mlimit1; /* setlimit, line 43 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 43 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1851440 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; } /* substring, line 43 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1851440 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; }
|
||||
among_var = find_among_b(z, a_0, 32);
|
||||
if (!(among_var)) { z->lb = mlimit1; return 0; }
|
||||
z->bra = z->c; /* ], line 43 */
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit1;
|
||||
}
|
||||
switch (among_var) { /* among, line 44 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 50 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (in_grouping_b(z, g_s_ending, 97, 229, 0)) return 0; /* grouping s_ending, line 52 */
|
||||
{ int ret = slice_del(z); /* delete, line 52 */
|
||||
if (in_grouping_b(z, g_s_ending, 97, 229, 0)) return 0;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -186,67 +184,67 @@ static int r_main_suffix(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_consonant_pair(struct SN_env * z) { /* backwardmode */
|
||||
{ int m_test1 = z->l - z->c; /* test, line 57 */
|
||||
static int r_consonant_pair(struct SN_env * z) {
|
||||
{ int m_test1 = z->l - z->c;
|
||||
|
||||
{ int mlimit2; /* setlimit, line 58 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit2 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 58 */
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 100 && z->p[z->c - 1] != 116)) { z->lb = mlimit2; return 0; } /* substring, line 58 */
|
||||
{ int mlimit2;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit2 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 100 && z->p[z->c - 1] != 116)) { z->lb = mlimit2; return 0; }
|
||||
if (!(find_among_b(z, a_1, 4))) { z->lb = mlimit2; return 0; }
|
||||
z->bra = z->c; /* ], line 58 */
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit2;
|
||||
}
|
||||
z->c = z->l - m_test1;
|
||||
}
|
||||
if (z->c <= z->lb) return 0;
|
||||
z->c--; /* next, line 64 */
|
||||
z->bra = z->c; /* ], line 64 */
|
||||
{ int ret = slice_del(z); /* delete, line 64 */
|
||||
z->c--;
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_other_suffix(struct SN_env * z) { /* backwardmode */
|
||||
static int r_other_suffix(struct SN_env * z) {
|
||||
int among_var;
|
||||
{ int m1 = z->l - z->c; (void)m1; /* do, line 68 */
|
||||
z->ket = z->c; /* [, line 68 */
|
||||
if (!(eq_s_b(z, 2, s_0))) goto lab0; /* literal, line 68 */
|
||||
z->bra = z->c; /* ], line 68 */
|
||||
if (!(eq_s_b(z, 2, s_1))) goto lab0; /* literal, line 68 */
|
||||
{ int ret = slice_del(z); /* delete, line 68 */
|
||||
{ int m1 = z->l - z->c; (void)m1;
|
||||
z->ket = z->c;
|
||||
if (!(eq_s_b(z, 2, s_0))) goto lab0;
|
||||
z->bra = z->c;
|
||||
if (!(eq_s_b(z, 2, s_1))) goto lab0;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
lab0:
|
||||
z->c = z->l - m1;
|
||||
}
|
||||
|
||||
{ int mlimit2; /* setlimit, line 69 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit2 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 69 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1572992 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit2; return 0; } /* substring, line 69 */
|
||||
{ int mlimit2;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit2 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1572992 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit2; return 0; }
|
||||
among_var = find_among_b(z, a_2, 5);
|
||||
if (!(among_var)) { z->lb = mlimit2; return 0; }
|
||||
z->bra = z->c; /* ], line 69 */
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit2;
|
||||
}
|
||||
switch (among_var) { /* among, line 70 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 72 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int m3 = z->l - z->c; (void)m3; /* do, line 72 */
|
||||
{ int ret = r_consonant_pair(z); /* call consonant_pair, line 72 */
|
||||
{ int m3 = z->l - z->c; (void)m3;
|
||||
{ int ret = r_consonant_pair(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m3;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 3, s_2); /* <-, line 74 */
|
||||
{ int ret = slice_from_s(z, 3, s_2);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -254,54 +252,54 @@ static int r_other_suffix(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_undouble(struct SN_env * z) { /* backwardmode */
|
||||
static int r_undouble(struct SN_env * z) {
|
||||
|
||||
{ int mlimit1; /* setlimit, line 78 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 78 */
|
||||
if (in_grouping_b(z, g_c, 98, 122, 0)) { z->lb = mlimit1; return 0; } /* grouping c, line 78 */
|
||||
z->bra = z->c; /* ], line 78 */
|
||||
z->S[0] = slice_to(z, z->S[0]); /* -> ch, line 78 */
|
||||
if (z->S[0] == 0) return -1; /* -> ch, line 78 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
if (in_grouping_b(z, g_c, 98, 122, 0)) { z->lb = mlimit1; return 0; }
|
||||
z->bra = z->c;
|
||||
z->S[0] = slice_to(z, z->S[0]);
|
||||
if (z->S[0] == 0) return -1;
|
||||
z->lb = mlimit1;
|
||||
}
|
||||
if (!(eq_v_b(z, z->S[0]))) return 0; /* name ch, line 79 */
|
||||
{ int ret = slice_del(z); /* delete, line 80 */
|
||||
if (!(eq_v_b(z, z->S[0]))) return 0;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern int danish_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
|
||||
{ int c1 = z->c; /* do, line 86 */
|
||||
{ int ret = r_mark_regions(z); /* call mark_regions, line 86 */
|
||||
extern int danish_ISO_8859_1_stem(struct SN_env * z) {
|
||||
{ int c1 = z->c;
|
||||
{ int ret = r_mark_regions(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = c1;
|
||||
}
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 87 */
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
{ int m2 = z->l - z->c; (void)m2; /* do, line 88 */
|
||||
{ int ret = r_main_suffix(z); /* call main_suffix, line 88 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
{ int ret = r_main_suffix(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m2;
|
||||
}
|
||||
{ int m3 = z->l - z->c; (void)m3; /* do, line 89 */
|
||||
{ int ret = r_consonant_pair(z); /* call consonant_pair, line 89 */
|
||||
{ int m3 = z->l - z->c; (void)m3;
|
||||
{ int ret = r_consonant_pair(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m3;
|
||||
}
|
||||
{ int m4 = z->l - z->c; (void)m4; /* do, line 90 */
|
||||
{ int ret = r_other_suffix(z); /* call other_suffix, line 90 */
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
{ int ret = r_other_suffix(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m4;
|
||||
}
|
||||
{ int m5 = z->l - z->c; (void)m5; /* do, line 91 */
|
||||
{ int ret = r_undouble(z); /* call undouble, line 91 */
|
||||
{ int m5 = z->l - z->c; (void)m5;
|
||||
{ int ret = r_undouble(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m5;
|
||||
@ -310,7 +308,7 @@ extern int danish_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern struct SN_env * danish_ISO_8859_1_create_env(void) { return SN_create_env(1, 2, 0); }
|
||||
extern struct SN_env * danish_ISO_8859_1_create_env(void) { return SN_create_env(1, 2); }
|
||||
|
||||
extern void danish_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 1); }
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#include "header.h"
|
||||
|
||||
@ -43,17 +43,17 @@ static const symbol s_0_10[1] = { 0xFC };
|
||||
|
||||
static const struct among a_0[11] =
|
||||
{
|
||||
/* 0 */ { 0, 0, -1, 6, 0},
|
||||
/* 1 */ { 1, s_0_1, 0, 1, 0},
|
||||
/* 2 */ { 1, s_0_2, 0, 1, 0},
|
||||
/* 3 */ { 1, s_0_3, 0, 2, 0},
|
||||
/* 4 */ { 1, s_0_4, 0, 2, 0},
|
||||
/* 5 */ { 1, s_0_5, 0, 3, 0},
|
||||
/* 6 */ { 1, s_0_6, 0, 3, 0},
|
||||
/* 7 */ { 1, s_0_7, 0, 4, 0},
|
||||
/* 8 */ { 1, s_0_8, 0, 4, 0},
|
||||
/* 9 */ { 1, s_0_9, 0, 5, 0},
|
||||
/* 10 */ { 1, s_0_10, 0, 5, 0}
|
||||
{ 0, 0, -1, 6, 0},
|
||||
{ 1, s_0_1, 0, 1, 0},
|
||||
{ 1, s_0_2, 0, 1, 0},
|
||||
{ 1, s_0_3, 0, 2, 0},
|
||||
{ 1, s_0_4, 0, 2, 0},
|
||||
{ 1, s_0_5, 0, 3, 0},
|
||||
{ 1, s_0_6, 0, 3, 0},
|
||||
{ 1, s_0_7, 0, 4, 0},
|
||||
{ 1, s_0_8, 0, 4, 0},
|
||||
{ 1, s_0_9, 0, 5, 0},
|
||||
{ 1, s_0_10, 0, 5, 0}
|
||||
};
|
||||
|
||||
static const symbol s_1_1[1] = { 'I' };
|
||||
@ -61,9 +61,9 @@ static const symbol s_1_2[1] = { 'Y' };
|
||||
|
||||
static const struct among a_1[3] =
|
||||
{
|
||||
/* 0 */ { 0, 0, -1, 3, 0},
|
||||
/* 1 */ { 1, s_1_1, 0, 2, 0},
|
||||
/* 2 */ { 1, s_1_2, 0, 1, 0}
|
||||
{ 0, 0, -1, 3, 0},
|
||||
{ 1, s_1_1, 0, 2, 0},
|
||||
{ 1, s_1_2, 0, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_2_0[2] = { 'd', 'd' };
|
||||
@ -72,9 +72,9 @@ static const symbol s_2_2[2] = { 't', 't' };
|
||||
|
||||
static const struct among a_2[3] =
|
||||
{
|
||||
/* 0 */ { 2, s_2_0, -1, -1, 0},
|
||||
/* 1 */ { 2, s_2_1, -1, -1, 0},
|
||||
/* 2 */ { 2, s_2_2, -1, -1, 0}
|
||||
{ 2, s_2_0, -1, -1, 0},
|
||||
{ 2, s_2_1, -1, -1, 0},
|
||||
{ 2, s_2_2, -1, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_3_0[3] = { 'e', 'n', 'e' };
|
||||
@ -85,11 +85,11 @@ static const symbol s_3_4[1] = { 's' };
|
||||
|
||||
static const struct among a_3[5] =
|
||||
{
|
||||
/* 0 */ { 3, s_3_0, -1, 2, 0},
|
||||
/* 1 */ { 2, s_3_1, -1, 3, 0},
|
||||
/* 2 */ { 2, s_3_2, -1, 2, 0},
|
||||
/* 3 */ { 5, s_3_3, 2, 1, 0},
|
||||
/* 4 */ { 1, s_3_4, -1, 3, 0}
|
||||
{ 3, s_3_0, -1, 2, 0},
|
||||
{ 2, s_3_1, -1, 3, 0},
|
||||
{ 2, s_3_2, -1, 2, 0},
|
||||
{ 5, s_3_3, 2, 1, 0},
|
||||
{ 1, s_3_4, -1, 3, 0}
|
||||
};
|
||||
|
||||
static const symbol s_4_0[3] = { 'e', 'n', 'd' };
|
||||
@ -101,12 +101,12 @@ static const symbol s_4_5[3] = { 'b', 'a', 'r' };
|
||||
|
||||
static const struct among a_4[6] =
|
||||
{
|
||||
/* 0 */ { 3, s_4_0, -1, 1, 0},
|
||||
/* 1 */ { 2, s_4_1, -1, 2, 0},
|
||||
/* 2 */ { 3, s_4_2, -1, 1, 0},
|
||||
/* 3 */ { 4, s_4_3, -1, 3, 0},
|
||||
/* 4 */ { 4, s_4_4, -1, 4, 0},
|
||||
/* 5 */ { 3, s_4_5, -1, 5, 0}
|
||||
{ 3, s_4_0, -1, 1, 0},
|
||||
{ 2, s_4_1, -1, 2, 0},
|
||||
{ 3, s_4_2, -1, 1, 0},
|
||||
{ 4, s_4_3, -1, 3, 0},
|
||||
{ 4, s_4_4, -1, 4, 0},
|
||||
{ 3, s_4_5, -1, 5, 0}
|
||||
};
|
||||
|
||||
static const symbol s_5_0[2] = { 'a', 'a' };
|
||||
@ -116,10 +116,10 @@ static const symbol s_5_3[2] = { 'u', 'u' };
|
||||
|
||||
static const struct among a_5[4] =
|
||||
{
|
||||
/* 0 */ { 2, s_5_0, -1, -1, 0},
|
||||
/* 1 */ { 2, s_5_1, -1, -1, 0},
|
||||
/* 2 */ { 2, s_5_2, -1, -1, 0},
|
||||
/* 3 */ { 2, s_5_3, -1, -1, 0}
|
||||
{ 2, s_5_0, -1, -1, 0},
|
||||
{ 2, s_5_1, -1, -1, 0},
|
||||
{ 2, s_5_2, -1, -1, 0},
|
||||
{ 2, s_5_3, -1, -1, 0}
|
||||
};
|
||||
|
||||
static const unsigned char g_v[] = { 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128 };
|
||||
@ -144,46 +144,45 @@ static const symbol s_12[] = { 'h', 'e', 'i', 'd' };
|
||||
static const symbol s_13[] = { 'e', 'n' };
|
||||
static const symbol s_14[] = { 'i', 'g' };
|
||||
|
||||
static int r_prelude(struct SN_env * z) { /* forwardmode */
|
||||
static int r_prelude(struct SN_env * z) {
|
||||
int among_var;
|
||||
{ int c_test1 = z->c; /* test, line 42 */
|
||||
/* repeat, line 42 */
|
||||
|
||||
while(1) { int c2 = z->c;
|
||||
z->bra = z->c; /* [, line 43 */
|
||||
if (z->c >= z->l || z->p[z->c + 0] >> 5 != 7 || !((340306450 >> (z->p[z->c + 0] & 0x1f)) & 1)) among_var = 6; else /* substring, line 43 */
|
||||
{ int c_test1 = z->c;
|
||||
while(1) {
|
||||
int c2 = z->c;
|
||||
z->bra = z->c;
|
||||
if (z->c >= z->l || z->p[z->c + 0] >> 5 != 7 || !((340306450 >> (z->p[z->c + 0] & 0x1f)) & 1)) among_var = 6; else
|
||||
among_var = find_among(z, a_0, 11);
|
||||
if (!(among_var)) goto lab0;
|
||||
z->ket = z->c; /* ], line 43 */
|
||||
switch (among_var) { /* among, line 43 */
|
||||
z->ket = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_from_s(z, 1, s_0); /* <-, line 45 */
|
||||
{ int ret = slice_from_s(z, 1, s_0);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 1, s_1); /* <-, line 47 */
|
||||
{ int ret = slice_from_s(z, 1, s_1);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_from_s(z, 1, s_2); /* <-, line 49 */
|
||||
{ int ret = slice_from_s(z, 1, s_2);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
{ int ret = slice_from_s(z, 1, s_3); /* <-, line 51 */
|
||||
{ int ret = slice_from_s(z, 1, s_3);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
{ int ret = slice_from_s(z, 1, s_4); /* <-, line 53 */
|
||||
{ int ret = slice_from_s(z, 1, s_4);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 6:
|
||||
if (z->c >= z->l) goto lab0;
|
||||
z->c++; /* next, line 54 */
|
||||
z->c++;
|
||||
break;
|
||||
}
|
||||
continue;
|
||||
@ -193,39 +192,38 @@ static int r_prelude(struct SN_env * z) { /* forwardmode */
|
||||
}
|
||||
z->c = c_test1;
|
||||
}
|
||||
{ int c3 = z->c; /* try, line 57 */
|
||||
z->bra = z->c; /* [, line 57 */
|
||||
if (z->c == z->l || z->p[z->c] != 'y') { z->c = c3; goto lab1; } /* literal, line 57 */
|
||||
{ int c3 = z->c;
|
||||
z->bra = z->c;
|
||||
if (z->c == z->l || z->p[z->c] != 'y') { z->c = c3; goto lab1; }
|
||||
z->c++;
|
||||
z->ket = z->c; /* ], line 57 */
|
||||
{ int ret = slice_from_s(z, 1, s_5); /* <-, line 57 */
|
||||
z->ket = z->c;
|
||||
{ int ret = slice_from_s(z, 1, s_5);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
lab1:
|
||||
;
|
||||
}
|
||||
/* repeat, line 58 */
|
||||
|
||||
while(1) { int c4 = z->c;
|
||||
while(1) { /* goto, line 58 */
|
||||
while(1) {
|
||||
int c4 = z->c;
|
||||
while(1) {
|
||||
int c5 = z->c;
|
||||
if (in_grouping(z, g_v, 97, 232, 0)) goto lab3; /* grouping v, line 59 */
|
||||
z->bra = z->c; /* [, line 59 */
|
||||
{ int c6 = z->c; /* or, line 59 */
|
||||
if (z->c == z->l || z->p[z->c] != 'i') goto lab5; /* literal, line 59 */
|
||||
if (in_grouping(z, g_v, 97, 232, 0)) goto lab3;
|
||||
z->bra = z->c;
|
||||
{ int c6 = z->c;
|
||||
if (z->c == z->l || z->p[z->c] != 'i') goto lab5;
|
||||
z->c++;
|
||||
z->ket = z->c; /* ], line 59 */
|
||||
if (in_grouping(z, g_v, 97, 232, 0)) goto lab5; /* grouping v, line 59 */
|
||||
{ int ret = slice_from_s(z, 1, s_6); /* <-, line 59 */
|
||||
z->ket = z->c;
|
||||
if (in_grouping(z, g_v, 97, 232, 0)) goto lab5;
|
||||
{ int ret = slice_from_s(z, 1, s_6);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
goto lab4;
|
||||
lab5:
|
||||
z->c = c6;
|
||||
if (z->c == z->l || z->p[z->c] != 'y') goto lab3; /* literal, line 60 */
|
||||
if (z->c == z->l || z->p[z->c] != 'y') goto lab3;
|
||||
z->c++;
|
||||
z->ket = z->c; /* ], line 60 */
|
||||
{ int ret = slice_from_s(z, 1, s_7); /* <-, line 60 */
|
||||
z->ket = z->c;
|
||||
{ int ret = slice_from_s(z, 1, s_7);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
}
|
||||
@ -235,7 +233,7 @@ static int r_prelude(struct SN_env * z) { /* forwardmode */
|
||||
lab3:
|
||||
z->c = c5;
|
||||
if (z->c >= z->l) goto lab2;
|
||||
z->c++; /* goto, line 58 */
|
||||
z->c++;
|
||||
}
|
||||
continue;
|
||||
lab2:
|
||||
@ -245,62 +243,61 @@ static int r_prelude(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_mark_regions(struct SN_env * z) { /* forwardmode */
|
||||
z->I[0] = z->l; /* $p1 = <integer expression>, line 66 */
|
||||
z->I[1] = z->l; /* $p2 = <integer expression>, line 67 */
|
||||
{ /* gopast */ /* grouping v, line 69 */
|
||||
static int r_mark_regions(struct SN_env * z) {
|
||||
z->I[1] = z->l;
|
||||
z->I[0] = z->l;
|
||||
{
|
||||
int ret = out_grouping(z, g_v, 97, 232, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
{ /* gopast */ /* non v, line 69 */
|
||||
{
|
||||
int ret = in_grouping(z, g_v, 97, 232, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[0] = z->c; /* setmark p1, line 69 */
|
||||
/* try, line 70 */
|
||||
if (!(z->I[0] < 3)) goto lab0; /* $(<integer expression> < <integer expression>), line 70 */
|
||||
z->I[0] = 3; /* $p1 = <integer expression>, line 70 */
|
||||
z->I[1] = z->c;
|
||||
|
||||
if (!(z->I[1] < 3)) goto lab0;
|
||||
z->I[1] = 3;
|
||||
lab0:
|
||||
{ /* gopast */ /* grouping v, line 71 */
|
||||
{
|
||||
int ret = out_grouping(z, g_v, 97, 232, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
{ /* gopast */ /* non v, line 71 */
|
||||
{
|
||||
int ret = in_grouping(z, g_v, 97, 232, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[1] = z->c; /* setmark p2, line 71 */
|
||||
z->I[0] = z->c;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_postlude(struct SN_env * z) { /* forwardmode */
|
||||
static int r_postlude(struct SN_env * z) {
|
||||
int among_var;
|
||||
/* repeat, line 75 */
|
||||
|
||||
while(1) { int c1 = z->c;
|
||||
z->bra = z->c; /* [, line 77 */
|
||||
if (z->c >= z->l || (z->p[z->c + 0] != 73 && z->p[z->c + 0] != 89)) among_var = 3; else /* substring, line 77 */
|
||||
while(1) {
|
||||
int c1 = z->c;
|
||||
z->bra = z->c;
|
||||
if (z->c >= z->l || (z->p[z->c + 0] != 73 && z->p[z->c + 0] != 89)) among_var = 3; else
|
||||
among_var = find_among(z, a_1, 3);
|
||||
if (!(among_var)) goto lab0;
|
||||
z->ket = z->c; /* ], line 77 */
|
||||
switch (among_var) { /* among, line 77 */
|
||||
z->ket = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_from_s(z, 1, s_8); /* <-, line 78 */
|
||||
{ int ret = slice_from_s(z, 1, s_8);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 1, s_9); /* <-, line 79 */
|
||||
{ int ret = slice_from_s(z, 1, s_9);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
if (z->c >= z->l) goto lab0;
|
||||
z->c++; /* next, line 80 */
|
||||
z->c++;
|
||||
break;
|
||||
}
|
||||
continue;
|
||||
@ -311,109 +308,109 @@ static int r_postlude(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_R1(struct SN_env * z) { /* backwardmode */
|
||||
if (!(z->I[0] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 87 */
|
||||
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) { /* backwardmode */
|
||||
if (!(z->I[1] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 88 */
|
||||
static int r_R2(struct SN_env * z) {
|
||||
if (!(z->I[0] <= z->c)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_undouble(struct SN_env * z) { /* backwardmode */
|
||||
{ int m_test1 = z->l - z->c; /* test, line 91 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1050640 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* among, line 91 */
|
||||
static int r_undouble(struct SN_env * z) {
|
||||
{ int m_test1 = z->l - z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1050640 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
|
||||
if (!(find_among_b(z, a_2, 3))) return 0;
|
||||
z->c = z->l - m_test1;
|
||||
}
|
||||
z->ket = z->c; /* [, line 91 */
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb) return 0;
|
||||
z->c--; /* next, line 91 */
|
||||
z->bra = z->c; /* ], line 91 */
|
||||
{ int ret = slice_del(z); /* delete, line 91 */
|
||||
z->c--;
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_e_ending(struct SN_env * z) { /* backwardmode */
|
||||
z->B[0] = 0; /* unset e_found, line 95 */
|
||||
z->ket = z->c; /* [, line 96 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') return 0; /* literal, line 96 */
|
||||
static int r_e_ending(struct SN_env * z) {
|
||||
z->I[2] = 0;
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') return 0;
|
||||
z->c--;
|
||||
z->bra = z->c; /* ], line 96 */
|
||||
{ int ret = r_R1(z); /* call R1, line 96 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int m_test1 = z->l - z->c; /* test, line 96 */
|
||||
if (out_grouping_b(z, g_v, 97, 232, 0)) return 0; /* non v, line 96 */
|
||||
{ int m_test1 = z->l - z->c;
|
||||
if (out_grouping_b(z, g_v, 97, 232, 0)) return 0;
|
||||
z->c = z->l - m_test1;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 96 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->B[0] = 1; /* set e_found, line 97 */
|
||||
{ int ret = r_undouble(z); /* call undouble, line 98 */
|
||||
z->I[2] = 1;
|
||||
{ int ret = r_undouble(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_en_ending(struct SN_env * z) { /* backwardmode */
|
||||
{ int ret = r_R1(z); /* call R1, line 102 */
|
||||
static int r_en_ending(struct SN_env * z) {
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int m1 = z->l - z->c; (void)m1; /* and, line 102 */
|
||||
if (out_grouping_b(z, g_v, 97, 232, 0)) return 0; /* non v, line 102 */
|
||||
{ int m1 = z->l - z->c; (void)m1;
|
||||
if (out_grouping_b(z, g_v, 97, 232, 0)) return 0;
|
||||
z->c = z->l - m1;
|
||||
{ int m2 = z->l - z->c; (void)m2; /* not, line 102 */
|
||||
if (!(eq_s_b(z, 3, s_10))) goto lab0; /* literal, line 102 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
if (!(eq_s_b(z, 3, s_10))) goto lab0;
|
||||
return 0;
|
||||
lab0:
|
||||
z->c = z->l - m2;
|
||||
}
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 102 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int ret = r_undouble(z); /* call undouble, line 103 */
|
||||
{ int ret = r_undouble(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
|
||||
static int r_standard_suffix(struct SN_env * z) {
|
||||
int among_var;
|
||||
{ int m1 = z->l - z->c; (void)m1; /* do, line 107 */
|
||||
z->ket = z->c; /* [, line 108 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((540704 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab0; /* substring, line 108 */
|
||||
{ int m1 = z->l - z->c; (void)m1;
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((540704 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab0;
|
||||
among_var = find_among_b(z, a_3, 5);
|
||||
if (!(among_var)) goto lab0;
|
||||
z->bra = z->c; /* ], line 108 */
|
||||
switch (among_var) { /* among, line 108 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = r_R1(z); /* call R1, line 110 */
|
||||
{ int ret = r_R1(z);
|
||||
if (ret == 0) goto lab0;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int ret = slice_from_s(z, 4, s_11); /* <-, line 110 */
|
||||
{ int ret = slice_from_s(z, 4, s_11);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = r_en_ending(z); /* call en_ending, line 113 */
|
||||
{ int ret = r_en_ending(z);
|
||||
if (ret == 0) goto lab0;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = r_R1(z); /* call R1, line 116 */
|
||||
{ int ret = r_R1(z);
|
||||
if (ret == 0) goto lab0;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
if (out_grouping_b(z, g_v_j, 97, 232, 0)) goto lab0; /* non v_j, line 116 */
|
||||
{ int ret = slice_del(z); /* delete, line 116 */
|
||||
if (out_grouping_b(z, g_v_j, 97, 232, 0)) goto lab0;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -421,77 +418,77 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
|
||||
lab0:
|
||||
z->c = z->l - m1;
|
||||
}
|
||||
{ int m2 = z->l - z->c; (void)m2; /* do, line 120 */
|
||||
{ int ret = r_e_ending(z); /* call e_ending, line 120 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
{ int ret = r_e_ending(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m2;
|
||||
}
|
||||
{ int m3 = z->l - z->c; (void)m3; /* do, line 122 */
|
||||
z->ket = z->c; /* [, line 122 */
|
||||
if (!(eq_s_b(z, 4, s_12))) goto lab1; /* literal, line 122 */
|
||||
z->bra = z->c; /* ], line 122 */
|
||||
{ int ret = r_R2(z); /* call R2, line 122 */
|
||||
{ int m3 = z->l - z->c; (void)m3;
|
||||
z->ket = z->c;
|
||||
if (!(eq_s_b(z, 4, s_12))) goto lab1;
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R2(z);
|
||||
if (ret == 0) goto lab1;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int m4 = z->l - z->c; (void)m4; /* not, line 122 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'c') goto lab2; /* literal, line 122 */
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'c') goto lab2;
|
||||
z->c--;
|
||||
goto lab1;
|
||||
lab2:
|
||||
z->c = z->l - m4;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 122 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->ket = z->c; /* [, line 123 */
|
||||
if (!(eq_s_b(z, 2, s_13))) goto lab1; /* literal, line 123 */
|
||||
z->bra = z->c; /* ], line 123 */
|
||||
{ int ret = r_en_ending(z); /* call en_ending, line 123 */
|
||||
z->ket = z->c;
|
||||
if (!(eq_s_b(z, 2, s_13))) goto lab1;
|
||||
z->bra = z->c;
|
||||
{ int ret = r_en_ending(z);
|
||||
if (ret == 0) goto lab1;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
lab1:
|
||||
z->c = z->l - m3;
|
||||
}
|
||||
{ int m5 = z->l - z->c; (void)m5; /* do, line 126 */
|
||||
z->ket = z->c; /* [, line 127 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((264336 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab3; /* substring, line 127 */
|
||||
{ int m5 = z->l - z->c; (void)m5;
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((264336 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab3;
|
||||
among_var = find_among_b(z, a_4, 6);
|
||||
if (!(among_var)) goto lab3;
|
||||
z->bra = z->c; /* ], line 127 */
|
||||
switch (among_var) { /* among, line 127 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = r_R2(z); /* call R2, line 129 */
|
||||
{ int ret = r_R2(z);
|
||||
if (ret == 0) goto lab3;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 129 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int m6 = z->l - z->c; (void)m6; /* or, line 130 */
|
||||
z->ket = z->c; /* [, line 130 */
|
||||
if (!(eq_s_b(z, 2, s_14))) goto lab5; /* literal, line 130 */
|
||||
z->bra = z->c; /* ], line 130 */
|
||||
{ int ret = r_R2(z); /* call R2, line 130 */
|
||||
{ int m6 = z->l - z->c; (void)m6;
|
||||
z->ket = z->c;
|
||||
if (!(eq_s_b(z, 2, s_14))) goto lab5;
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R2(z);
|
||||
if (ret == 0) goto lab5;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int m7 = z->l - z->c; (void)m7; /* not, line 130 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab6; /* literal, line 130 */
|
||||
{ int m7 = z->l - z->c; (void)m7;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab6;
|
||||
z->c--;
|
||||
goto lab5;
|
||||
lab6:
|
||||
z->c = z->l - m7;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 130 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
goto lab4;
|
||||
lab5:
|
||||
z->c = z->l - m6;
|
||||
{ int ret = r_undouble(z); /* call undouble, line 130 */
|
||||
{ int ret = r_undouble(z);
|
||||
if (ret == 0) goto lab3;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
@ -499,50 +496,50 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
|
||||
lab4:
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = r_R2(z); /* call R2, line 133 */
|
||||
{ int ret = r_R2(z);
|
||||
if (ret == 0) goto lab3;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int m8 = z->l - z->c; (void)m8; /* not, line 133 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab7; /* literal, line 133 */
|
||||
{ int m8 = z->l - z->c; (void)m8;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab7;
|
||||
z->c--;
|
||||
goto lab3;
|
||||
lab7:
|
||||
z->c = z->l - m8;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 133 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = r_R2(z); /* call R2, line 136 */
|
||||
{ int ret = r_R2(z);
|
||||
if (ret == 0) goto lab3;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 136 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int ret = r_e_ending(z); /* call e_ending, line 136 */
|
||||
{ int ret = r_e_ending(z);
|
||||
if (ret == 0) goto lab3;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
{ int ret = r_R2(z); /* call R2, line 139 */
|
||||
{ int ret = r_R2(z);
|
||||
if (ret == 0) goto lab3;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 139 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
{ int ret = r_R2(z); /* call R2, line 142 */
|
||||
{ int ret = r_R2(z);
|
||||
if (ret == 0) goto lab3;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
if (!(z->B[0])) goto lab3; /* Boolean test e_found, line 142 */
|
||||
{ int ret = slice_del(z); /* delete, line 142 */
|
||||
if (!(z->I[2])) goto lab3;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -550,19 +547,19 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
|
||||
lab3:
|
||||
z->c = z->l - m5;
|
||||
}
|
||||
{ int m9 = z->l - z->c; (void)m9; /* do, line 146 */
|
||||
if (out_grouping_b(z, g_v_I, 73, 232, 0)) goto lab8; /* non v_I, line 147 */
|
||||
{ int m_test10 = z->l - z->c; /* test, line 148 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((2129954 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab8; /* among, line 149 */
|
||||
{ int m9 = z->l - z->c; (void)m9;
|
||||
if (out_grouping_b(z, g_v_I, 73, 232, 0)) goto lab8;
|
||||
{ int m_test10 = z->l - z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((2129954 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab8;
|
||||
if (!(find_among_b(z, a_5, 4))) goto lab8;
|
||||
if (out_grouping_b(z, g_v, 97, 232, 0)) goto lab8; /* non v, line 150 */
|
||||
if (out_grouping_b(z, g_v, 97, 232, 0)) goto lab8;
|
||||
z->c = z->l - m_test10;
|
||||
}
|
||||
z->ket = z->c; /* [, line 152 */
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb) goto lab8;
|
||||
z->c--; /* next, line 152 */
|
||||
z->bra = z->c; /* ], line 152 */
|
||||
{ int ret = slice_del(z); /* delete, line 152 */
|
||||
z->c--;
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
lab8:
|
||||
@ -571,28 +568,28 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern int dutch_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
|
||||
{ int c1 = z->c; /* do, line 159 */
|
||||
{ int ret = r_prelude(z); /* call prelude, line 159 */
|
||||
extern int dutch_ISO_8859_1_stem(struct SN_env * z) {
|
||||
{ int c1 = z->c;
|
||||
{ int ret = r_prelude(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = c1;
|
||||
}
|
||||
{ int c2 = z->c; /* do, line 160 */
|
||||
{ int ret = r_mark_regions(z); /* call mark_regions, line 160 */
|
||||
{ int c2 = z->c;
|
||||
{ int ret = r_mark_regions(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = c2;
|
||||
}
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 161 */
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
/* do, line 162 */
|
||||
{ int ret = r_standard_suffix(z); /* call standard_suffix, line 162 */
|
||||
|
||||
{ int ret = r_standard_suffix(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->lb;
|
||||
{ int c3 = z->c; /* do, line 163 */
|
||||
{ int ret = r_postlude(z); /* call postlude, line 163 */
|
||||
{ int c3 = z->c;
|
||||
{ int ret = r_postlude(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = c3;
|
||||
@ -600,7 +597,7 @@ extern int dutch_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern struct SN_env * dutch_ISO_8859_1_create_env(void) { return SN_create_env(0, 2, 1); }
|
||||
extern struct SN_env * dutch_ISO_8859_1_create_env(void) { return SN_create_env(0, 3); }
|
||||
|
||||
extern void dutch_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); }
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#include "header.h"
|
||||
|
||||
@ -45,16 +45,16 @@ static const symbol s_0_9[2] = { 'k', 0xF6 };
|
||||
|
||||
static const struct among a_0[10] =
|
||||
{
|
||||
/* 0 */ { 2, s_0_0, -1, 1, 0},
|
||||
/* 1 */ { 3, s_0_1, -1, 2, 0},
|
||||
/* 2 */ { 4, s_0_2, -1, 1, 0},
|
||||
/* 3 */ { 3, s_0_3, -1, 1, 0},
|
||||
/* 4 */ { 3, s_0_4, -1, 1, 0},
|
||||
/* 5 */ { 3, s_0_5, -1, 1, 0},
|
||||
/* 6 */ { 4, s_0_6, -1, 1, 0},
|
||||
/* 7 */ { 2, s_0_7, -1, 1, 0},
|
||||
/* 8 */ { 2, s_0_8, -1, 1, 0},
|
||||
/* 9 */ { 2, s_0_9, -1, 1, 0}
|
||||
{ 2, s_0_0, -1, 1, 0},
|
||||
{ 3, s_0_1, -1, 2, 0},
|
||||
{ 4, s_0_2, -1, 1, 0},
|
||||
{ 3, s_0_3, -1, 1, 0},
|
||||
{ 3, s_0_4, -1, 1, 0},
|
||||
{ 3, s_0_5, -1, 1, 0},
|
||||
{ 4, s_0_6, -1, 1, 0},
|
||||
{ 2, s_0_7, -1, 1, 0},
|
||||
{ 2, s_0_8, -1, 1, 0},
|
||||
{ 2, s_0_9, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_1_0[3] = { 'l', 'l', 'a' };
|
||||
@ -66,12 +66,12 @@ static const symbol s_1_5[3] = { 's', 't', 'a' };
|
||||
|
||||
static const struct among a_1[6] =
|
||||
{
|
||||
/* 0 */ { 3, s_1_0, -1, -1, 0},
|
||||
/* 1 */ { 2, s_1_1, -1, -1, 0},
|
||||
/* 2 */ { 3, s_1_2, -1, -1, 0},
|
||||
/* 3 */ { 2, s_1_3, -1, -1, 0},
|
||||
/* 4 */ { 3, s_1_4, 3, -1, 0},
|
||||
/* 5 */ { 3, s_1_5, 3, -1, 0}
|
||||
{ 3, s_1_0, -1, -1, 0},
|
||||
{ 2, s_1_1, -1, -1, 0},
|
||||
{ 3, s_1_2, -1, -1, 0},
|
||||
{ 2, s_1_3, -1, -1, 0},
|
||||
{ 3, s_1_4, 3, -1, 0},
|
||||
{ 3, s_1_5, 3, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_2_0[3] = { 'l', 'l', 0xE4 };
|
||||
@ -83,12 +83,12 @@ static const symbol s_2_5[3] = { 's', 't', 0xE4 };
|
||||
|
||||
static const struct among a_2[6] =
|
||||
{
|
||||
/* 0 */ { 3, s_2_0, -1, -1, 0},
|
||||
/* 1 */ { 2, s_2_1, -1, -1, 0},
|
||||
/* 2 */ { 3, s_2_2, -1, -1, 0},
|
||||
/* 3 */ { 2, s_2_3, -1, -1, 0},
|
||||
/* 4 */ { 3, s_2_4, 3, -1, 0},
|
||||
/* 5 */ { 3, s_2_5, 3, -1, 0}
|
||||
{ 3, s_2_0, -1, -1, 0},
|
||||
{ 2, s_2_1, -1, -1, 0},
|
||||
{ 3, s_2_2, -1, -1, 0},
|
||||
{ 2, s_2_3, -1, -1, 0},
|
||||
{ 3, s_2_4, 3, -1, 0},
|
||||
{ 3, s_2_5, 3, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_3_0[3] = { 'l', 'l', 'e' };
|
||||
@ -96,8 +96,8 @@ static const symbol s_3_1[3] = { 'i', 'n', 'e' };
|
||||
|
||||
static const struct among a_3[2] =
|
||||
{
|
||||
/* 0 */ { 3, s_3_0, -1, -1, 0},
|
||||
/* 1 */ { 3, s_3_1, -1, -1, 0}
|
||||
{ 3, s_3_0, -1, -1, 0},
|
||||
{ 3, s_3_1, -1, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_4_0[3] = { 'n', 's', 'a' };
|
||||
@ -112,15 +112,15 @@ static const symbol s_4_8[3] = { 'n', 's', 0xE4 };
|
||||
|
||||
static const struct among a_4[9] =
|
||||
{
|
||||
/* 0 */ { 3, s_4_0, -1, 3, 0},
|
||||
/* 1 */ { 3, s_4_1, -1, 3, 0},
|
||||
/* 2 */ { 3, s_4_2, -1, 3, 0},
|
||||
/* 3 */ { 2, s_4_3, -1, 2, 0},
|
||||
/* 4 */ { 2, s_4_4, -1, 1, 0},
|
||||
/* 5 */ { 2, s_4_5, -1, 4, 0},
|
||||
/* 6 */ { 2, s_4_6, -1, 6, 0},
|
||||
/* 7 */ { 2, s_4_7, -1, 5, 0},
|
||||
/* 8 */ { 3, s_4_8, -1, 3, 0}
|
||||
{ 3, s_4_0, -1, 3, 0},
|
||||
{ 3, s_4_1, -1, 3, 0},
|
||||
{ 3, s_4_2, -1, 3, 0},
|
||||
{ 2, s_4_3, -1, 2, 0},
|
||||
{ 2, s_4_4, -1, 1, 0},
|
||||
{ 2, s_4_5, -1, 4, 0},
|
||||
{ 2, s_4_6, -1, 6, 0},
|
||||
{ 2, s_4_7, -1, 5, 0},
|
||||
{ 3, s_4_8, -1, 3, 0}
|
||||
};
|
||||
|
||||
static const symbol s_5_0[2] = { 'a', 'a' };
|
||||
@ -133,13 +133,13 @@ static const symbol s_5_6[2] = { 0xF6, 0xF6 };
|
||||
|
||||
static const struct among a_5[7] =
|
||||
{
|
||||
/* 0 */ { 2, s_5_0, -1, -1, 0},
|
||||
/* 1 */ { 2, s_5_1, -1, -1, 0},
|
||||
/* 2 */ { 2, s_5_2, -1, -1, 0},
|
||||
/* 3 */ { 2, s_5_3, -1, -1, 0},
|
||||
/* 4 */ { 2, s_5_4, -1, -1, 0},
|
||||
/* 5 */ { 2, s_5_5, -1, -1, 0},
|
||||
/* 6 */ { 2, s_5_6, -1, -1, 0}
|
||||
{ 2, s_5_0, -1, -1, 0},
|
||||
{ 2, s_5_1, -1, -1, 0},
|
||||
{ 2, s_5_2, -1, -1, 0},
|
||||
{ 2, s_5_3, -1, -1, 0},
|
||||
{ 2, s_5_4, -1, -1, 0},
|
||||
{ 2, s_5_5, -1, -1, 0},
|
||||
{ 2, s_5_6, -1, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_6_0[1] = { 'a' };
|
||||
@ -175,36 +175,36 @@ static const symbol s_6_29[3] = { 't', 't', 0xE4 };
|
||||
|
||||
static const struct among a_6[30] =
|
||||
{
|
||||
/* 0 */ { 1, s_6_0, -1, 8, 0},
|
||||
/* 1 */ { 3, s_6_1, 0, -1, 0},
|
||||
/* 2 */ { 2, s_6_2, 0, -1, 0},
|
||||
/* 3 */ { 3, s_6_3, 0, -1, 0},
|
||||
/* 4 */ { 2, s_6_4, 0, -1, 0},
|
||||
/* 5 */ { 3, s_6_5, 4, -1, 0},
|
||||
/* 6 */ { 3, s_6_6, 4, -1, 0},
|
||||
/* 7 */ { 3, s_6_7, 4, 2, 0},
|
||||
/* 8 */ { 3, s_6_8, -1, -1, 0},
|
||||
/* 9 */ { 3, s_6_9, -1, -1, 0},
|
||||
/* 10 */ { 3, s_6_10, -1, -1, 0},
|
||||
/* 11 */ { 1, s_6_11, -1, 7, 0},
|
||||
/* 12 */ { 3, s_6_12, 11, 1, 0},
|
||||
/* 13 */ { 3, s_6_13, 11, -1, r_VI},
|
||||
/* 14 */ { 4, s_6_14, 11, -1, r_LONG},
|
||||
/* 15 */ { 3, s_6_15, 11, 2, 0},
|
||||
/* 16 */ { 4, s_6_16, 11, -1, r_VI},
|
||||
/* 17 */ { 3, s_6_17, 11, 3, 0},
|
||||
/* 18 */ { 4, s_6_18, 11, -1, r_VI},
|
||||
/* 19 */ { 3, s_6_19, 11, 4, 0},
|
||||
/* 20 */ { 3, s_6_20, 11, 5, 0},
|
||||
/* 21 */ { 3, s_6_21, 11, 6, 0},
|
||||
/* 22 */ { 1, s_6_22, -1, 8, 0},
|
||||
/* 23 */ { 3, s_6_23, 22, -1, 0},
|
||||
/* 24 */ { 2, s_6_24, 22, -1, 0},
|
||||
/* 25 */ { 3, s_6_25, 22, -1, 0},
|
||||
/* 26 */ { 2, s_6_26, 22, -1, 0},
|
||||
/* 27 */ { 3, s_6_27, 26, -1, 0},
|
||||
/* 28 */ { 3, s_6_28, 26, -1, 0},
|
||||
/* 29 */ { 3, s_6_29, 26, 2, 0}
|
||||
{ 1, s_6_0, -1, 8, 0},
|
||||
{ 3, s_6_1, 0, -1, 0},
|
||||
{ 2, s_6_2, 0, -1, 0},
|
||||
{ 3, s_6_3, 0, -1, 0},
|
||||
{ 2, s_6_4, 0, -1, 0},
|
||||
{ 3, s_6_5, 4, -1, 0},
|
||||
{ 3, s_6_6, 4, -1, 0},
|
||||
{ 3, s_6_7, 4, 2, 0},
|
||||
{ 3, s_6_8, -1, -1, 0},
|
||||
{ 3, s_6_9, -1, -1, 0},
|
||||
{ 3, s_6_10, -1, -1, 0},
|
||||
{ 1, s_6_11, -1, 7, 0},
|
||||
{ 3, s_6_12, 11, 1, 0},
|
||||
{ 3, s_6_13, 11, -1, r_VI},
|
||||
{ 4, s_6_14, 11, -1, r_LONG},
|
||||
{ 3, s_6_15, 11, 2, 0},
|
||||
{ 4, s_6_16, 11, -1, r_VI},
|
||||
{ 3, s_6_17, 11, 3, 0},
|
||||
{ 4, s_6_18, 11, -1, r_VI},
|
||||
{ 3, s_6_19, 11, 4, 0},
|
||||
{ 3, s_6_20, 11, 5, 0},
|
||||
{ 3, s_6_21, 11, 6, 0},
|
||||
{ 1, s_6_22, -1, 8, 0},
|
||||
{ 3, s_6_23, 22, -1, 0},
|
||||
{ 2, s_6_24, 22, -1, 0},
|
||||
{ 3, s_6_25, 22, -1, 0},
|
||||
{ 2, s_6_26, 22, -1, 0},
|
||||
{ 3, s_6_27, 26, -1, 0},
|
||||
{ 3, s_6_28, 26, -1, 0},
|
||||
{ 3, s_6_29, 26, 2, 0}
|
||||
};
|
||||
|
||||
static const symbol s_7_0[3] = { 'e', 'j', 'a' };
|
||||
@ -224,20 +224,20 @@ static const symbol s_7_13[4] = { 'i', 'm', 'p', 0xE4 };
|
||||
|
||||
static const struct among a_7[14] =
|
||||
{
|
||||
/* 0 */ { 3, s_7_0, -1, -1, 0},
|
||||
/* 1 */ { 3, s_7_1, -1, 1, 0},
|
||||
/* 2 */ { 4, s_7_2, 1, -1, 0},
|
||||
/* 3 */ { 3, s_7_3, -1, 1, 0},
|
||||
/* 4 */ { 4, s_7_4, 3, -1, 0},
|
||||
/* 5 */ { 3, s_7_5, -1, 1, 0},
|
||||
/* 6 */ { 4, s_7_6, 5, -1, 0},
|
||||
/* 7 */ { 3, s_7_7, -1, 1, 0},
|
||||
/* 8 */ { 4, s_7_8, 7, -1, 0},
|
||||
/* 9 */ { 3, s_7_9, -1, -1, 0},
|
||||
/* 10 */ { 3, s_7_10, -1, 1, 0},
|
||||
/* 11 */ { 4, s_7_11, 10, -1, 0},
|
||||
/* 12 */ { 3, s_7_12, -1, 1, 0},
|
||||
/* 13 */ { 4, s_7_13, 12, -1, 0}
|
||||
{ 3, s_7_0, -1, -1, 0},
|
||||
{ 3, s_7_1, -1, 1, 0},
|
||||
{ 4, s_7_2, 1, -1, 0},
|
||||
{ 3, s_7_3, -1, 1, 0},
|
||||
{ 4, s_7_4, 3, -1, 0},
|
||||
{ 3, s_7_5, -1, 1, 0},
|
||||
{ 4, s_7_6, 5, -1, 0},
|
||||
{ 3, s_7_7, -1, 1, 0},
|
||||
{ 4, s_7_8, 7, -1, 0},
|
||||
{ 3, s_7_9, -1, -1, 0},
|
||||
{ 3, s_7_10, -1, 1, 0},
|
||||
{ 4, s_7_11, 10, -1, 0},
|
||||
{ 3, s_7_12, -1, 1, 0},
|
||||
{ 4, s_7_13, 12, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_8_0[1] = { 'i' };
|
||||
@ -245,8 +245,8 @@ static const symbol s_8_1[1] = { 'j' };
|
||||
|
||||
static const struct among a_8[2] =
|
||||
{
|
||||
/* 0 */ { 1, s_8_0, -1, -1, 0},
|
||||
/* 1 */ { 1, s_8_1, -1, -1, 0}
|
||||
{ 1, s_8_0, -1, -1, 0},
|
||||
{ 1, s_8_1, -1, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_9_0[3] = { 'm', 'm', 'a' };
|
||||
@ -254,8 +254,8 @@ static const symbol s_9_1[4] = { 'i', 'm', 'm', 'a' };
|
||||
|
||||
static const struct among a_9[2] =
|
||||
{
|
||||
/* 0 */ { 3, s_9_0, -1, 1, 0},
|
||||
/* 1 */ { 4, s_9_1, 0, -1, 0}
|
||||
{ 3, s_9_0, -1, 1, 0},
|
||||
{ 4, s_9_1, 0, -1, 0}
|
||||
};
|
||||
|
||||
static const unsigned char g_AEI[] = { 17, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8 };
|
||||
@ -274,118 +274,118 @@ static const symbol s_2[] = { 'i', 'e' };
|
||||
static const symbol s_3[] = { 'p', 'o' };
|
||||
static const symbol s_4[] = { 'p', 'o' };
|
||||
|
||||
static int r_mark_regions(struct SN_env * z) { /* forwardmode */
|
||||
z->I[0] = z->l; /* $p1 = <integer expression>, line 44 */
|
||||
z->I[1] = z->l; /* $p2 = <integer expression>, line 45 */
|
||||
if (out_grouping(z, g_V1, 97, 246, 1) < 0) return 0; /* goto */ /* grouping V1, line 47 */
|
||||
{ /* gopast */ /* non V1, line 47 */
|
||||
static int r_mark_regions(struct SN_env * z) {
|
||||
z->I[1] = z->l;
|
||||
z->I[0] = z->l;
|
||||
if (out_grouping(z, g_V1, 97, 246, 1) < 0) return 0;
|
||||
{
|
||||
int ret = in_grouping(z, g_V1, 97, 246, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[0] = z->c; /* setmark p1, line 47 */
|
||||
if (out_grouping(z, g_V1, 97, 246, 1) < 0) return 0; /* goto */ /* grouping V1, line 48 */
|
||||
{ /* gopast */ /* non V1, line 48 */
|
||||
z->I[1] = z->c;
|
||||
if (out_grouping(z, g_V1, 97, 246, 1) < 0) return 0;
|
||||
{
|
||||
int ret = in_grouping(z, g_V1, 97, 246, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[1] = z->c; /* setmark p2, line 48 */
|
||||
z->I[0] = z->c;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_R2(struct SN_env * z) { /* backwardmode */
|
||||
if (!(z->I[1] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 53 */
|
||||
static int r_R2(struct SN_env * z) {
|
||||
if (!(z->I[0] <= z->c)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_particle_etc(struct SN_env * z) { /* backwardmode */
|
||||
static int r_particle_etc(struct SN_env * z) {
|
||||
int among_var;
|
||||
|
||||
{ int mlimit1; /* setlimit, line 56 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 56 */
|
||||
among_var = find_among_b(z, a_0, 10); /* substring, line 56 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
among_var = find_among_b(z, a_0, 10);
|
||||
if (!(among_var)) { z->lb = mlimit1; return 0; }
|
||||
z->bra = z->c; /* ], line 56 */
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit1;
|
||||
}
|
||||
switch (among_var) { /* among, line 57 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
if (in_grouping_b(z, g_particle_end, 97, 246, 0)) return 0; /* grouping particle_end, line 63 */
|
||||
if (in_grouping_b(z, g_particle_end, 97, 246, 0)) return 0;
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = r_R2(z); /* call R2, line 65 */
|
||||
{ int ret = r_R2(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
break;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 67 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_possessive(struct SN_env * z) { /* backwardmode */
|
||||
static int r_possessive(struct SN_env * z) {
|
||||
int among_var;
|
||||
|
||||
{ int mlimit1; /* setlimit, line 70 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 70 */
|
||||
among_var = find_among_b(z, a_4, 9); /* substring, line 70 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
among_var = find_among_b(z, a_4, 9);
|
||||
if (!(among_var)) { z->lb = mlimit1; return 0; }
|
||||
z->bra = z->c; /* ], line 70 */
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit1;
|
||||
}
|
||||
switch (among_var) { /* among, line 71 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int m2 = z->l - z->c; (void)m2; /* not, line 73 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'k') goto lab0; /* literal, line 73 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'k') goto lab0;
|
||||
z->c--;
|
||||
return 0;
|
||||
lab0:
|
||||
z->c = z->l - m2;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 73 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_del(z); /* delete, line 75 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->ket = z->c; /* [, line 75 */
|
||||
if (!(eq_s_b(z, 3, s_0))) return 0; /* literal, line 75 */
|
||||
z->bra = z->c; /* ], line 75 */
|
||||
{ int ret = slice_from_s(z, 3, s_1); /* <-, line 75 */
|
||||
z->ket = z->c;
|
||||
if (!(eq_s_b(z, 3, s_0))) return 0;
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_from_s(z, 3, s_1);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_del(z); /* delete, line 79 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] != 97) return 0; /* among, line 82 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] != 97) return 0;
|
||||
if (!(find_among_b(z, a_1, 6))) return 0;
|
||||
{ int ret = slice_del(z); /* delete, line 82 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] != 228) return 0; /* among, line 84 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] != 228) return 0;
|
||||
if (!(find_among_b(z, a_2, 6))) return 0;
|
||||
{ int ret = slice_del(z); /* delete, line 85 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 6:
|
||||
if (z->c - 2 <= z->lb || z->p[z->c - 1] != 101) return 0; /* among, line 87 */
|
||||
if (z->c - 2 <= z->lb || z->p[z->c - 1] != 101) return 0;
|
||||
if (!(find_among_b(z, a_3, 2))) return 0;
|
||||
{ int ret = slice_del(z); /* delete, line 87 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -393,244 +393,244 @@ static int r_possessive(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_LONG(struct SN_env * z) { /* backwardmode */
|
||||
if (!(find_among_b(z, a_5, 7))) return 0; /* among, line 92 */
|
||||
static int r_LONG(struct SN_env * z) {
|
||||
if (!(find_among_b(z, a_5, 7))) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_VI(struct SN_env * z) { /* backwardmode */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'i') return 0; /* literal, line 94 */
|
||||
static int r_VI(struct SN_env * z) {
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'i') return 0;
|
||||
z->c--;
|
||||
if (in_grouping_b(z, g_V2, 97, 246, 0)) return 0; /* grouping V2, line 94 */
|
||||
if (in_grouping_b(z, g_V2, 97, 246, 0)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_case_ending(struct SN_env * z) { /* backwardmode */
|
||||
static int r_case_ending(struct SN_env * z) {
|
||||
int among_var;
|
||||
|
||||
{ int mlimit1; /* setlimit, line 97 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 97 */
|
||||
among_var = find_among_b(z, a_6, 30); /* substring, line 97 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
among_var = find_among_b(z, a_6, 30);
|
||||
if (!(among_var)) { z->lb = mlimit1; return 0; }
|
||||
z->bra = z->c; /* ], line 97 */
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit1;
|
||||
}
|
||||
switch (among_var) { /* among, line 98 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'a') return 0; /* literal, line 99 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'a') return 0;
|
||||
z->c--;
|
||||
break;
|
||||
case 2:
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') return 0; /* literal, line 100 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') return 0;
|
||||
z->c--;
|
||||
break;
|
||||
case 3:
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'i') return 0; /* literal, line 101 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'i') return 0;
|
||||
z->c--;
|
||||
break;
|
||||
case 4:
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'o') return 0; /* literal, line 102 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'o') return 0;
|
||||
z->c--;
|
||||
break;
|
||||
case 5:
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 0xE4) return 0; /* literal, line 103 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 0xE4) return 0;
|
||||
z->c--;
|
||||
break;
|
||||
case 6:
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 0xF6) return 0; /* literal, line 104 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 0xF6) return 0;
|
||||
z->c--;
|
||||
break;
|
||||
case 7:
|
||||
{ int m2 = z->l - z->c; (void)m2; /* try, line 112 */
|
||||
{ int m3 = z->l - z->c; (void)m3; /* and, line 114 */
|
||||
{ int m4 = z->l - z->c; (void)m4; /* or, line 113 */
|
||||
{ int ret = r_LONG(z); /* call LONG, line 112 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
{ int m3 = z->l - z->c; (void)m3;
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
{ int ret = r_LONG(z);
|
||||
if (ret == 0) goto lab2;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
goto lab1;
|
||||
lab2:
|
||||
z->c = z->l - m4;
|
||||
if (!(eq_s_b(z, 2, s_2))) { z->c = z->l - m2; goto lab0; } /* literal, line 113 */
|
||||
if (!(eq_s_b(z, 2, s_2))) { z->c = z->l - m2; goto lab0; }
|
||||
}
|
||||
lab1:
|
||||
z->c = z->l - m3;
|
||||
if (z->c <= z->lb) { z->c = z->l - m2; goto lab0; }
|
||||
z->c--; /* next, line 114 */
|
||||
z->c--;
|
||||
}
|
||||
z->bra = z->c; /* ], line 114 */
|
||||
z->bra = z->c;
|
||||
lab0:
|
||||
;
|
||||
}
|
||||
break;
|
||||
case 8:
|
||||
if (in_grouping_b(z, g_V1, 97, 246, 0)) return 0; /* grouping V1, line 120 */
|
||||
if (in_grouping_b(z, g_C, 98, 122, 0)) return 0; /* grouping C, line 120 */
|
||||
if (in_grouping_b(z, g_V1, 97, 246, 0)) return 0;
|
||||
if (in_grouping_b(z, g_C, 98, 122, 0)) return 0;
|
||||
break;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 139 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->B[0] = 1; /* set ending_removed, line 140 */
|
||||
z->I[2] = 1;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_other_endings(struct SN_env * z) { /* backwardmode */
|
||||
static int r_other_endings(struct SN_env * z) {
|
||||
int among_var;
|
||||
|
||||
{ int mlimit1; /* setlimit, line 143 */
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c; /* [, line 143 */
|
||||
among_var = find_among_b(z, a_7, 14); /* substring, line 143 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c;
|
||||
among_var = find_among_b(z, a_7, 14);
|
||||
if (!(among_var)) { z->lb = mlimit1; return 0; }
|
||||
z->bra = z->c; /* ], line 143 */
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit1;
|
||||
}
|
||||
switch (among_var) { /* among, line 144 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int m2 = z->l - z->c; (void)m2; /* not, line 147 */
|
||||
if (!(eq_s_b(z, 2, s_3))) goto lab0; /* literal, line 147 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
if (!(eq_s_b(z, 2, s_3))) goto lab0;
|
||||
return 0;
|
||||
lab0:
|
||||
z->c = z->l - m2;
|
||||
}
|
||||
break;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 152 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_i_plural(struct SN_env * z) { /* backwardmode */
|
||||
static int r_i_plural(struct SN_env * z) {
|
||||
|
||||
{ int mlimit1; /* setlimit, line 155 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 155 */
|
||||
if (z->c <= z->lb || (z->p[z->c - 1] != 105 && z->p[z->c - 1] != 106)) { z->lb = mlimit1; return 0; } /* substring, line 155 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || (z->p[z->c - 1] != 105 && z->p[z->c - 1] != 106)) { z->lb = mlimit1; return 0; }
|
||||
if (!(find_among_b(z, a_8, 2))) { z->lb = mlimit1; return 0; }
|
||||
z->bra = z->c; /* ], line 155 */
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit1;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 159 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_t_plural(struct SN_env * z) { /* backwardmode */
|
||||
static int r_t_plural(struct SN_env * z) {
|
||||
int among_var;
|
||||
|
||||
{ int mlimit1; /* setlimit, line 162 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 163 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 't') { z->lb = mlimit1; return 0; } /* literal, line 163 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 't') { z->lb = mlimit1; return 0; }
|
||||
z->c--;
|
||||
z->bra = z->c; /* ], line 163 */
|
||||
{ int m_test2 = z->l - z->c; /* test, line 163 */
|
||||
if (in_grouping_b(z, g_V1, 97, 246, 0)) { z->lb = mlimit1; return 0; } /* grouping V1, line 163 */
|
||||
z->bra = z->c;
|
||||
{ int m_test2 = z->l - z->c;
|
||||
if (in_grouping_b(z, g_V1, 97, 246, 0)) { z->lb = mlimit1; return 0; }
|
||||
z->c = z->l - m_test2;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 164 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->lb = mlimit1;
|
||||
}
|
||||
|
||||
{ int mlimit3; /* setlimit, line 166 */
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit3 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c; /* [, line 166 */
|
||||
if (z->c - 2 <= z->lb || z->p[z->c - 1] != 97) { z->lb = mlimit3; return 0; } /* substring, line 166 */
|
||||
{ int mlimit3;
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit3 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c;
|
||||
if (z->c - 2 <= z->lb || z->p[z->c - 1] != 97) { z->lb = mlimit3; return 0; }
|
||||
among_var = find_among_b(z, a_9, 2);
|
||||
if (!(among_var)) { z->lb = mlimit3; return 0; }
|
||||
z->bra = z->c; /* ], line 166 */
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit3;
|
||||
}
|
||||
switch (among_var) { /* among, line 167 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int m4 = z->l - z->c; (void)m4; /* not, line 168 */
|
||||
if (!(eq_s_b(z, 2, s_4))) goto lab0; /* literal, line 168 */
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
if (!(eq_s_b(z, 2, s_4))) goto lab0;
|
||||
return 0;
|
||||
lab0:
|
||||
z->c = z->l - m4;
|
||||
}
|
||||
break;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 171 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_tidy(struct SN_env * z) { /* backwardmode */
|
||||
static int r_tidy(struct SN_env * z) {
|
||||
|
||||
{ int mlimit1; /* setlimit, line 174 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
{ int m2 = z->l - z->c; (void)m2; /* do, line 175 */
|
||||
{ int m3 = z->l - z->c; (void)m3; /* and, line 175 */
|
||||
{ int ret = r_LONG(z); /* call LONG, line 175 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
{ int m3 = z->l - z->c; (void)m3;
|
||||
{ int ret = r_LONG(z);
|
||||
if (ret == 0) goto lab0;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m3;
|
||||
z->ket = z->c; /* [, line 175 */
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb) goto lab0;
|
||||
z->c--; /* next, line 175 */
|
||||
z->bra = z->c; /* ], line 175 */
|
||||
{ int ret = slice_del(z); /* delete, line 175 */
|
||||
z->c--;
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
}
|
||||
lab0:
|
||||
z->c = z->l - m2;
|
||||
}
|
||||
{ int m4 = z->l - z->c; (void)m4; /* do, line 176 */
|
||||
z->ket = z->c; /* [, line 176 */
|
||||
if (in_grouping_b(z, g_AEI, 97, 228, 0)) goto lab1; /* grouping AEI, line 176 */
|
||||
z->bra = z->c; /* ], line 176 */
|
||||
if (in_grouping_b(z, g_C, 98, 122, 0)) goto lab1; /* grouping C, line 176 */
|
||||
{ int ret = slice_del(z); /* delete, line 176 */
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
z->ket = z->c;
|
||||
if (in_grouping_b(z, g_AEI, 97, 228, 0)) goto lab1;
|
||||
z->bra = z->c;
|
||||
if (in_grouping_b(z, g_C, 98, 122, 0)) goto lab1;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
lab1:
|
||||
z->c = z->l - m4;
|
||||
}
|
||||
{ int m5 = z->l - z->c; (void)m5; /* do, line 177 */
|
||||
z->ket = z->c; /* [, line 177 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'j') goto lab2; /* literal, line 177 */
|
||||
{ int m5 = z->l - z->c; (void)m5;
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'j') goto lab2;
|
||||
z->c--;
|
||||
z->bra = z->c; /* ], line 177 */
|
||||
{ int m6 = z->l - z->c; (void)m6; /* or, line 177 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'o') goto lab4; /* literal, line 177 */
|
||||
z->bra = z->c;
|
||||
{ int m6 = z->l - z->c; (void)m6;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'o') goto lab4;
|
||||
z->c--;
|
||||
goto lab3;
|
||||
lab4:
|
||||
z->c = z->l - m6;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'u') goto lab2; /* literal, line 177 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'u') goto lab2;
|
||||
z->c--;
|
||||
}
|
||||
lab3:
|
||||
{ int ret = slice_del(z); /* delete, line 177 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
lab2:
|
||||
z->c = z->l - m5;
|
||||
}
|
||||
{ int m7 = z->l - z->c; (void)m7; /* do, line 178 */
|
||||
z->ket = z->c; /* [, line 178 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'o') goto lab5; /* literal, line 178 */
|
||||
{ int m7 = z->l - z->c; (void)m7;
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'o') goto lab5;
|
||||
z->c--;
|
||||
z->bra = z->c; /* ], line 178 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'j') goto lab5; /* literal, line 178 */
|
||||
z->bra = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'j') goto lab5;
|
||||
z->c--;
|
||||
{ int ret = slice_del(z); /* delete, line 178 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
lab5:
|
||||
@ -638,72 +638,72 @@ static int r_tidy(struct SN_env * z) { /* backwardmode */
|
||||
}
|
||||
z->lb = mlimit1;
|
||||
}
|
||||
if (in_grouping_b(z, g_V1, 97, 246, 1) < 0) return 0; /* goto */ /* non V1, line 180 */
|
||||
z->ket = z->c; /* [, line 180 */
|
||||
if (in_grouping_b(z, g_C, 98, 122, 0)) return 0; /* grouping C, line 180 */
|
||||
z->bra = z->c; /* ], line 180 */
|
||||
z->S[0] = slice_to(z, z->S[0]); /* -> x, line 180 */
|
||||
if (z->S[0] == 0) return -1; /* -> x, line 180 */
|
||||
if (!(eq_v_b(z, z->S[0]))) return 0; /* name x, line 180 */
|
||||
{ int ret = slice_del(z); /* delete, line 180 */
|
||||
if (in_grouping_b(z, g_V1, 97, 246, 1) < 0) return 0;
|
||||
z->ket = z->c;
|
||||
if (in_grouping_b(z, g_C, 98, 122, 0)) return 0;
|
||||
z->bra = z->c;
|
||||
z->S[0] = slice_to(z, z->S[0]);
|
||||
if (z->S[0] == 0) return -1;
|
||||
if (!(eq_v_b(z, z->S[0]))) return 0;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern int finnish_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
|
||||
{ int c1 = z->c; /* do, line 186 */
|
||||
{ int ret = r_mark_regions(z); /* call mark_regions, line 186 */
|
||||
extern int finnish_ISO_8859_1_stem(struct SN_env * z) {
|
||||
{ int c1 = z->c;
|
||||
{ int ret = r_mark_regions(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = c1;
|
||||
}
|
||||
z->B[0] = 0; /* unset ending_removed, line 187 */
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 188 */
|
||||
z->I[2] = 0;
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
{ int m2 = z->l - z->c; (void)m2; /* do, line 189 */
|
||||
{ int ret = r_particle_etc(z); /* call particle_etc, line 189 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
{ int ret = r_particle_etc(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m2;
|
||||
}
|
||||
{ int m3 = z->l - z->c; (void)m3; /* do, line 190 */
|
||||
{ int ret = r_possessive(z); /* call possessive, line 190 */
|
||||
{ int m3 = z->l - z->c; (void)m3;
|
||||
{ int ret = r_possessive(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m3;
|
||||
}
|
||||
{ int m4 = z->l - z->c; (void)m4; /* do, line 191 */
|
||||
{ int ret = r_case_ending(z); /* call case_ending, line 191 */
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
{ int ret = r_case_ending(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m4;
|
||||
}
|
||||
{ int m5 = z->l - z->c; (void)m5; /* do, line 192 */
|
||||
{ int ret = r_other_endings(z); /* call other_endings, line 192 */
|
||||
{ int m5 = z->l - z->c; (void)m5;
|
||||
{ int ret = r_other_endings(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m5;
|
||||
}
|
||||
/* or, line 193 */
|
||||
if (!(z->B[0])) goto lab1; /* Boolean test ending_removed, line 193 */
|
||||
{ int m6 = z->l - z->c; (void)m6; /* do, line 193 */
|
||||
{ int ret = r_i_plural(z); /* call i_plural, line 193 */
|
||||
|
||||
if (!(z->I[2])) goto lab1;
|
||||
{ int m6 = z->l - z->c; (void)m6;
|
||||
{ int ret = r_i_plural(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m6;
|
||||
}
|
||||
goto lab0;
|
||||
lab1:
|
||||
{ int m7 = z->l - z->c; (void)m7; /* do, line 193 */
|
||||
{ int ret = r_t_plural(z); /* call t_plural, line 193 */
|
||||
{ int m7 = z->l - z->c; (void)m7;
|
||||
{ int ret = r_t_plural(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m7;
|
||||
}
|
||||
lab0:
|
||||
{ int m8 = z->l - z->c; (void)m8; /* do, line 194 */
|
||||
{ int ret = r_tidy(z); /* call tidy, line 194 */
|
||||
{ int m8 = z->l - z->c; (void)m8;
|
||||
{ int ret = r_tidy(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m8;
|
||||
@ -712,7 +712,7 @@ lab0:
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern struct SN_env * finnish_ISO_8859_1_create_env(void) { return SN_create_env(1, 2, 1); }
|
||||
extern struct SN_env * finnish_ISO_8859_1_create_env(void) { return SN_create_env(1, 3); }
|
||||
|
||||
extern void finnish_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 1); }
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#include "header.h"
|
||||
|
||||
@ -35,12 +35,12 @@ static const symbol s_0_5[1] = { 0xFC };
|
||||
|
||||
static const struct among a_0[6] =
|
||||
{
|
||||
/* 0 */ { 0, 0, -1, 5, 0},
|
||||
/* 1 */ { 1, s_0_1, 0, 2, 0},
|
||||
/* 2 */ { 1, s_0_2, 0, 1, 0},
|
||||
/* 3 */ { 1, s_0_3, 0, 3, 0},
|
||||
/* 4 */ { 1, s_0_4, 0, 4, 0},
|
||||
/* 5 */ { 1, s_0_5, 0, 2, 0}
|
||||
{ 0, 0, -1, 5, 0},
|
||||
{ 1, s_0_1, 0, 2, 0},
|
||||
{ 1, s_0_2, 0, 1, 0},
|
||||
{ 1, s_0_3, 0, 3, 0},
|
||||
{ 1, s_0_4, 0, 4, 0},
|
||||
{ 1, s_0_5, 0, 2, 0}
|
||||
};
|
||||
|
||||
static const symbol s_1_0[1] = { 'e' };
|
||||
@ -53,13 +53,13 @@ static const symbol s_1_6[2] = { 'e', 's' };
|
||||
|
||||
static const struct among a_1[7] =
|
||||
{
|
||||
/* 0 */ { 1, s_1_0, -1, 2, 0},
|
||||
/* 1 */ { 2, s_1_1, -1, 1, 0},
|
||||
/* 2 */ { 2, s_1_2, -1, 2, 0},
|
||||
/* 3 */ { 3, s_1_3, -1, 1, 0},
|
||||
/* 4 */ { 2, s_1_4, -1, 1, 0},
|
||||
/* 5 */ { 1, s_1_5, -1, 3, 0},
|
||||
/* 6 */ { 2, s_1_6, 5, 2, 0}
|
||||
{ 1, s_1_0, -1, 2, 0},
|
||||
{ 2, s_1_1, -1, 1, 0},
|
||||
{ 2, s_1_2, -1, 2, 0},
|
||||
{ 3, s_1_3, -1, 1, 0},
|
||||
{ 2, s_1_4, -1, 1, 0},
|
||||
{ 1, s_1_5, -1, 3, 0},
|
||||
{ 2, s_1_6, 5, 2, 0}
|
||||
};
|
||||
|
||||
static const symbol s_2_0[2] = { 'e', 'n' };
|
||||
@ -69,10 +69,10 @@ static const symbol s_2_3[3] = { 'e', 's', 't' };
|
||||
|
||||
static const struct among a_2[4] =
|
||||
{
|
||||
/* 0 */ { 2, s_2_0, -1, 1, 0},
|
||||
/* 1 */ { 2, s_2_1, -1, 1, 0},
|
||||
/* 2 */ { 2, s_2_2, -1, 2, 0},
|
||||
/* 3 */ { 3, s_2_3, 2, 1, 0}
|
||||
{ 2, s_2_0, -1, 1, 0},
|
||||
{ 2, s_2_1, -1, 1, 0},
|
||||
{ 2, s_2_2, -1, 2, 0},
|
||||
{ 3, s_2_3, 2, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_3_0[2] = { 'i', 'g' };
|
||||
@ -80,8 +80,8 @@ static const symbol s_3_1[4] = { 'l', 'i', 'c', 'h' };
|
||||
|
||||
static const struct among a_3[2] =
|
||||
{
|
||||
/* 0 */ { 2, s_3_0, -1, 1, 0},
|
||||
/* 1 */ { 4, s_3_1, -1, 1, 0}
|
||||
{ 2, s_3_0, -1, 1, 0},
|
||||
{ 4, s_3_1, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_4_0[3] = { 'e', 'n', 'd' };
|
||||
@ -95,14 +95,14 @@ static const symbol s_4_7[4] = { 'k', 'e', 'i', 't' };
|
||||
|
||||
static const struct among a_4[8] =
|
||||
{
|
||||
/* 0 */ { 3, s_4_0, -1, 1, 0},
|
||||
/* 1 */ { 2, s_4_1, -1, 2, 0},
|
||||
/* 2 */ { 3, s_4_2, -1, 1, 0},
|
||||
/* 3 */ { 4, s_4_3, -1, 3, 0},
|
||||
/* 4 */ { 4, s_4_4, -1, 2, 0},
|
||||
/* 5 */ { 2, s_4_5, -1, 2, 0},
|
||||
/* 6 */ { 4, s_4_6, -1, 3, 0},
|
||||
/* 7 */ { 4, s_4_7, -1, 4, 0}
|
||||
{ 3, s_4_0, -1, 1, 0},
|
||||
{ 2, s_4_1, -1, 2, 0},
|
||||
{ 3, s_4_2, -1, 1, 0},
|
||||
{ 4, s_4_3, -1, 3, 0},
|
||||
{ 4, s_4_4, -1, 2, 0},
|
||||
{ 2, s_4_5, -1, 2, 0},
|
||||
{ 4, s_4_6, -1, 3, 0},
|
||||
{ 4, s_4_7, -1, 4, 0}
|
||||
};
|
||||
|
||||
static const unsigned char g_v[] = { 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 32, 8 };
|
||||
@ -123,24 +123,23 @@ static const symbol s_8[] = { 'i', 'g' };
|
||||
static const symbol s_9[] = { 'e', 'r' };
|
||||
static const symbol s_10[] = { 'e', 'n' };
|
||||
|
||||
static int r_prelude(struct SN_env * z) { /* forwardmode */
|
||||
{ int c_test1 = z->c; /* test, line 35 */
|
||||
/* repeat, line 35 */
|
||||
|
||||
while(1) { int c2 = z->c;
|
||||
{ int c3 = z->c; /* or, line 38 */
|
||||
z->bra = z->c; /* [, line 37 */
|
||||
if (z->c == z->l || z->p[z->c] != 0xDF) goto lab2; /* literal, line 37 */
|
||||
static int r_prelude(struct SN_env * z) {
|
||||
{ int c_test1 = z->c;
|
||||
while(1) {
|
||||
int c2 = z->c;
|
||||
{ int c3 = z->c;
|
||||
z->bra = z->c;
|
||||
if (z->c == z->l || z->p[z->c] != 0xDF) goto lab2;
|
||||
z->c++;
|
||||
z->ket = z->c; /* ], line 37 */
|
||||
{ int ret = slice_from_s(z, 2, s_0); /* <-, line 37 */
|
||||
z->ket = z->c;
|
||||
{ int ret = slice_from_s(z, 2, s_0);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
goto lab1;
|
||||
lab2:
|
||||
z->c = c3;
|
||||
if (z->c >= z->l) goto lab0;
|
||||
z->c++; /* next, line 38 */
|
||||
z->c++;
|
||||
}
|
||||
lab1:
|
||||
continue;
|
||||
@ -150,29 +149,28 @@ static int r_prelude(struct SN_env * z) { /* forwardmode */
|
||||
}
|
||||
z->c = c_test1;
|
||||
}
|
||||
/* repeat, line 41 */
|
||||
|
||||
while(1) { int c4 = z->c;
|
||||
while(1) { /* goto, line 41 */
|
||||
while(1) {
|
||||
int c4 = z->c;
|
||||
while(1) {
|
||||
int c5 = z->c;
|
||||
if (in_grouping(z, g_v, 97, 252, 0)) goto lab4; /* grouping v, line 42 */
|
||||
z->bra = z->c; /* [, line 42 */
|
||||
{ int c6 = z->c; /* or, line 42 */
|
||||
if (z->c == z->l || z->p[z->c] != 'u') goto lab6; /* literal, line 42 */
|
||||
if (in_grouping(z, g_v, 97, 252, 0)) goto lab4;
|
||||
z->bra = z->c;
|
||||
{ int c6 = z->c;
|
||||
if (z->c == z->l || z->p[z->c] != 'u') goto lab6;
|
||||
z->c++;
|
||||
z->ket = z->c; /* ], line 42 */
|
||||
if (in_grouping(z, g_v, 97, 252, 0)) goto lab6; /* grouping v, line 42 */
|
||||
{ int ret = slice_from_s(z, 1, s_1); /* <-, line 42 */
|
||||
z->ket = z->c;
|
||||
if (in_grouping(z, g_v, 97, 252, 0)) goto lab6;
|
||||
{ int ret = slice_from_s(z, 1, s_1);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
goto lab5;
|
||||
lab6:
|
||||
z->c = c6;
|
||||
if (z->c == z->l || z->p[z->c] != 'y') goto lab4; /* literal, line 43 */
|
||||
if (z->c == z->l || z->p[z->c] != 'y') goto lab4;
|
||||
z->c++;
|
||||
z->ket = z->c; /* ], line 43 */
|
||||
if (in_grouping(z, g_v, 97, 252, 0)) goto lab4; /* grouping v, line 43 */
|
||||
{ int ret = slice_from_s(z, 1, s_2); /* <-, line 43 */
|
||||
z->ket = z->c;
|
||||
if (in_grouping(z, g_v, 97, 252, 0)) goto lab4;
|
||||
{ int ret = slice_from_s(z, 1, s_2);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
}
|
||||
@ -182,7 +180,7 @@ static int r_prelude(struct SN_env * z) { /* forwardmode */
|
||||
lab4:
|
||||
z->c = c5;
|
||||
if (z->c >= z->l) goto lab3;
|
||||
z->c++; /* goto, line 41 */
|
||||
z->c++;
|
||||
}
|
||||
continue;
|
||||
lab3:
|
||||
@ -192,79 +190,76 @@ static int r_prelude(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_mark_regions(struct SN_env * z) { /* forwardmode */
|
||||
z->I[0] = z->l; /* $p1 = <integer expression>, line 49 */
|
||||
z->I[1] = z->l; /* $p2 = <integer expression>, line 50 */
|
||||
{ int c_test1 = z->c; /* test, line 52 */
|
||||
{ int ret = z->c + 3; /* hop, line 52 */
|
||||
if (0 > ret || ret > z->l) return 0;
|
||||
z->c = ret;
|
||||
}
|
||||
z->I[2] = z->c; /* setmark x, line 52 */
|
||||
static int r_mark_regions(struct SN_env * z) {
|
||||
z->I[2] = z->l;
|
||||
z->I[1] = z->l;
|
||||
{ int c_test1 = z->c;
|
||||
z->c = z->c + 3;
|
||||
if (z->c > z->l) return 0;
|
||||
z->I[0] = z->c;
|
||||
z->c = c_test1;
|
||||
}
|
||||
{ /* gopast */ /* grouping v, line 54 */
|
||||
{
|
||||
int ret = out_grouping(z, g_v, 97, 252, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
{ /* gopast */ /* non v, line 54 */
|
||||
{
|
||||
int ret = in_grouping(z, g_v, 97, 252, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[0] = z->c; /* setmark p1, line 54 */
|
||||
/* try, line 55 */
|
||||
if (!(z->I[0] < z->I[2])) goto lab0; /* $(<integer expression> < <integer expression>), line 55 */
|
||||
z->I[0] = z->I[2]; /* $p1 = <integer expression>, line 55 */
|
||||
z->I[2] = z->c;
|
||||
|
||||
if (!(z->I[2] < z->I[0])) goto lab0;
|
||||
z->I[2] = z->I[0];
|
||||
lab0:
|
||||
{ /* gopast */ /* grouping v, line 56 */
|
||||
{
|
||||
int ret = out_grouping(z, g_v, 97, 252, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
{ /* gopast */ /* non v, line 56 */
|
||||
{
|
||||
int ret = in_grouping(z, g_v, 97, 252, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[1] = z->c; /* setmark p2, line 56 */
|
||||
z->I[1] = z->c;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_postlude(struct SN_env * z) { /* forwardmode */
|
||||
static int r_postlude(struct SN_env * z) {
|
||||
int among_var;
|
||||
/* repeat, line 60 */
|
||||
|
||||
while(1) { int c1 = z->c;
|
||||
z->bra = z->c; /* [, line 62 */
|
||||
among_var = find_among(z, a_0, 6); /* substring, line 62 */
|
||||
while(1) {
|
||||
int c1 = z->c;
|
||||
z->bra = z->c;
|
||||
among_var = find_among(z, a_0, 6);
|
||||
if (!(among_var)) goto lab0;
|
||||
z->ket = z->c; /* ], line 62 */
|
||||
switch (among_var) { /* among, line 62 */
|
||||
z->ket = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_from_s(z, 1, s_3); /* <-, line 63 */
|
||||
{ int ret = slice_from_s(z, 1, s_3);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 1, s_4); /* <-, line 64 */
|
||||
{ int ret = slice_from_s(z, 1, s_4);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_from_s(z, 1, s_5); /* <-, line 65 */
|
||||
{ int ret = slice_from_s(z, 1, s_5);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
{ int ret = slice_from_s(z, 1, s_6); /* <-, line 66 */
|
||||
{ int ret = slice_from_s(z, 1, s_6);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
if (z->c >= z->l) goto lab0;
|
||||
z->c++; /* next, line 68 */
|
||||
z->c++;
|
||||
break;
|
||||
}
|
||||
continue;
|
||||
@ -275,45 +270,45 @@ static int r_postlude(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_R1(struct SN_env * z) { /* backwardmode */
|
||||
if (!(z->I[0] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 75 */
|
||||
static int r_R1(struct SN_env * z) {
|
||||
if (!(z->I[2] <= z->c)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_R2(struct SN_env * z) { /* backwardmode */
|
||||
if (!(z->I[1] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 76 */
|
||||
static int r_R2(struct SN_env * z) {
|
||||
if (!(z->I[1] <= z->c)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
|
||||
static int r_standard_suffix(struct SN_env * z) {
|
||||
int among_var;
|
||||
{ int m1 = z->l - z->c; (void)m1; /* do, line 79 */
|
||||
z->ket = z->c; /* [, line 80 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((811040 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab0; /* substring, line 80 */
|
||||
{ int m1 = z->l - z->c; (void)m1;
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((811040 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab0;
|
||||
among_var = find_among_b(z, a_1, 7);
|
||||
if (!(among_var)) goto lab0;
|
||||
z->bra = z->c; /* ], line 80 */
|
||||
{ int ret = r_R1(z); /* call R1, line 80 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret == 0) goto lab0;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
switch (among_var) { /* among, line 80 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 82 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_del(z); /* delete, line 85 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int m2 = z->l - z->c; (void)m2; /* try, line 86 */
|
||||
z->ket = z->c; /* [, line 86 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 's') { z->c = z->l - m2; goto lab1; } /* literal, line 86 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 's') { z->c = z->l - m2; goto lab1; }
|
||||
z->c--;
|
||||
z->bra = z->c; /* ], line 86 */
|
||||
if (!(eq_s_b(z, 3, s_7))) { z->c = z->l - m2; goto lab1; } /* literal, line 86 */
|
||||
{ int ret = slice_del(z); /* delete, line 86 */
|
||||
z->bra = z->c;
|
||||
if (!(eq_s_b(z, 3, s_7))) { z->c = z->l - m2; goto lab1; }
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
lab1:
|
||||
@ -321,8 +316,8 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
if (in_grouping_b(z, g_s_ending, 98, 116, 0)) goto lab0; /* grouping s_ending, line 89 */
|
||||
{ int ret = slice_del(z); /* delete, line 89 */
|
||||
if (in_grouping_b(z, g_s_ending, 98, 116, 0)) goto lab0;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -330,29 +325,27 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
|
||||
lab0:
|
||||
z->c = z->l - m1;
|
||||
}
|
||||
{ int m3 = z->l - z->c; (void)m3; /* do, line 93 */
|
||||
z->ket = z->c; /* [, line 94 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1327104 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab2; /* substring, line 94 */
|
||||
{ int m3 = z->l - z->c; (void)m3;
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1327104 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab2;
|
||||
among_var = find_among_b(z, a_2, 4);
|
||||
if (!(among_var)) goto lab2;
|
||||
z->bra = z->c; /* ], line 94 */
|
||||
{ int ret = r_R1(z); /* call R1, line 94 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret == 0) goto lab2;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
switch (among_var) { /* among, line 94 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 96 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (in_grouping_b(z, g_st_ending, 98, 116, 0)) goto lab2; /* grouping st_ending, line 99 */
|
||||
{ int ret = z->c - 3; /* hop, line 99 */
|
||||
if (z->lb > ret || ret > z->l) goto lab2;
|
||||
z->c = ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 99 */
|
||||
if (in_grouping_b(z, g_st_ending, 98, 116, 0)) goto lab2;
|
||||
z->c = z->c - 3;
|
||||
if (z->c < z->lb) goto lab2;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -360,37 +353,37 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
|
||||
lab2:
|
||||
z->c = z->l - m3;
|
||||
}
|
||||
{ int m4 = z->l - z->c; (void)m4; /* do, line 103 */
|
||||
z->ket = z->c; /* [, line 104 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1051024 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab3; /* substring, line 104 */
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1051024 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab3;
|
||||
among_var = find_among_b(z, a_4, 8);
|
||||
if (!(among_var)) goto lab3;
|
||||
z->bra = z->c; /* ], line 104 */
|
||||
{ int ret = r_R2(z); /* call R2, line 104 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R2(z);
|
||||
if (ret == 0) goto lab3;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
switch (among_var) { /* among, line 104 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 106 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int m5 = z->l - z->c; (void)m5; /* try, line 107 */
|
||||
z->ket = z->c; /* [, line 107 */
|
||||
if (!(eq_s_b(z, 2, s_8))) { z->c = z->l - m5; goto lab4; } /* literal, line 107 */
|
||||
z->bra = z->c; /* ], line 107 */
|
||||
{ int m6 = z->l - z->c; (void)m6; /* not, line 107 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab5; /* literal, line 107 */
|
||||
{ int m5 = z->l - z->c; (void)m5;
|
||||
z->ket = z->c;
|
||||
if (!(eq_s_b(z, 2, s_8))) { z->c = z->l - m5; goto lab4; }
|
||||
z->bra = z->c;
|
||||
{ int m6 = z->l - z->c; (void)m6;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab5;
|
||||
z->c--;
|
||||
{ z->c = z->l - m5; goto lab4; }
|
||||
lab5:
|
||||
z->c = z->l - m6;
|
||||
}
|
||||
{ int ret = r_R2(z); /* call R2, line 107 */
|
||||
{ int ret = r_R2(z);
|
||||
if (ret == 0) { z->c = z->l - m5; goto lab4; }
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 107 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
lab4:
|
||||
@ -398,37 +391,37 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int m7 = z->l - z->c; (void)m7; /* not, line 110 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab6; /* literal, line 110 */
|
||||
{ int m7 = z->l - z->c; (void)m7;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab6;
|
||||
z->c--;
|
||||
goto lab3;
|
||||
lab6:
|
||||
z->c = z->l - m7;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 110 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_del(z); /* delete, line 113 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int m8 = z->l - z->c; (void)m8; /* try, line 114 */
|
||||
z->ket = z->c; /* [, line 115 */
|
||||
{ int m9 = z->l - z->c; (void)m9; /* or, line 115 */
|
||||
if (!(eq_s_b(z, 2, s_9))) goto lab9; /* literal, line 115 */
|
||||
{ int m8 = z->l - z->c; (void)m8;
|
||||
z->ket = z->c;
|
||||
{ int m9 = z->l - z->c; (void)m9;
|
||||
if (!(eq_s_b(z, 2, s_9))) goto lab9;
|
||||
goto lab8;
|
||||
lab9:
|
||||
z->c = z->l - m9;
|
||||
if (!(eq_s_b(z, 2, s_10))) { z->c = z->l - m8; goto lab7; } /* literal, line 115 */
|
||||
if (!(eq_s_b(z, 2, s_10))) { z->c = z->l - m8; goto lab7; }
|
||||
}
|
||||
lab8:
|
||||
z->bra = z->c; /* ], line 115 */
|
||||
{ int ret = r_R1(z); /* call R1, line 115 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret == 0) { z->c = z->l - m8; goto lab7; }
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 115 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
lab7:
|
||||
@ -436,19 +429,19 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
{ int ret = slice_del(z); /* delete, line 119 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int m10 = z->l - z->c; (void)m10; /* try, line 120 */
|
||||
z->ket = z->c; /* [, line 121 */
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 103 && z->p[z->c - 1] != 104)) { z->c = z->l - m10; goto lab10; } /* substring, line 121 */
|
||||
{ int m10 = z->l - z->c; (void)m10;
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 103 && z->p[z->c - 1] != 104)) { z->c = z->l - m10; goto lab10; }
|
||||
if (!(find_among_b(z, a_3, 2))) { z->c = z->l - m10; goto lab10; }
|
||||
z->bra = z->c; /* ], line 121 */
|
||||
{ int ret = r_R2(z); /* call R2, line 121 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R2(z);
|
||||
if (ret == 0) { z->c = z->l - m10; goto lab10; }
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 123 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
lab10:
|
||||
@ -462,28 +455,28 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern int german_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
|
||||
{ int c1 = z->c; /* do, line 134 */
|
||||
{ int ret = r_prelude(z); /* call prelude, line 134 */
|
||||
extern int german_ISO_8859_1_stem(struct SN_env * z) {
|
||||
{ int c1 = z->c;
|
||||
{ int ret = r_prelude(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = c1;
|
||||
}
|
||||
{ int c2 = z->c; /* do, line 135 */
|
||||
{ int ret = r_mark_regions(z); /* call mark_regions, line 135 */
|
||||
{ int c2 = z->c;
|
||||
{ int ret = r_mark_regions(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = c2;
|
||||
}
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 136 */
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
/* do, line 137 */
|
||||
{ int ret = r_standard_suffix(z); /* call standard_suffix, line 137 */
|
||||
|
||||
{ int ret = r_standard_suffix(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->lb;
|
||||
{ int c3 = z->c; /* do, line 138 */
|
||||
{ int ret = r_postlude(z); /* call postlude, line 138 */
|
||||
{ int c3 = z->c;
|
||||
{ int ret = r_postlude(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = c3;
|
||||
@ -491,7 +484,7 @@ extern int german_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern struct SN_env * german_ISO_8859_1_create_env(void) { return SN_create_env(0, 3, 0); }
|
||||
extern struct SN_env * german_ISO_8859_1_create_env(void) { return SN_create_env(0, 3); }
|
||||
|
||||
extern void german_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); }
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#include "header.h"
|
||||
|
||||
@ -37,9 +37,9 @@ static const symbol s_0_2[3] = { 'p', 'u', 'n' };
|
||||
|
||||
static const struct among a_0[3] =
|
||||
{
|
||||
/* 0 */ { 3, s_0_0, -1, 1, 0},
|
||||
/* 1 */ { 3, s_0_1, -1, 1, 0},
|
||||
/* 2 */ { 3, s_0_2, -1, 1, 0}
|
||||
{ 3, s_0_0, -1, 1, 0},
|
||||
{ 3, s_0_1, -1, 1, 0},
|
||||
{ 3, s_0_2, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_1_0[3] = { 'n', 'y', 'a' };
|
||||
@ -48,9 +48,9 @@ static const symbol s_1_2[2] = { 'm', 'u' };
|
||||
|
||||
static const struct among a_1[3] =
|
||||
{
|
||||
/* 0 */ { 3, s_1_0, -1, 1, 0},
|
||||
/* 1 */ { 2, s_1_1, -1, 1, 0},
|
||||
/* 2 */ { 2, s_1_2, -1, 1, 0}
|
||||
{ 3, s_1_0, -1, 1, 0},
|
||||
{ 2, s_1_1, -1, 1, 0},
|
||||
{ 2, s_1_2, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_2_0[1] = { 'i' };
|
||||
@ -59,9 +59,9 @@ static const symbol s_2_2[3] = { 'k', 'a', 'n' };
|
||||
|
||||
static const struct among a_2[3] =
|
||||
{
|
||||
/* 0 */ { 1, s_2_0, -1, 1, r_SUFFIX_I_OK},
|
||||
/* 1 */ { 2, s_2_1, -1, 1, r_SUFFIX_AN_OK},
|
||||
/* 2 */ { 3, s_2_2, 1, 1, r_SUFFIX_KAN_OK}
|
||||
{ 1, s_2_0, -1, 1, r_SUFFIX_I_OK},
|
||||
{ 2, s_2_1, -1, 1, r_SUFFIX_AN_OK},
|
||||
{ 3, s_2_2, 1, 1, r_SUFFIX_KAN_OK}
|
||||
};
|
||||
|
||||
static const symbol s_3_0[2] = { 'd', 'i' };
|
||||
@ -79,18 +79,18 @@ static const symbol s_3_11[3] = { 't', 'e', 'r' };
|
||||
|
||||
static const struct among a_3[12] =
|
||||
{
|
||||
/* 0 */ { 2, s_3_0, -1, 1, 0},
|
||||
/* 1 */ { 2, s_3_1, -1, 2, 0},
|
||||
/* 2 */ { 2, s_3_2, -1, 1, 0},
|
||||
/* 3 */ { 3, s_3_3, 2, 5, 0},
|
||||
/* 4 */ { 3, s_3_4, 2, 1, 0},
|
||||
/* 5 */ { 4, s_3_5, 4, 1, 0},
|
||||
/* 6 */ { 4, s_3_6, 4, 3, r_VOWEL},
|
||||
/* 7 */ { 3, s_3_7, -1, 6, 0},
|
||||
/* 8 */ { 3, s_3_8, -1, 2, 0},
|
||||
/* 9 */ { 4, s_3_9, 8, 2, 0},
|
||||
/* 10 */ { 4, s_3_10, 8, 4, r_VOWEL},
|
||||
/* 11 */ { 3, s_3_11, -1, 1, 0}
|
||||
{ 2, s_3_0, -1, 1, 0},
|
||||
{ 2, s_3_1, -1, 2, 0},
|
||||
{ 2, s_3_2, -1, 1, 0},
|
||||
{ 3, s_3_3, 2, 5, 0},
|
||||
{ 3, s_3_4, 2, 1, 0},
|
||||
{ 4, s_3_5, 4, 1, 0},
|
||||
{ 4, s_3_6, 4, 3, r_VOWEL},
|
||||
{ 3, s_3_7, -1, 6, 0},
|
||||
{ 3, s_3_8, -1, 2, 0},
|
||||
{ 4, s_3_9, 8, 2, 0},
|
||||
{ 4, s_3_10, 8, 4, r_VOWEL},
|
||||
{ 3, s_3_11, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_4_0[2] = { 'b', 'e' };
|
||||
@ -102,12 +102,12 @@ static const symbol s_4_5[3] = { 'p', 'e', 'r' };
|
||||
|
||||
static const struct among a_4[6] =
|
||||
{
|
||||
/* 0 */ { 2, s_4_0, -1, 3, r_KER},
|
||||
/* 1 */ { 7, s_4_1, 0, 4, 0},
|
||||
/* 2 */ { 3, s_4_2, 0, 3, 0},
|
||||
/* 3 */ { 2, s_4_3, -1, 1, 0},
|
||||
/* 4 */ { 7, s_4_4, 3, 2, 0},
|
||||
/* 5 */ { 3, s_4_5, 3, 1, 0}
|
||||
{ 2, s_4_0, -1, 3, r_KER},
|
||||
{ 7, s_4_1, 0, 4, 0},
|
||||
{ 3, s_4_2, 0, 3, 0},
|
||||
{ 2, s_4_3, -1, 1, 0},
|
||||
{ 7, s_4_4, 3, 2, 0},
|
||||
{ 3, s_4_5, 3, 1, 0}
|
||||
};
|
||||
|
||||
static const unsigned char g_vowel[] = { 17, 65, 16 };
|
||||
@ -120,46 +120,46 @@ static const symbol s_4[] = { 'p' };
|
||||
static const symbol s_5[] = { 'a', 'j', 'a', 'r' };
|
||||
static const symbol s_6[] = { 'a', 'j', 'a', 'r' };
|
||||
|
||||
static int r_remove_particle(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 51 */
|
||||
if (z->c - 2 <= z->lb || (z->p[z->c - 1] != 104 && z->p[z->c - 1] != 110)) return 0; /* substring, line 51 */
|
||||
static int r_remove_particle(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (z->c - 2 <= z->lb || (z->p[z->c - 1] != 104 && z->p[z->c - 1] != 110)) return 0;
|
||||
if (!(find_among_b(z, a_0, 3))) return 0;
|
||||
z->bra = z->c; /* ], line 51 */
|
||||
{ int ret = slice_del(z); /* delete, line 52 */
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->I[0] -= 1; /* $measure -= <integer expression>, line 52 */
|
||||
z->I[1] -= 1;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_remove_possessive_pronoun(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 57 */
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 97 && z->p[z->c - 1] != 117)) return 0; /* substring, line 57 */
|
||||
static int r_remove_possessive_pronoun(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 97 && z->p[z->c - 1] != 117)) return 0;
|
||||
if (!(find_among_b(z, a_1, 3))) return 0;
|
||||
z->bra = z->c; /* ], line 57 */
|
||||
{ int ret = slice_del(z); /* delete, line 58 */
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->I[0] -= 1; /* $measure -= <integer expression>, line 58 */
|
||||
z->I[1] -= 1;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_SUFFIX_KAN_OK(struct SN_env * z) { /* backwardmode */
|
||||
/* and, line 85 */
|
||||
if (!(z->I[1] != 3)) return 0; /* $(<integer expression> != <integer expression>), line 85 */
|
||||
if (!(z->I[1] != 2)) return 0; /* $(<integer expression> != <integer expression>), line 85 */
|
||||
static int r_SUFFIX_KAN_OK(struct SN_env * z) {
|
||||
|
||||
if (!(z->I[0] != 3)) return 0;
|
||||
if (!(z->I[0] != 2)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_SUFFIX_AN_OK(struct SN_env * z) { /* backwardmode */
|
||||
if (!(z->I[1] != 1)) return 0; /* $(<integer expression> != <integer expression>), line 89 */
|
||||
static int r_SUFFIX_AN_OK(struct SN_env * z) {
|
||||
if (!(z->I[0] != 1)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_SUFFIX_I_OK(struct SN_env * z) { /* backwardmode */
|
||||
if (!(z->I[1] <= 2)) return 0; /* $(<integer expression> <= <integer expression>), line 93 */
|
||||
{ int m1 = z->l - z->c; (void)m1; /* not, line 128 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 's') goto lab0; /* literal, line 128 */
|
||||
static int r_SUFFIX_I_OK(struct SN_env * z) {
|
||||
if (!(z->I[0] <= 2)) return 0;
|
||||
{ int m1 = z->l - z->c; (void)m1;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 's') goto lab0;
|
||||
z->c--;
|
||||
return 0;
|
||||
lab0:
|
||||
@ -168,100 +168,100 @@ static int r_SUFFIX_I_OK(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_remove_suffix(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 132 */
|
||||
if (z->c <= z->lb || (z->p[z->c - 1] != 105 && z->p[z->c - 1] != 110)) return 0; /* substring, line 132 */
|
||||
static int r_remove_suffix(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || (z->p[z->c - 1] != 105 && z->p[z->c - 1] != 110)) return 0;
|
||||
if (!(find_among_b(z, a_2, 3))) return 0;
|
||||
z->bra = z->c; /* ], line 132 */
|
||||
{ int ret = slice_del(z); /* delete, line 134 */
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->I[0] -= 1; /* $measure -= <integer expression>, line 134 */
|
||||
z->I[1] -= 1;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_VOWEL(struct SN_env * z) { /* forwardmode */
|
||||
if (in_grouping(z, g_vowel, 97, 117, 0)) return 0; /* grouping vowel, line 141 */
|
||||
static int r_VOWEL(struct SN_env * z) {
|
||||
if (in_grouping(z, g_vowel, 97, 117, 0)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_KER(struct SN_env * z) { /* forwardmode */
|
||||
if (out_grouping(z, g_vowel, 97, 117, 0)) return 0; /* non vowel, line 143 */
|
||||
if (!(eq_s(z, 2, s_0))) return 0; /* literal, line 143 */
|
||||
static int r_KER(struct SN_env * z) {
|
||||
if (out_grouping(z, g_vowel, 97, 117, 0)) return 0;
|
||||
if (!(eq_s(z, 2, s_0))) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_remove_first_order_prefix(struct SN_env * z) { /* forwardmode */
|
||||
static int r_remove_first_order_prefix(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->bra = z->c; /* [, line 146 */
|
||||
if (z->c + 1 >= z->l || (z->p[z->c + 1] != 105 && z->p[z->c + 1] != 101)) return 0; /* substring, line 146 */
|
||||
z->bra = z->c;
|
||||
if (z->c + 1 >= z->l || (z->p[z->c + 1] != 105 && z->p[z->c + 1] != 101)) return 0;
|
||||
among_var = find_among(z, a_3, 12);
|
||||
if (!(among_var)) return 0;
|
||||
z->ket = z->c; /* ], line 146 */
|
||||
switch (among_var) { /* among, line 146 */
|
||||
z->ket = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 147 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->I[1] = 1; /* $prefix = <integer expression>, line 147 */
|
||||
z->I[0] -= 1; /* $measure -= <integer expression>, line 147 */
|
||||
z->I[0] = 1;
|
||||
z->I[1] -= 1;
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_del(z); /* delete, line 148 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->I[1] = 3; /* $prefix = <integer expression>, line 148 */
|
||||
z->I[0] -= 1; /* $measure -= <integer expression>, line 148 */
|
||||
z->I[0] = 3;
|
||||
z->I[1] -= 1;
|
||||
break;
|
||||
case 3:
|
||||
z->I[1] = 1; /* $prefix = <integer expression>, line 149 */
|
||||
{ int ret = slice_from_s(z, 1, s_1); /* <-, line 149 */
|
||||
z->I[0] = 1;
|
||||
{ int ret = slice_from_s(z, 1, s_1);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->I[0] -= 1; /* $measure -= <integer expression>, line 149 */
|
||||
z->I[1] -= 1;
|
||||
break;
|
||||
case 4:
|
||||
z->I[1] = 3; /* $prefix = <integer expression>, line 150 */
|
||||
{ int ret = slice_from_s(z, 1, s_2); /* <-, line 150 */
|
||||
z->I[0] = 3;
|
||||
{ int ret = slice_from_s(z, 1, s_2);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->I[0] -= 1; /* $measure -= <integer expression>, line 150 */
|
||||
z->I[1] -= 1;
|
||||
break;
|
||||
case 5:
|
||||
z->I[1] = 1; /* $prefix = <integer expression>, line 151 */
|
||||
z->I[0] -= 1; /* $measure -= <integer expression>, line 151 */
|
||||
{ int c1 = z->c; /* or, line 151 */
|
||||
{ int c2 = z->c; /* and, line 151 */
|
||||
if (in_grouping(z, g_vowel, 97, 117, 0)) goto lab1; /* grouping vowel, line 151 */
|
||||
z->I[0] = 1;
|
||||
z->I[1] -= 1;
|
||||
{ int c1 = z->c;
|
||||
{ int c2 = z->c;
|
||||
if (in_grouping(z, g_vowel, 97, 117, 0)) goto lab1;
|
||||
z->c = c2;
|
||||
{ int ret = slice_from_s(z, 1, s_3); /* <-, line 151 */
|
||||
{ int ret = slice_from_s(z, 1, s_3);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
}
|
||||
goto lab0;
|
||||
lab1:
|
||||
z->c = c1;
|
||||
{ int ret = slice_del(z); /* delete, line 151 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
}
|
||||
lab0:
|
||||
break;
|
||||
case 6:
|
||||
z->I[1] = 3; /* $prefix = <integer expression>, line 152 */
|
||||
z->I[0] -= 1; /* $measure -= <integer expression>, line 152 */
|
||||
{ int c3 = z->c; /* or, line 152 */
|
||||
{ int c4 = z->c; /* and, line 152 */
|
||||
if (in_grouping(z, g_vowel, 97, 117, 0)) goto lab3; /* grouping vowel, line 152 */
|
||||
z->I[0] = 3;
|
||||
z->I[1] -= 1;
|
||||
{ int c3 = z->c;
|
||||
{ int c4 = z->c;
|
||||
if (in_grouping(z, g_vowel, 97, 117, 0)) goto lab3;
|
||||
z->c = c4;
|
||||
{ int ret = slice_from_s(z, 1, s_4); /* <-, line 152 */
|
||||
{ int ret = slice_from_s(z, 1, s_4);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
}
|
||||
goto lab2;
|
||||
lab3:
|
||||
z->c = c3;
|
||||
{ int ret = slice_del(z); /* delete, line 152 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
}
|
||||
@ -271,57 +271,56 @@ static int r_remove_first_order_prefix(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_remove_second_order_prefix(struct SN_env * z) { /* forwardmode */
|
||||
static int r_remove_second_order_prefix(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->bra = z->c; /* [, line 162 */
|
||||
if (z->c + 1 >= z->l || z->p[z->c + 1] != 101) return 0; /* substring, line 162 */
|
||||
z->bra = z->c;
|
||||
if (z->c + 1 >= z->l || z->p[z->c + 1] != 101) return 0;
|
||||
among_var = find_among(z, a_4, 6);
|
||||
if (!(among_var)) return 0;
|
||||
z->ket = z->c; /* ], line 162 */
|
||||
switch (among_var) { /* among, line 162 */
|
||||
z->ket = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 163 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->I[1] = 2; /* $prefix = <integer expression>, line 163 */
|
||||
z->I[0] -= 1; /* $measure -= <integer expression>, line 163 */
|
||||
z->I[0] = 2;
|
||||
z->I[1] -= 1;
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 4, s_5); /* <-, line 164 */
|
||||
{ int ret = slice_from_s(z, 4, s_5);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->I[0] -= 1; /* $measure -= <integer expression>, line 164 */
|
||||
z->I[1] -= 1;
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_del(z); /* delete, line 165 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->I[1] = 4; /* $prefix = <integer expression>, line 165 */
|
||||
z->I[0] -= 1; /* $measure -= <integer expression>, line 165 */
|
||||
z->I[0] = 4;
|
||||
z->I[1] -= 1;
|
||||
break;
|
||||
case 4:
|
||||
{ int ret = slice_from_s(z, 4, s_6); /* <-, line 166 */
|
||||
{ int ret = slice_from_s(z, 4, s_6);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->I[1] = 4; /* $prefix = <integer expression>, line 166 */
|
||||
z->I[0] -= 1; /* $measure -= <integer expression>, line 166 */
|
||||
z->I[0] = 4;
|
||||
z->I[1] -= 1;
|
||||
break;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern int indonesian_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
|
||||
z->I[0] = 0; /* $measure = <integer expression>, line 172 */
|
||||
{ int c1 = z->c; /* do, line 173 */
|
||||
/* repeat, line 173 */
|
||||
|
||||
while(1) { int c2 = z->c;
|
||||
{ /* gopast */ /* grouping vowel, line 173 */
|
||||
extern int indonesian_ISO_8859_1_stem(struct SN_env * z) {
|
||||
z->I[1] = 0;
|
||||
{ int c1 = z->c;
|
||||
while(1) {
|
||||
int c2 = z->c;
|
||||
{
|
||||
int ret = out_grouping(z, g_vowel, 97, 117, 1);
|
||||
if (ret < 0) goto lab1;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[0] += 1; /* $measure += <integer expression>, line 173 */
|
||||
z->I[1] += 1;
|
||||
continue;
|
||||
lab1:
|
||||
z->c = c2;
|
||||
@ -329,45 +328,45 @@ extern int indonesian_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
|
||||
}
|
||||
z->c = c1;
|
||||
}
|
||||
if (!(z->I[0] > 2)) return 0; /* $(<integer expression> > <integer expression>), line 174 */
|
||||
z->I[1] = 0; /* $prefix = <integer expression>, line 175 */
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 176 */
|
||||
if (!(z->I[1] > 2)) return 0;
|
||||
z->I[0] = 0;
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
{ int m3 = z->l - z->c; (void)m3; /* do, line 177 */
|
||||
{ int ret = r_remove_particle(z); /* call remove_particle, line 177 */
|
||||
{ int m3 = z->l - z->c; (void)m3;
|
||||
{ int ret = r_remove_particle(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m3;
|
||||
}
|
||||
if (!(z->I[0] > 2)) return 0; /* $(<integer expression> > <integer expression>), line 178 */
|
||||
{ int m4 = z->l - z->c; (void)m4; /* do, line 179 */
|
||||
{ int ret = r_remove_possessive_pronoun(z); /* call remove_possessive_pronoun, line 179 */
|
||||
if (!(z->I[1] > 2)) return 0;
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
{ int ret = r_remove_possessive_pronoun(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m4;
|
||||
}
|
||||
z->c = z->lb;
|
||||
if (!(z->I[0] > 2)) return 0; /* $(<integer expression> > <integer expression>), line 181 */
|
||||
{ int c5 = z->c; /* or, line 188 */
|
||||
{ int c_test6 = z->c; /* test, line 182 */
|
||||
{ int ret = r_remove_first_order_prefix(z); /* call remove_first_order_prefix, line 183 */
|
||||
if (!(z->I[1] > 2)) return 0;
|
||||
{ int c5 = z->c;
|
||||
{ int c_test6 = z->c;
|
||||
{ int ret = r_remove_first_order_prefix(z);
|
||||
if (ret == 0) goto lab3;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int c7 = z->c; /* do, line 184 */
|
||||
{ int c_test8 = z->c; /* test, line 185 */
|
||||
if (!(z->I[0] > 2)) goto lab4; /* $(<integer expression> > <integer expression>), line 185 */
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 185 */
|
||||
{ int c7 = z->c;
|
||||
{ int c_test8 = z->c;
|
||||
if (!(z->I[1] > 2)) goto lab4;
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
{ int ret = r_remove_suffix(z); /* call remove_suffix, line 185 */
|
||||
{ int ret = r_remove_suffix(z);
|
||||
if (ret == 0) goto lab4;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->lb;
|
||||
z->c = c_test8;
|
||||
}
|
||||
if (!(z->I[0] > 2)) goto lab4; /* $(<integer expression> > <integer expression>), line 186 */
|
||||
{ int ret = r_remove_second_order_prefix(z); /* call remove_second_order_prefix, line 186 */
|
||||
if (!(z->I[1] > 2)) goto lab4;
|
||||
{ int ret = r_remove_second_order_prefix(z);
|
||||
if (ret == 0) goto lab4;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
@ -379,17 +378,17 @@ extern int indonesian_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
|
||||
goto lab2;
|
||||
lab3:
|
||||
z->c = c5;
|
||||
{ int c9 = z->c; /* do, line 189 */
|
||||
{ int ret = r_remove_second_order_prefix(z); /* call remove_second_order_prefix, line 189 */
|
||||
{ int c9 = z->c;
|
||||
{ int ret = r_remove_second_order_prefix(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = c9;
|
||||
}
|
||||
{ int c10 = z->c; /* do, line 190 */
|
||||
if (!(z->I[0] > 2)) goto lab5; /* $(<integer expression> > <integer expression>), line 190 */
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 190 */
|
||||
{ int c10 = z->c;
|
||||
if (!(z->I[1] > 2)) goto lab5;
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
{ int ret = r_remove_suffix(z); /* call remove_suffix, line 190 */
|
||||
{ int ret = r_remove_suffix(z);
|
||||
if (ret == 0) goto lab5;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
@ -402,7 +401,7 @@ lab2:
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern struct SN_env * indonesian_ISO_8859_1_create_env(void) { return SN_create_env(0, 2, 0); }
|
||||
extern struct SN_env * indonesian_ISO_8859_1_create_env(void) { return SN_create_env(0, 2); }
|
||||
|
||||
extern void indonesian_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); }
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#include "header.h"
|
||||
|
||||
@ -56,30 +56,30 @@ static const symbol s_0_23[2] = { 't', 's' };
|
||||
|
||||
static const struct among a_0[24] =
|
||||
{
|
||||
/* 0 */ { 2, s_0_0, -1, 1, 0},
|
||||
/* 1 */ { 2, s_0_1, -1, 4, 0},
|
||||
/* 2 */ { 3, s_0_2, 1, 2, 0},
|
||||
/* 3 */ { 2, s_0_3, -1, 8, 0},
|
||||
/* 4 */ { 2, s_0_4, -1, 5, 0},
|
||||
/* 5 */ { 2, s_0_5, -1, 1, 0},
|
||||
/* 6 */ { 4, s_0_6, 5, 2, 0},
|
||||
/* 7 */ { 2, s_0_7, -1, 6, 0},
|
||||
/* 8 */ { 2, s_0_8, -1, 9, 0},
|
||||
/* 9 */ { 2, s_0_9, -1, 2, 0},
|
||||
/* 10 */ { 2, s_0_10, -1, 5, 0},
|
||||
/* 11 */ { 2, s_0_11, -1, 7, 0},
|
||||
/* 12 */ { 2, s_0_12, -1, 1, 0},
|
||||
/* 13 */ { 2, s_0_13, -1, 1, 0},
|
||||
/* 14 */ { 2, s_0_14, -1, 4, 0},
|
||||
/* 15 */ { 2, s_0_15, -1, 10, 0},
|
||||
/* 16 */ { 2, s_0_16, -1, 1, 0},
|
||||
/* 17 */ { 2, s_0_17, -1, 6, 0},
|
||||
/* 18 */ { 2, s_0_18, -1, 7, 0},
|
||||
/* 19 */ { 2, s_0_19, -1, 8, 0},
|
||||
/* 20 */ { 2, s_0_20, -1, 3, 0},
|
||||
/* 21 */ { 2, s_0_21, -1, 1, 0},
|
||||
/* 22 */ { 2, s_0_22, -1, 9, 0},
|
||||
/* 23 */ { 2, s_0_23, -1, 3, 0}
|
||||
{ 2, s_0_0, -1, 1, 0},
|
||||
{ 2, s_0_1, -1, 4, 0},
|
||||
{ 3, s_0_2, 1, 2, 0},
|
||||
{ 2, s_0_3, -1, 8, 0},
|
||||
{ 2, s_0_4, -1, 5, 0},
|
||||
{ 2, s_0_5, -1, 1, 0},
|
||||
{ 4, s_0_6, 5, 2, 0},
|
||||
{ 2, s_0_7, -1, 6, 0},
|
||||
{ 2, s_0_8, -1, 9, 0},
|
||||
{ 2, s_0_9, -1, 2, 0},
|
||||
{ 2, s_0_10, -1, 5, 0},
|
||||
{ 2, s_0_11, -1, 7, 0},
|
||||
{ 2, s_0_12, -1, 1, 0},
|
||||
{ 2, s_0_13, -1, 1, 0},
|
||||
{ 2, s_0_14, -1, 4, 0},
|
||||
{ 2, s_0_15, -1, 10, 0},
|
||||
{ 2, s_0_16, -1, 1, 0},
|
||||
{ 2, s_0_17, -1, 6, 0},
|
||||
{ 2, s_0_18, -1, 7, 0},
|
||||
{ 2, s_0_19, -1, 8, 0},
|
||||
{ 2, s_0_20, -1, 3, 0},
|
||||
{ 2, s_0_21, -1, 1, 0},
|
||||
{ 2, s_0_22, -1, 9, 0},
|
||||
{ 2, s_0_23, -1, 3, 0}
|
||||
};
|
||||
|
||||
static const symbol s_1_0[6] = { 0xED, 'o', 'c', 'h', 't', 'a' };
|
||||
@ -101,22 +101,22 @@ static const symbol s_1_15[4] = { 'a', 'i', 'r', 0xED };
|
||||
|
||||
static const struct among a_1[16] =
|
||||
{
|
||||
/* 0 */ { 6, s_1_0, -1, 1, 0},
|
||||
/* 1 */ { 7, s_1_1, 0, 1, 0},
|
||||
/* 2 */ { 3, s_1_2, -1, 2, 0},
|
||||
/* 3 */ { 4, s_1_3, 2, 2, 0},
|
||||
/* 4 */ { 3, s_1_4, -1, 1, 0},
|
||||
/* 5 */ { 4, s_1_5, 4, 1, 0},
|
||||
/* 6 */ { 3, s_1_6, -1, 1, 0},
|
||||
/* 7 */ { 4, s_1_7, 6, 1, 0},
|
||||
/* 8 */ { 3, s_1_8, -1, 1, 0},
|
||||
/* 9 */ { 4, s_1_9, 8, 1, 0},
|
||||
/* 10 */ { 3, s_1_10, -1, 1, 0},
|
||||
/* 11 */ { 4, s_1_11, 10, 1, 0},
|
||||
/* 12 */ { 5, s_1_12, -1, 1, 0},
|
||||
/* 13 */ { 6, s_1_13, 12, 1, 0},
|
||||
/* 14 */ { 3, s_1_14, -1, 2, 0},
|
||||
/* 15 */ { 4, s_1_15, 14, 2, 0}
|
||||
{ 6, s_1_0, -1, 1, 0},
|
||||
{ 7, s_1_1, 0, 1, 0},
|
||||
{ 3, s_1_2, -1, 2, 0},
|
||||
{ 4, s_1_3, 2, 2, 0},
|
||||
{ 3, s_1_4, -1, 1, 0},
|
||||
{ 4, s_1_5, 4, 1, 0},
|
||||
{ 3, s_1_6, -1, 1, 0},
|
||||
{ 4, s_1_7, 6, 1, 0},
|
||||
{ 3, s_1_8, -1, 1, 0},
|
||||
{ 4, s_1_9, 8, 1, 0},
|
||||
{ 3, s_1_10, -1, 1, 0},
|
||||
{ 4, s_1_11, 10, 1, 0},
|
||||
{ 5, s_1_12, -1, 1, 0},
|
||||
{ 6, s_1_13, 12, 1, 0},
|
||||
{ 3, s_1_14, -1, 2, 0},
|
||||
{ 4, s_1_15, 14, 2, 0}
|
||||
};
|
||||
|
||||
static const symbol s_2_0[8] = { 0xF3, 'i', 'd', 'e', 'a', 'c', 'h', 'a' };
|
||||
@ -147,31 +147,31 @@ static const symbol s_2_24[12] = { 'g', 'r', 'a', 'f', 'a', 0xED, 'o', 'c', 'h',
|
||||
|
||||
static const struct among a_2[25] =
|
||||
{
|
||||
/* 0 */ { 8, s_2_0, -1, 6, 0},
|
||||
/* 1 */ { 7, s_2_1, -1, 5, 0},
|
||||
/* 2 */ { 5, s_2_2, -1, 1, 0},
|
||||
/* 3 */ { 8, s_2_3, 2, 2, 0},
|
||||
/* 4 */ { 6, s_2_4, 2, 1, 0},
|
||||
/* 5 */ { 11, s_2_5, -1, 4, 0},
|
||||
/* 6 */ { 5, s_2_6, -1, 5, 0},
|
||||
/* 7 */ { 3, s_2_7, -1, 1, 0},
|
||||
/* 8 */ { 4, s_2_8, 7, 1, 0},
|
||||
/* 9 */ { 7, s_2_9, 8, 6, 0},
|
||||
/* 10 */ { 7, s_2_10, 8, 3, 0},
|
||||
/* 11 */ { 6, s_2_11, 7, 5, 0},
|
||||
/* 12 */ { 9, s_2_12, -1, 4, 0},
|
||||
/* 13 */ { 7, s_2_13, -1, 5, 0},
|
||||
/* 14 */ { 6, s_2_14, -1, 6, 0},
|
||||
/* 15 */ { 7, s_2_15, -1, 1, 0},
|
||||
/* 16 */ { 8, s_2_16, 15, 1, 0},
|
||||
/* 17 */ { 6, s_2_17, -1, 3, 0},
|
||||
/* 18 */ { 5, s_2_18, -1, 3, 0},
|
||||
/* 19 */ { 4, s_2_19, -1, 1, 0},
|
||||
/* 20 */ { 7, s_2_20, 19, 2, 0},
|
||||
/* 21 */ { 5, s_2_21, 19, 1, 0},
|
||||
/* 22 */ { 10, s_2_22, -1, 4, 0},
|
||||
/* 23 */ { 9, s_2_23, -1, 2, 0},
|
||||
/* 24 */ { 12, s_2_24, -1, 4, 0}
|
||||
{ 8, s_2_0, -1, 6, 0},
|
||||
{ 7, s_2_1, -1, 5, 0},
|
||||
{ 5, s_2_2, -1, 1, 0},
|
||||
{ 8, s_2_3, 2, 2, 0},
|
||||
{ 6, s_2_4, 2, 1, 0},
|
||||
{ 11, s_2_5, -1, 4, 0},
|
||||
{ 5, s_2_6, -1, 5, 0},
|
||||
{ 3, s_2_7, -1, 1, 0},
|
||||
{ 4, s_2_8, 7, 1, 0},
|
||||
{ 7, s_2_9, 8, 6, 0},
|
||||
{ 7, s_2_10, 8, 3, 0},
|
||||
{ 6, s_2_11, 7, 5, 0},
|
||||
{ 9, s_2_12, -1, 4, 0},
|
||||
{ 7, s_2_13, -1, 5, 0},
|
||||
{ 6, s_2_14, -1, 6, 0},
|
||||
{ 7, s_2_15, -1, 1, 0},
|
||||
{ 8, s_2_16, 15, 1, 0},
|
||||
{ 6, s_2_17, -1, 3, 0},
|
||||
{ 5, s_2_18, -1, 3, 0},
|
||||
{ 4, s_2_19, -1, 1, 0},
|
||||
{ 7, s_2_20, 19, 2, 0},
|
||||
{ 5, s_2_21, 19, 1, 0},
|
||||
{ 10, s_2_22, -1, 4, 0},
|
||||
{ 9, s_2_23, -1, 2, 0},
|
||||
{ 12, s_2_24, -1, 4, 0}
|
||||
};
|
||||
|
||||
static const symbol s_3_0[4] = { 'i', 'm', 'i', 'd' };
|
||||
@ -189,18 +189,18 @@ static const symbol s_3_11[3] = { 't', 'a', 'r' };
|
||||
|
||||
static const struct among a_3[12] =
|
||||
{
|
||||
/* 0 */ { 4, s_3_0, -1, 1, 0},
|
||||
/* 1 */ { 5, s_3_1, 0, 1, 0},
|
||||
/* 2 */ { 4, s_3_2, -1, 1, 0},
|
||||
/* 3 */ { 5, s_3_3, 2, 1, 0},
|
||||
/* 4 */ { 3, s_3_4, -1, 2, 0},
|
||||
/* 5 */ { 4, s_3_5, 4, 2, 0},
|
||||
/* 6 */ { 5, s_3_6, -1, 1, 0},
|
||||
/* 7 */ { 4, s_3_7, -1, 1, 0},
|
||||
/* 8 */ { 3, s_3_8, -1, 2, 0},
|
||||
/* 9 */ { 3, s_3_9, -1, 2, 0},
|
||||
/* 10 */ { 4, s_3_10, -1, 2, 0},
|
||||
/* 11 */ { 3, s_3_11, -1, 2, 0}
|
||||
{ 4, s_3_0, -1, 1, 0},
|
||||
{ 5, s_3_1, 0, 1, 0},
|
||||
{ 4, s_3_2, -1, 1, 0},
|
||||
{ 5, s_3_3, 2, 1, 0},
|
||||
{ 3, s_3_4, -1, 2, 0},
|
||||
{ 4, s_3_5, 4, 2, 0},
|
||||
{ 5, s_3_6, -1, 1, 0},
|
||||
{ 4, s_3_7, -1, 1, 0},
|
||||
{ 3, s_3_8, -1, 2, 0},
|
||||
{ 3, s_3_9, -1, 2, 0},
|
||||
{ 4, s_3_10, -1, 2, 0},
|
||||
{ 3, s_3_11, -1, 2, 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, 2 };
|
||||
@ -220,103 +220,103 @@ static const symbol s_11[] = { 'g', 'r', 'a', 'f' };
|
||||
static const symbol s_12[] = { 'p', 'a', 'i', 't', 'e' };
|
||||
static const symbol s_13[] = { 0xF3, 'i', 'd' };
|
||||
|
||||
static int r_mark_regions(struct SN_env * z) { /* forwardmode */
|
||||
z->I[0] = z->l; /* $pV = <integer expression>, line 30 */
|
||||
z->I[1] = z->l; /* $p1 = <integer expression>, line 31 */
|
||||
z->I[2] = z->l; /* $p2 = <integer expression>, line 32 */
|
||||
{ int c1 = z->c; /* do, line 34 */
|
||||
{ /* gopast */ /* grouping v, line 35 */
|
||||
static int r_mark_regions(struct SN_env * z) {
|
||||
z->I[2] = z->l;
|
||||
z->I[1] = z->l;
|
||||
z->I[0] = z->l;
|
||||
{ int c1 = z->c;
|
||||
{
|
||||
int ret = out_grouping(z, g_v, 97, 250, 1);
|
||||
if (ret < 0) goto lab0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[0] = z->c; /* setmark pV, line 35 */
|
||||
z->I[2] = z->c;
|
||||
lab0:
|
||||
z->c = c1;
|
||||
}
|
||||
{ int c2 = z->c; /* do, line 37 */
|
||||
{ /* gopast */ /* grouping v, line 38 */
|
||||
{ int c2 = z->c;
|
||||
{
|
||||
int ret = out_grouping(z, g_v, 97, 250, 1);
|
||||
if (ret < 0) goto lab1;
|
||||
z->c += ret;
|
||||
}
|
||||
{ /* gopast */ /* non v, line 38 */
|
||||
{
|
||||
int ret = in_grouping(z, g_v, 97, 250, 1);
|
||||
if (ret < 0) goto lab1;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[1] = z->c; /* setmark p1, line 38 */
|
||||
{ /* gopast */ /* grouping v, line 39 */
|
||||
z->I[1] = z->c;
|
||||
{
|
||||
int ret = out_grouping(z, g_v, 97, 250, 1);
|
||||
if (ret < 0) goto lab1;
|
||||
z->c += ret;
|
||||
}
|
||||
{ /* gopast */ /* non v, line 39 */
|
||||
{
|
||||
int ret = in_grouping(z, g_v, 97, 250, 1);
|
||||
if (ret < 0) goto lab1;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[2] = z->c; /* setmark p2, line 39 */
|
||||
z->I[0] = z->c;
|
||||
lab1:
|
||||
z->c = c2;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_initial_morph(struct SN_env * z) { /* forwardmode */
|
||||
static int r_initial_morph(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->bra = z->c; /* [, line 44 */
|
||||
among_var = find_among(z, a_0, 24); /* substring, line 44 */
|
||||
z->bra = z->c;
|
||||
among_var = find_among(z, a_0, 24);
|
||||
if (!(among_var)) return 0;
|
||||
z->ket = z->c; /* ], line 44 */
|
||||
switch (among_var) { /* among, line 44 */
|
||||
z->ket = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 46 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 1, s_0); /* <-, line 52 */
|
||||
{ int ret = slice_from_s(z, 1, s_0);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_from_s(z, 1, s_1); /* <-, line 58 */
|
||||
{ int ret = slice_from_s(z, 1, s_1);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
{ int ret = slice_from_s(z, 1, s_2); /* <-, line 61 */
|
||||
{ int ret = slice_from_s(z, 1, s_2);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
{ int ret = slice_from_s(z, 1, s_3); /* <-, line 63 */
|
||||
{ int ret = slice_from_s(z, 1, s_3);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 6:
|
||||
{ int ret = slice_from_s(z, 1, s_4); /* <-, line 65 */
|
||||
{ int ret = slice_from_s(z, 1, s_4);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 7:
|
||||
{ int ret = slice_from_s(z, 1, s_5); /* <-, line 69 */
|
||||
{ int ret = slice_from_s(z, 1, s_5);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 8:
|
||||
{ int ret = slice_from_s(z, 1, s_6); /* <-, line 71 */
|
||||
{ int ret = slice_from_s(z, 1, s_6);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 9:
|
||||
{ int ret = slice_from_s(z, 1, s_7); /* <-, line 75 */
|
||||
{ int ret = slice_from_s(z, 1, s_7);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 10:
|
||||
{ int ret = slice_from_s(z, 1, s_8); /* <-, line 89 */
|
||||
{ int ret = slice_from_s(z, 1, s_8);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -324,41 +324,41 @@ static int r_initial_morph(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_RV(struct SN_env * z) { /* backwardmode */
|
||||
if (!(z->I[0] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 99 */
|
||||
static int r_RV(struct SN_env * z) {
|
||||
if (!(z->I[2] <= z->c)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_R1(struct SN_env * z) { /* backwardmode */
|
||||
if (!(z->I[1] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 100 */
|
||||
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) { /* backwardmode */
|
||||
if (!(z->I[2] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 101 */
|
||||
static int r_R2(struct SN_env * z) {
|
||||
if (!(z->I[0] <= z->c)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_noun_sfx(struct SN_env * z) { /* backwardmode */
|
||||
static int r_noun_sfx(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 104 */
|
||||
among_var = find_among_b(z, a_1, 16); /* substring, line 104 */
|
||||
z->ket = z->c;
|
||||
among_var = find_among_b(z, a_1, 16);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 104 */
|
||||
switch (among_var) { /* among, line 104 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = r_R1(z); /* call R1, line 108 */
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 108 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = r_R2(z); /* call R2, line 110 */
|
||||
{ int ret = r_R2(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 110 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -366,43 +366,43 @@ static int r_noun_sfx(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_deriv(struct SN_env * z) { /* backwardmode */
|
||||
static int r_deriv(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 114 */
|
||||
among_var = find_among_b(z, a_2, 25); /* substring, line 114 */
|
||||
z->ket = z->c;
|
||||
among_var = find_among_b(z, a_2, 25);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 114 */
|
||||
switch (among_var) { /* among, line 114 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = r_R2(z); /* call R2, line 116 */
|
||||
{ int ret = r_R2(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 116 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 3, s_9); /* <-, line 118 */
|
||||
{ int ret = slice_from_s(z, 3, s_9);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_from_s(z, 3, s_10); /* <-, line 120 */
|
||||
{ int ret = slice_from_s(z, 3, s_10);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
{ int ret = slice_from_s(z, 4, s_11); /* <-, line 122 */
|
||||
{ int ret = slice_from_s(z, 4, s_11);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
{ int ret = slice_from_s(z, 5, s_12); /* <-, line 124 */
|
||||
{ int ret = slice_from_s(z, 5, s_12);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 6:
|
||||
{ int ret = slice_from_s(z, 3, s_13); /* <-, line 126 */
|
||||
{ int ret = slice_from_s(z, 3, s_13);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -410,27 +410,27 @@ static int r_deriv(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_verb_sfx(struct SN_env * z) { /* backwardmode */
|
||||
static int r_verb_sfx(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 130 */
|
||||
if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((282896 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 130 */
|
||||
z->ket = z->c;
|
||||
if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((282896 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
|
||||
among_var = find_among_b(z, a_3, 12);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 130 */
|
||||
switch (among_var) { /* among, line 130 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = r_RV(z); /* call RV, line 133 */
|
||||
{ int ret = r_RV(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 133 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = r_R1(z); /* call R1, line 138 */
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 138 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -438,33 +438,33 @@ static int r_verb_sfx(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern int irish_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
|
||||
{ int c1 = z->c; /* do, line 144 */
|
||||
{ int ret = r_initial_morph(z); /* call initial_morph, line 144 */
|
||||
extern int irish_ISO_8859_1_stem(struct SN_env * z) {
|
||||
{ int c1 = z->c;
|
||||
{ int ret = r_initial_morph(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = c1;
|
||||
}
|
||||
/* do, line 145 */
|
||||
{ int ret = r_mark_regions(z); /* call mark_regions, line 145 */
|
||||
|
||||
{ int ret = r_mark_regions(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 146 */
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
{ int m2 = z->l - z->c; (void)m2; /* do, line 147 */
|
||||
{ int ret = r_noun_sfx(z); /* call noun_sfx, line 147 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
{ int ret = r_noun_sfx(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m2;
|
||||
}
|
||||
{ int m3 = z->l - z->c; (void)m3; /* do, line 148 */
|
||||
{ int ret = r_deriv(z); /* call deriv, line 148 */
|
||||
{ int m3 = z->l - z->c; (void)m3;
|
||||
{ int ret = r_deriv(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m3;
|
||||
}
|
||||
{ int m4 = z->l - z->c; (void)m4; /* do, line 149 */
|
||||
{ int ret = r_verb_sfx(z); /* call verb_sfx, line 149 */
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
{ int ret = r_verb_sfx(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m4;
|
||||
@ -473,7 +473,7 @@ extern int irish_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern struct SN_env * irish_ISO_8859_1_create_env(void) { return SN_create_env(0, 3, 0); }
|
||||
extern struct SN_env * irish_ISO_8859_1_create_env(void) { return SN_create_env(0, 3); }
|
||||
|
||||
extern void irish_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); }
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#include "header.h"
|
||||
|
||||
@ -57,35 +57,35 @@ static const symbol s_0_28[3] = { 'a', 's', 't' };
|
||||
|
||||
static const struct among a_0[29] =
|
||||
{
|
||||
/* 0 */ { 1, s_0_0, -1, 1, 0},
|
||||
/* 1 */ { 1, s_0_1, -1, 1, 0},
|
||||
/* 2 */ { 3, s_0_2, 1, 1, 0},
|
||||
/* 3 */ { 4, s_0_3, 1, 1, 0},
|
||||
/* 4 */ { 4, s_0_4, 1, 1, 0},
|
||||
/* 5 */ { 3, s_0_5, 1, 1, 0},
|
||||
/* 6 */ { 3, s_0_6, 1, 1, 0},
|
||||
/* 7 */ { 6, s_0_7, 6, 1, 0},
|
||||
/* 8 */ { 4, s_0_8, 1, 3, 0},
|
||||
/* 9 */ { 2, s_0_9, -1, 1, 0},
|
||||
/* 10 */ { 5, s_0_10, 9, 1, 0},
|
||||
/* 11 */ { 2, s_0_11, -1, 1, 0},
|
||||
/* 12 */ { 2, s_0_12, -1, 1, 0},
|
||||
/* 13 */ { 5, s_0_13, 12, 1, 0},
|
||||
/* 14 */ { 1, s_0_14, -1, 2, 0},
|
||||
/* 15 */ { 2, s_0_15, 14, 1, 0},
|
||||
/* 16 */ { 2, s_0_16, 14, 1, 0},
|
||||
/* 17 */ { 4, s_0_17, 16, 1, 0},
|
||||
/* 18 */ { 5, s_0_18, 16, 1, 0},
|
||||
/* 19 */ { 4, s_0_19, 16, 1, 0},
|
||||
/* 20 */ { 7, s_0_20, 19, 1, 0},
|
||||
/* 21 */ { 3, s_0_21, 14, 1, 0},
|
||||
/* 22 */ { 6, s_0_22, 21, 1, 0},
|
||||
/* 23 */ { 3, s_0_23, 14, 1, 0},
|
||||
/* 24 */ { 3, s_0_24, 14, 1, 0},
|
||||
/* 25 */ { 2, s_0_25, -1, 1, 0},
|
||||
/* 26 */ { 3, s_0_26, 25, 1, 0},
|
||||
/* 27 */ { 3, s_0_27, -1, 3, 0},
|
||||
/* 28 */ { 3, s_0_28, -1, 1, 0}
|
||||
{ 1, s_0_0, -1, 1, 0},
|
||||
{ 1, s_0_1, -1, 1, 0},
|
||||
{ 3, s_0_2, 1, 1, 0},
|
||||
{ 4, s_0_3, 1, 1, 0},
|
||||
{ 4, s_0_4, 1, 1, 0},
|
||||
{ 3, s_0_5, 1, 1, 0},
|
||||
{ 3, s_0_6, 1, 1, 0},
|
||||
{ 6, s_0_7, 6, 1, 0},
|
||||
{ 4, s_0_8, 1, 3, 0},
|
||||
{ 2, s_0_9, -1, 1, 0},
|
||||
{ 5, s_0_10, 9, 1, 0},
|
||||
{ 2, s_0_11, -1, 1, 0},
|
||||
{ 2, s_0_12, -1, 1, 0},
|
||||
{ 5, s_0_13, 12, 1, 0},
|
||||
{ 1, s_0_14, -1, 2, 0},
|
||||
{ 2, s_0_15, 14, 1, 0},
|
||||
{ 2, s_0_16, 14, 1, 0},
|
||||
{ 4, s_0_17, 16, 1, 0},
|
||||
{ 5, s_0_18, 16, 1, 0},
|
||||
{ 4, s_0_19, 16, 1, 0},
|
||||
{ 7, s_0_20, 19, 1, 0},
|
||||
{ 3, s_0_21, 14, 1, 0},
|
||||
{ 6, s_0_22, 21, 1, 0},
|
||||
{ 3, s_0_23, 14, 1, 0},
|
||||
{ 3, s_0_24, 14, 1, 0},
|
||||
{ 2, s_0_25, -1, 1, 0},
|
||||
{ 3, s_0_26, 25, 1, 0},
|
||||
{ 3, s_0_27, -1, 3, 0},
|
||||
{ 3, s_0_28, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_1_0[2] = { 'd', 't' };
|
||||
@ -93,8 +93,8 @@ static const symbol s_1_1[2] = { 'v', 't' };
|
||||
|
||||
static const struct among a_1[2] =
|
||||
{
|
||||
/* 0 */ { 2, s_1_0, -1, -1, 0},
|
||||
/* 1 */ { 2, s_1_1, -1, -1, 0}
|
||||
{ 2, s_1_0, -1, -1, 0},
|
||||
{ 2, s_1_1, -1, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_2_0[3] = { 'l', 'e', 'g' };
|
||||
@ -111,17 +111,17 @@ static const symbol s_2_10[7] = { 'h', 'e', 't', 's', 'l', 'o', 'v' };
|
||||
|
||||
static const struct among a_2[11] =
|
||||
{
|
||||
/* 0 */ { 3, s_2_0, -1, 1, 0},
|
||||
/* 1 */ { 4, s_2_1, 0, 1, 0},
|
||||
/* 2 */ { 2, s_2_2, -1, 1, 0},
|
||||
/* 3 */ { 3, s_2_3, 2, 1, 0},
|
||||
/* 4 */ { 3, s_2_4, 2, 1, 0},
|
||||
/* 5 */ { 4, s_2_5, 4, 1, 0},
|
||||
/* 6 */ { 3, s_2_6, -1, 1, 0},
|
||||
/* 7 */ { 3, s_2_7, -1, 1, 0},
|
||||
/* 8 */ { 4, s_2_8, 7, 1, 0},
|
||||
/* 9 */ { 4, s_2_9, 7, 1, 0},
|
||||
/* 10 */ { 7, s_2_10, 9, 1, 0}
|
||||
{ 3, s_2_0, -1, 1, 0},
|
||||
{ 4, s_2_1, 0, 1, 0},
|
||||
{ 2, s_2_2, -1, 1, 0},
|
||||
{ 3, s_2_3, 2, 1, 0},
|
||||
{ 3, s_2_4, 2, 1, 0},
|
||||
{ 4, s_2_5, 4, 1, 0},
|
||||
{ 3, s_2_6, -1, 1, 0},
|
||||
{ 3, s_2_7, -1, 1, 0},
|
||||
{ 4, s_2_8, 7, 1, 0},
|
||||
{ 4, s_2_9, 7, 1, 0},
|
||||
{ 7, s_2_10, 9, 1, 0}
|
||||
};
|
||||
|
||||
static const unsigned char g_v[] = { 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 0, 128 };
|
||||
@ -130,66 +130,64 @@ static const unsigned char g_s_ending[] = { 119, 125, 149, 1 };
|
||||
|
||||
static const symbol s_0[] = { 'e', 'r' };
|
||||
|
||||
static int r_mark_regions(struct SN_env * z) { /* forwardmode */
|
||||
z->I[0] = z->l; /* $p1 = <integer expression>, line 28 */
|
||||
{ int c_test1 = z->c; /* test, line 30 */
|
||||
{ int ret = z->c + 3; /* hop, line 30 */
|
||||
if (0 > ret || ret > z->l) return 0;
|
||||
z->c = ret;
|
||||
}
|
||||
z->I[1] = z->c; /* setmark x, line 30 */
|
||||
static int r_mark_regions(struct SN_env * z) {
|
||||
z->I[1] = z->l;
|
||||
{ int c_test1 = z->c;
|
||||
z->c = z->c + 3;
|
||||
if (z->c > z->l) return 0;
|
||||
z->I[0] = z->c;
|
||||
z->c = c_test1;
|
||||
}
|
||||
if (out_grouping(z, g_v, 97, 248, 1) < 0) return 0; /* goto */ /* grouping v, line 31 */
|
||||
{ /* gopast */ /* non v, line 31 */
|
||||
if (out_grouping(z, g_v, 97, 248, 1) < 0) return 0;
|
||||
{
|
||||
int ret = in_grouping(z, g_v, 97, 248, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[0] = z->c; /* setmark p1, line 31 */
|
||||
/* try, line 32 */
|
||||
if (!(z->I[0] < z->I[1])) goto lab0; /* $(<integer expression> < <integer expression>), line 32 */
|
||||
z->I[0] = z->I[1]; /* $p1 = <integer expression>, line 32 */
|
||||
z->I[1] = z->c;
|
||||
|
||||
if (!(z->I[1] < z->I[0])) goto lab0;
|
||||
z->I[1] = z->I[0];
|
||||
lab0:
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_main_suffix(struct SN_env * z) { /* backwardmode */
|
||||
static int r_main_suffix(struct SN_env * z) {
|
||||
int among_var;
|
||||
|
||||
{ int mlimit1; /* setlimit, line 38 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 38 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1851426 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; } /* substring, line 38 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1851426 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; }
|
||||
among_var = find_among_b(z, a_0, 29);
|
||||
if (!(among_var)) { z->lb = mlimit1; return 0; }
|
||||
z->bra = z->c; /* ], line 38 */
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit1;
|
||||
}
|
||||
switch (among_var) { /* among, line 39 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 44 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int m2 = z->l - z->c; (void)m2; /* or, line 46 */
|
||||
if (in_grouping_b(z, g_s_ending, 98, 122, 0)) goto lab1; /* grouping s_ending, line 46 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
if (in_grouping_b(z, g_s_ending, 98, 122, 0)) goto lab1;
|
||||
goto lab0;
|
||||
lab1:
|
||||
z->c = z->l - m2;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'k') return 0; /* literal, line 46 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'k') return 0;
|
||||
z->c--;
|
||||
if (out_grouping_b(z, g_v, 97, 248, 0)) return 0; /* non v, line 46 */
|
||||
if (out_grouping_b(z, g_v, 97, 248, 0)) return 0;
|
||||
}
|
||||
lab0:
|
||||
{ int ret = slice_del(z); /* delete, line 46 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_from_s(z, 2, s_0); /* <-, line 48 */
|
||||
{ int ret = slice_from_s(z, 2, s_0);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -197,69 +195,69 @@ static int r_main_suffix(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_consonant_pair(struct SN_env * z) { /* backwardmode */
|
||||
{ int m_test1 = z->l - z->c; /* test, line 53 */
|
||||
static int r_consonant_pair(struct SN_env * z) {
|
||||
{ int m_test1 = z->l - z->c;
|
||||
|
||||
{ int mlimit2; /* setlimit, line 54 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit2 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 54 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] != 116) { z->lb = mlimit2; return 0; } /* substring, line 54 */
|
||||
{ int mlimit2;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit2 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] != 116) { z->lb = mlimit2; return 0; }
|
||||
if (!(find_among_b(z, a_1, 2))) { z->lb = mlimit2; return 0; }
|
||||
z->bra = z->c; /* ], line 54 */
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit2;
|
||||
}
|
||||
z->c = z->l - m_test1;
|
||||
}
|
||||
if (z->c <= z->lb) return 0;
|
||||
z->c--; /* next, line 59 */
|
||||
z->bra = z->c; /* ], line 59 */
|
||||
{ int ret = slice_del(z); /* delete, line 59 */
|
||||
z->c--;
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_other_suffix(struct SN_env * z) { /* backwardmode */
|
||||
static int r_other_suffix(struct SN_env * z) {
|
||||
|
||||
{ int mlimit1; /* setlimit, line 63 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 63 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((4718720 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; } /* substring, line 63 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((4718720 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; }
|
||||
if (!(find_among_b(z, a_2, 11))) { z->lb = mlimit1; return 0; }
|
||||
z->bra = z->c; /* ], line 63 */
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit1;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 67 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern int norwegian_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
|
||||
{ int c1 = z->c; /* do, line 74 */
|
||||
{ int ret = r_mark_regions(z); /* call mark_regions, line 74 */
|
||||
extern int norwegian_ISO_8859_1_stem(struct SN_env * z) {
|
||||
{ int c1 = z->c;
|
||||
{ int ret = r_mark_regions(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = c1;
|
||||
}
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 75 */
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
{ int m2 = z->l - z->c; (void)m2; /* do, line 76 */
|
||||
{ int ret = r_main_suffix(z); /* call main_suffix, line 76 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
{ int ret = r_main_suffix(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m2;
|
||||
}
|
||||
{ int m3 = z->l - z->c; (void)m3; /* do, line 77 */
|
||||
{ int ret = r_consonant_pair(z); /* call consonant_pair, line 77 */
|
||||
{ int m3 = z->l - z->c; (void)m3;
|
||||
{ int ret = r_consonant_pair(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m3;
|
||||
}
|
||||
{ int m4 = z->l - z->c; (void)m4; /* do, line 78 */
|
||||
{ int ret = r_other_suffix(z); /* call other_suffix, line 78 */
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
{ int ret = r_other_suffix(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m4;
|
||||
@ -268,7 +266,7 @@ extern int norwegian_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern struct SN_env * norwegian_ISO_8859_1_create_env(void) { return SN_create_env(0, 2, 0); }
|
||||
extern struct SN_env * norwegian_ISO_8859_1_create_env(void) { return SN_create_env(0, 2); }
|
||||
|
||||
extern void norwegian_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); }
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#include "header.h"
|
||||
|
||||
@ -39,10 +39,10 @@ static const symbol s_0_3[2] = { 's', 's' };
|
||||
|
||||
static const struct among a_0[4] =
|
||||
{
|
||||
/* 0 */ { 1, s_0_0, -1, 3, 0},
|
||||
/* 1 */ { 3, s_0_1, 0, 2, 0},
|
||||
/* 2 */ { 4, s_0_2, 0, 1, 0},
|
||||
/* 3 */ { 2, s_0_3, 0, -1, 0}
|
||||
{ 1, s_0_0, -1, 3, 0},
|
||||
{ 3, s_0_1, 0, 2, 0},
|
||||
{ 4, s_0_2, 0, 1, 0},
|
||||
{ 2, s_0_3, 0, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_1_1[2] = { 'b', 'b' };
|
||||
@ -60,19 +60,19 @@ static const symbol s_1_12[2] = { 'i', 'z' };
|
||||
|
||||
static const struct among a_1[13] =
|
||||
{
|
||||
/* 0 */ { 0, 0, -1, 3, 0},
|
||||
/* 1 */ { 2, s_1_1, 0, 2, 0},
|
||||
/* 2 */ { 2, s_1_2, 0, 2, 0},
|
||||
/* 3 */ { 2, s_1_3, 0, 2, 0},
|
||||
/* 4 */ { 2, s_1_4, 0, 2, 0},
|
||||
/* 5 */ { 2, s_1_5, 0, 1, 0},
|
||||
/* 6 */ { 2, s_1_6, 0, 2, 0},
|
||||
/* 7 */ { 2, s_1_7, 0, 2, 0},
|
||||
/* 8 */ { 2, s_1_8, 0, 2, 0},
|
||||
/* 9 */ { 2, s_1_9, 0, 2, 0},
|
||||
/* 10 */ { 2, s_1_10, 0, 1, 0},
|
||||
/* 11 */ { 2, s_1_11, 0, 2, 0},
|
||||
/* 12 */ { 2, s_1_12, 0, 1, 0}
|
||||
{ 0, 0, -1, 3, 0},
|
||||
{ 2, s_1_1, 0, 2, 0},
|
||||
{ 2, s_1_2, 0, 2, 0},
|
||||
{ 2, s_1_3, 0, 2, 0},
|
||||
{ 2, s_1_4, 0, 2, 0},
|
||||
{ 2, s_1_5, 0, 1, 0},
|
||||
{ 2, s_1_6, 0, 2, 0},
|
||||
{ 2, s_1_7, 0, 2, 0},
|
||||
{ 2, s_1_8, 0, 2, 0},
|
||||
{ 2, s_1_9, 0, 2, 0},
|
||||
{ 2, s_1_10, 0, 1, 0},
|
||||
{ 2, s_1_11, 0, 2, 0},
|
||||
{ 2, s_1_12, 0, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_2_0[2] = { 'e', 'd' };
|
||||
@ -81,9 +81,9 @@ static const symbol s_2_2[3] = { 'i', 'n', 'g' };
|
||||
|
||||
static const struct among a_2[3] =
|
||||
{
|
||||
/* 0 */ { 2, s_2_0, -1, 2, 0},
|
||||
/* 1 */ { 3, s_2_1, 0, 1, 0},
|
||||
/* 2 */ { 3, s_2_2, -1, 2, 0}
|
||||
{ 2, s_2_0, -1, 2, 0},
|
||||
{ 3, s_2_1, 0, 1, 0},
|
||||
{ 3, s_2_2, -1, 2, 0}
|
||||
};
|
||||
|
||||
static const symbol s_3_0[4] = { 'a', 'n', 'c', 'i' };
|
||||
@ -109,26 +109,26 @@ static const symbol s_3_19[7] = { 'o', 'u', 's', 'n', 'e', 's', 's' };
|
||||
|
||||
static const struct among a_3[20] =
|
||||
{
|
||||
/* 0 */ { 4, s_3_0, -1, 3, 0},
|
||||
/* 1 */ { 4, s_3_1, -1, 2, 0},
|
||||
/* 2 */ { 4, s_3_2, -1, 4, 0},
|
||||
/* 3 */ { 3, s_3_3, -1, 6, 0},
|
||||
/* 4 */ { 4, s_3_4, -1, 9, 0},
|
||||
/* 5 */ { 5, s_3_5, -1, 11, 0},
|
||||
/* 6 */ { 5, s_3_6, -1, 5, 0},
|
||||
/* 7 */ { 5, s_3_7, -1, 9, 0},
|
||||
/* 8 */ { 6, s_3_8, -1, 13, 0},
|
||||
/* 9 */ { 5, s_3_9, -1, 12, 0},
|
||||
/* 10 */ { 6, s_3_10, -1, 1, 0},
|
||||
/* 11 */ { 7, s_3_11, 10, 8, 0},
|
||||
/* 12 */ { 5, s_3_12, -1, 9, 0},
|
||||
/* 13 */ { 5, s_3_13, -1, 8, 0},
|
||||
/* 14 */ { 7, s_3_14, 13, 7, 0},
|
||||
/* 15 */ { 4, s_3_15, -1, 7, 0},
|
||||
/* 16 */ { 4, s_3_16, -1, 8, 0},
|
||||
/* 17 */ { 7, s_3_17, -1, 12, 0},
|
||||
/* 18 */ { 7, s_3_18, -1, 10, 0},
|
||||
/* 19 */ { 7, s_3_19, -1, 11, 0}
|
||||
{ 4, s_3_0, -1, 3, 0},
|
||||
{ 4, s_3_1, -1, 2, 0},
|
||||
{ 4, s_3_2, -1, 4, 0},
|
||||
{ 3, s_3_3, -1, 6, 0},
|
||||
{ 4, s_3_4, -1, 9, 0},
|
||||
{ 5, s_3_5, -1, 11, 0},
|
||||
{ 5, s_3_6, -1, 5, 0},
|
||||
{ 5, s_3_7, -1, 9, 0},
|
||||
{ 6, s_3_8, -1, 13, 0},
|
||||
{ 5, s_3_9, -1, 12, 0},
|
||||
{ 6, s_3_10, -1, 1, 0},
|
||||
{ 7, s_3_11, 10, 8, 0},
|
||||
{ 5, s_3_12, -1, 9, 0},
|
||||
{ 5, s_3_13, -1, 8, 0},
|
||||
{ 7, s_3_14, 13, 7, 0},
|
||||
{ 4, s_3_15, -1, 7, 0},
|
||||
{ 4, s_3_16, -1, 8, 0},
|
||||
{ 7, s_3_17, -1, 12, 0},
|
||||
{ 7, s_3_18, -1, 10, 0},
|
||||
{ 7, s_3_19, -1, 11, 0}
|
||||
};
|
||||
|
||||
static const symbol s_4_0[5] = { 'i', 'c', 'a', 't', 'e' };
|
||||
@ -141,13 +141,13 @@ static const symbol s_4_6[4] = { 'n', 'e', 's', 's' };
|
||||
|
||||
static const struct among a_4[7] =
|
||||
{
|
||||
/* 0 */ { 5, s_4_0, -1, 2, 0},
|
||||
/* 1 */ { 5, s_4_1, -1, 3, 0},
|
||||
/* 2 */ { 5, s_4_2, -1, 1, 0},
|
||||
/* 3 */ { 5, s_4_3, -1, 2, 0},
|
||||
/* 4 */ { 4, s_4_4, -1, 2, 0},
|
||||
/* 5 */ { 3, s_4_5, -1, 3, 0},
|
||||
/* 6 */ { 4, s_4_6, -1, 3, 0}
|
||||
{ 5, s_4_0, -1, 2, 0},
|
||||
{ 5, s_4_1, -1, 3, 0},
|
||||
{ 5, s_4_2, -1, 1, 0},
|
||||
{ 5, s_4_3, -1, 2, 0},
|
||||
{ 4, s_4_4, -1, 2, 0},
|
||||
{ 3, s_4_5, -1, 3, 0},
|
||||
{ 4, s_4_6, -1, 3, 0}
|
||||
};
|
||||
|
||||
static const symbol s_5_0[2] = { 'i', 'c' };
|
||||
@ -172,25 +172,25 @@ static const symbol s_5_18[2] = { 'o', 'u' };
|
||||
|
||||
static const struct among a_5[19] =
|
||||
{
|
||||
/* 0 */ { 2, s_5_0, -1, 1, 0},
|
||||
/* 1 */ { 4, s_5_1, -1, 1, 0},
|
||||
/* 2 */ { 4, s_5_2, -1, 1, 0},
|
||||
/* 3 */ { 4, s_5_3, -1, 1, 0},
|
||||
/* 4 */ { 4, s_5_4, -1, 1, 0},
|
||||
/* 5 */ { 3, s_5_5, -1, 1, 0},
|
||||
/* 6 */ { 3, s_5_6, -1, 1, 0},
|
||||
/* 7 */ { 3, s_5_7, -1, 1, 0},
|
||||
/* 8 */ { 3, s_5_8, -1, 1, 0},
|
||||
/* 9 */ { 2, s_5_9, -1, 1, 0},
|
||||
/* 10 */ { 3, s_5_10, -1, 1, 0},
|
||||
/* 11 */ { 3, s_5_11, -1, 2, 0},
|
||||
/* 12 */ { 2, s_5_12, -1, 1, 0},
|
||||
/* 13 */ { 3, s_5_13, -1, 1, 0},
|
||||
/* 14 */ { 3, s_5_14, -1, 1, 0},
|
||||
/* 15 */ { 3, s_5_15, -1, 1, 0},
|
||||
/* 16 */ { 4, s_5_16, 15, 1, 0},
|
||||
/* 17 */ { 5, s_5_17, 16, 1, 0},
|
||||
/* 18 */ { 2, s_5_18, -1, 1, 0}
|
||||
{ 2, s_5_0, -1, 1, 0},
|
||||
{ 4, s_5_1, -1, 1, 0},
|
||||
{ 4, s_5_2, -1, 1, 0},
|
||||
{ 4, s_5_3, -1, 1, 0},
|
||||
{ 4, s_5_4, -1, 1, 0},
|
||||
{ 3, s_5_5, -1, 1, 0},
|
||||
{ 3, s_5_6, -1, 1, 0},
|
||||
{ 3, s_5_7, -1, 1, 0},
|
||||
{ 3, s_5_8, -1, 1, 0},
|
||||
{ 2, s_5_9, -1, 1, 0},
|
||||
{ 3, s_5_10, -1, 1, 0},
|
||||
{ 3, s_5_11, -1, 2, 0},
|
||||
{ 2, s_5_12, -1, 1, 0},
|
||||
{ 3, s_5_13, -1, 1, 0},
|
||||
{ 3, s_5_14, -1, 1, 0},
|
||||
{ 3, s_5_15, -1, 1, 0},
|
||||
{ 4, s_5_16, 15, 1, 0},
|
||||
{ 5, s_5_17, 16, 1, 0},
|
||||
{ 2, s_5_18, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const unsigned char g_v[] = { 17, 65, 16, 1 };
|
||||
@ -222,43 +222,43 @@ static const symbol s_21[] = { 'Y' };
|
||||
static const symbol s_22[] = { 'Y' };
|
||||
static const symbol s_23[] = { 'y' };
|
||||
|
||||
static int r_shortv(struct SN_env * z) { /* backwardmode */
|
||||
if (out_grouping_b(z, g_v_WXY, 89, 121, 0)) return 0; /* non v_WXY, line 19 */
|
||||
if (in_grouping_b(z, g_v, 97, 121, 0)) return 0; /* grouping v, line 19 */
|
||||
if (out_grouping_b(z, g_v, 97, 121, 0)) return 0; /* non v, line 19 */
|
||||
static int r_shortv(struct SN_env * z) {
|
||||
if (out_grouping_b(z, g_v_WXY, 89, 121, 0)) return 0;
|
||||
if (in_grouping_b(z, g_v, 97, 121, 0)) return 0;
|
||||
if (out_grouping_b(z, g_v, 97, 121, 0)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_R1(struct SN_env * z) { /* backwardmode */
|
||||
if (!(z->I[0] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 21 */
|
||||
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) { /* backwardmode */
|
||||
if (!(z->I[1] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 22 */
|
||||
static int r_R2(struct SN_env * z) {
|
||||
if (!(z->I[0] <= z->c)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_Step_1a(struct SN_env * z) { /* backwardmode */
|
||||
static int r_Step_1a(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 25 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 115) return 0; /* substring, line 25 */
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 115) return 0;
|
||||
among_var = find_among_b(z, a_0, 4);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 25 */
|
||||
switch (among_var) { /* among, line 25 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_from_s(z, 2, s_0); /* <-, line 26 */
|
||||
{ int ret = slice_from_s(z, 2, s_0);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 1, s_1); /* <-, line 27 */
|
||||
{ int ret = slice_from_s(z, 1, s_1);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_del(z); /* delete, line 29 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -266,70 +266,70 @@ static int r_Step_1a(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_Step_1b(struct SN_env * z) { /* backwardmode */
|
||||
static int r_Step_1b(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 34 */
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 100 && z->p[z->c - 1] != 103)) return 0; /* substring, line 34 */
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 100 && z->p[z->c - 1] != 103)) return 0;
|
||||
among_var = find_among_b(z, a_2, 3);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 34 */
|
||||
switch (among_var) { /* among, line 34 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = r_R1(z); /* call R1, line 35 */
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int ret = slice_from_s(z, 2, s_2); /* <-, line 35 */
|
||||
{ int ret = slice_from_s(z, 2, s_2);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int m_test1 = z->l - z->c; /* test, line 38 */
|
||||
{ /* gopast */ /* grouping v, line 38 */
|
||||
{ int m_test1 = z->l - z->c;
|
||||
{
|
||||
int ret = out_grouping_b(z, g_v, 97, 121, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c -= ret;
|
||||
}
|
||||
z->c = z->l - m_test1;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 38 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int m_test2 = z->l - z->c; /* test, line 39 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((68514004 >> (z->p[z->c - 1] & 0x1f)) & 1)) among_var = 3; else /* substring, line 39 */
|
||||
{ int m_test2 = z->l - z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((68514004 >> (z->p[z->c - 1] & 0x1f)) & 1)) among_var = 3; else
|
||||
among_var = find_among_b(z, a_1, 13);
|
||||
if (!(among_var)) return 0;
|
||||
z->c = z->l - m_test2;
|
||||
}
|
||||
switch (among_var) { /* among, line 39 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret;
|
||||
{ int saved_c = z->c;
|
||||
ret = insert_s(z, z->c, z->c, 1, s_3); /* <+, line 41 */
|
||||
ret = insert_s(z, z->c, z->c, 1, s_3);
|
||||
z->c = saved_c;
|
||||
}
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
z->ket = z->c; /* [, line 44 */
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb) return 0;
|
||||
z->c--; /* next, line 44 */
|
||||
z->bra = z->c; /* ], line 44 */
|
||||
{ int ret = slice_del(z); /* delete, line 44 */
|
||||
z->c--;
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
if (z->c != z->I[0]) return 0; /* atmark, line 45 */
|
||||
{ int m_test3 = z->l - z->c; /* test, line 45 */
|
||||
{ int ret = r_shortv(z); /* call shortv, line 45 */
|
||||
if (z->c != z->I[1]) return 0;
|
||||
{ int m_test3 = z->l - z->c;
|
||||
{ int ret = r_shortv(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
z->c = z->l - m_test3;
|
||||
}
|
||||
{ int ret;
|
||||
{ int saved_c = z->c;
|
||||
ret = insert_s(z, z->c, z->c, 1, s_4); /* <+, line 45 */
|
||||
ret = insert_s(z, z->c, z->c, 1, s_4);
|
||||
z->c = saved_c;
|
||||
}
|
||||
if (ret < 0) return ret;
|
||||
@ -341,103 +341,103 @@ static int r_Step_1b(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_Step_1c(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 52 */
|
||||
{ int m1 = z->l - z->c; (void)m1; /* or, line 52 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'y') goto lab1; /* literal, line 52 */
|
||||
static int r_Step_1c(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
{ int m1 = z->l - z->c; (void)m1;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'y') goto lab1;
|
||||
z->c--;
|
||||
goto lab0;
|
||||
lab1:
|
||||
z->c = z->l - m1;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'Y') return 0; /* literal, line 52 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'Y') return 0;
|
||||
z->c--;
|
||||
}
|
||||
lab0:
|
||||
z->bra = z->c; /* ], line 52 */
|
||||
{ /* gopast */ /* grouping v, line 53 */
|
||||
z->bra = z->c;
|
||||
{
|
||||
int ret = out_grouping_b(z, g_v, 97, 121, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c -= ret;
|
||||
}
|
||||
{ int ret = slice_from_s(z, 1, s_5); /* <-, line 54 */
|
||||
{ int ret = slice_from_s(z, 1, s_5);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_Step_2(struct SN_env * z) { /* backwardmode */
|
||||
static int r_Step_2(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 58 */
|
||||
if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((815616 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 58 */
|
||||
z->ket = z->c;
|
||||
if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((815616 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
|
||||
among_var = find_among_b(z, a_3, 20);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 58 */
|
||||
{ int ret = r_R1(z); /* call R1, line 58 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
switch (among_var) { /* among, line 58 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_from_s(z, 4, s_6); /* <-, line 59 */
|
||||
{ int ret = slice_from_s(z, 4, s_6);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 4, s_7); /* <-, line 60 */
|
||||
{ int ret = slice_from_s(z, 4, s_7);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_from_s(z, 4, s_8); /* <-, line 61 */
|
||||
{ int ret = slice_from_s(z, 4, s_8);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
{ int ret = slice_from_s(z, 4, s_9); /* <-, line 62 */
|
||||
{ int ret = slice_from_s(z, 4, s_9);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
{ int ret = slice_from_s(z, 3, s_10); /* <-, line 63 */
|
||||
{ int ret = slice_from_s(z, 3, s_10);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 6:
|
||||
{ int ret = slice_from_s(z, 1, s_11); /* <-, line 64 */
|
||||
{ int ret = slice_from_s(z, 1, s_11);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 7:
|
||||
{ int ret = slice_from_s(z, 3, s_12); /* <-, line 66 */
|
||||
{ int ret = slice_from_s(z, 3, s_12);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 8:
|
||||
{ int ret = slice_from_s(z, 3, s_13); /* <-, line 68 */
|
||||
{ int ret = slice_from_s(z, 3, s_13);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 9:
|
||||
{ int ret = slice_from_s(z, 2, s_14); /* <-, line 69 */
|
||||
{ int ret = slice_from_s(z, 2, s_14);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 10:
|
||||
{ int ret = slice_from_s(z, 3, s_15); /* <-, line 72 */
|
||||
{ int ret = slice_from_s(z, 3, s_15);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 11:
|
||||
{ int ret = slice_from_s(z, 3, s_16); /* <-, line 74 */
|
||||
{ int ret = slice_from_s(z, 3, s_16);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 12:
|
||||
{ int ret = slice_from_s(z, 3, s_17); /* <-, line 76 */
|
||||
{ int ret = slice_from_s(z, 3, s_17);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 13:
|
||||
{ int ret = slice_from_s(z, 3, s_18); /* <-, line 77 */
|
||||
{ int ret = slice_from_s(z, 3, s_18);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -445,29 +445,29 @@ static int r_Step_2(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_Step_3(struct SN_env * z) { /* backwardmode */
|
||||
static int r_Step_3(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 82 */
|
||||
if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((528928 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 82 */
|
||||
z->ket = z->c;
|
||||
if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((528928 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
|
||||
among_var = find_among_b(z, a_4, 7);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 82 */
|
||||
{ int ret = r_R1(z); /* call R1, line 82 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
switch (among_var) { /* among, line 82 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_from_s(z, 2, s_19); /* <-, line 83 */
|
||||
{ int ret = slice_from_s(z, 2, s_19);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 2, s_20); /* <-, line 85 */
|
||||
{ int ret = slice_from_s(z, 2, s_20);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_del(z); /* delete, line 87 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -475,34 +475,34 @@ static int r_Step_3(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_Step_4(struct SN_env * z) { /* backwardmode */
|
||||
static int r_Step_4(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 92 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((3961384 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 92 */
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((3961384 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
|
||||
among_var = find_among_b(z, a_5, 19);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 92 */
|
||||
{ int ret = r_R2(z); /* call R2, line 92 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R2(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
switch (among_var) { /* among, line 92 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 95 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int m1 = z->l - z->c; (void)m1; /* or, line 96 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 's') goto lab1; /* literal, line 96 */
|
||||
{ int m1 = z->l - z->c; (void)m1;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 's') goto lab1;
|
||||
z->c--;
|
||||
goto lab0;
|
||||
lab1:
|
||||
z->c = z->l - m1;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 't') return 0; /* literal, line 96 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 't') return 0;
|
||||
z->c--;
|
||||
}
|
||||
lab0:
|
||||
{ int ret = slice_del(z); /* delete, line 96 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -510,24 +510,24 @@ static int r_Step_4(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_Step_5a(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 101 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') return 0; /* literal, line 101 */
|
||||
static int r_Step_5a(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') return 0;
|
||||
z->c--;
|
||||
z->bra = z->c; /* ], line 101 */
|
||||
{ int m1 = z->l - z->c; (void)m1; /* or, line 102 */
|
||||
{ int ret = r_R2(z); /* call R2, line 102 */
|
||||
z->bra = z->c;
|
||||
{ int m1 = z->l - z->c; (void)m1;
|
||||
{ int ret = r_R2(z);
|
||||
if (ret == 0) goto lab1;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
goto lab0;
|
||||
lab1:
|
||||
z->c = z->l - m1;
|
||||
{ int ret = r_R1(z); /* call R1, line 102 */
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int m2 = z->l - z->c; (void)m2; /* not, line 102 */
|
||||
{ int ret = r_shortv(z); /* call shortv, line 102 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
{ int ret = r_shortv(z);
|
||||
if (ret == 0) goto lab2;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
@ -537,64 +537,63 @@ static int r_Step_5a(struct SN_env * z) { /* backwardmode */
|
||||
}
|
||||
}
|
||||
lab0:
|
||||
{ int ret = slice_del(z); /* delete, line 103 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_Step_5b(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 107 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'l') return 0; /* literal, line 107 */
|
||||
static int r_Step_5b(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'l') return 0;
|
||||
z->c--;
|
||||
z->bra = z->c; /* ], line 107 */
|
||||
{ int ret = r_R2(z); /* call R2, line 108 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R2(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'l') return 0; /* literal, line 108 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'l') return 0;
|
||||
z->c--;
|
||||
{ int ret = slice_del(z); /* delete, line 109 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern int porter_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
|
||||
z->B[0] = 0; /* unset Y_found, line 115 */
|
||||
{ int c1 = z->c; /* do, line 116 */
|
||||
z->bra = z->c; /* [, line 116 */
|
||||
if (z->c == z->l || z->p[z->c] != 'y') goto lab0; /* literal, line 116 */
|
||||
extern int porter_ISO_8859_1_stem(struct SN_env * z) {
|
||||
z->I[2] = 0;
|
||||
{ int c1 = z->c;
|
||||
z->bra = z->c;
|
||||
if (z->c == z->l || z->p[z->c] != 'y') goto lab0;
|
||||
z->c++;
|
||||
z->ket = z->c; /* ], line 116 */
|
||||
{ int ret = slice_from_s(z, 1, s_21); /* <-, line 116 */
|
||||
z->ket = z->c;
|
||||
{ int ret = slice_from_s(z, 1, s_21);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->B[0] = 1; /* set Y_found, line 116 */
|
||||
z->I[2] = 1;
|
||||
lab0:
|
||||
z->c = c1;
|
||||
}
|
||||
{ int c2 = z->c; /* do, line 117 */
|
||||
/* repeat, line 117 */
|
||||
|
||||
while(1) { int c3 = z->c;
|
||||
while(1) { /* goto, line 117 */
|
||||
{ int c2 = z->c;
|
||||
while(1) {
|
||||
int c3 = z->c;
|
||||
while(1) {
|
||||
int c4 = z->c;
|
||||
if (in_grouping(z, g_v, 97, 121, 0)) goto lab3; /* grouping v, line 117 */
|
||||
z->bra = z->c; /* [, line 117 */
|
||||
if (z->c == z->l || z->p[z->c] != 'y') goto lab3; /* literal, line 117 */
|
||||
if (in_grouping(z, g_v, 97, 121, 0)) goto lab3;
|
||||
z->bra = z->c;
|
||||
if (z->c == z->l || z->p[z->c] != 'y') goto lab3;
|
||||
z->c++;
|
||||
z->ket = z->c; /* ], line 117 */
|
||||
z->ket = z->c;
|
||||
z->c = c4;
|
||||
break;
|
||||
lab3:
|
||||
z->c = c4;
|
||||
if (z->c >= z->l) goto lab2;
|
||||
z->c++; /* goto, line 117 */
|
||||
z->c++;
|
||||
}
|
||||
{ int ret = slice_from_s(z, 1, s_22); /* <-, line 117 */
|
||||
{ int ret = slice_from_s(z, 1, s_22);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->B[0] = 1; /* set Y_found, line 117 */
|
||||
z->I[2] = 1;
|
||||
continue;
|
||||
lab2:
|
||||
z->c = c3;
|
||||
@ -602,104 +601,103 @@ extern int porter_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
|
||||
}
|
||||
z->c = c2;
|
||||
}
|
||||
z->I[0] = z->l; /* $p1 = <integer expression>, line 119 */
|
||||
z->I[1] = z->l; /* $p2 = <integer expression>, line 120 */
|
||||
{ int c5 = z->c; /* do, line 121 */
|
||||
{ /* gopast */ /* grouping v, line 122 */
|
||||
z->I[1] = z->l;
|
||||
z->I[0] = z->l;
|
||||
{ int c5 = z->c;
|
||||
{
|
||||
int ret = out_grouping(z, g_v, 97, 121, 1);
|
||||
if (ret < 0) goto lab4;
|
||||
z->c += ret;
|
||||
}
|
||||
{ /* gopast */ /* non v, line 122 */
|
||||
{
|
||||
int ret = in_grouping(z, g_v, 97, 121, 1);
|
||||
if (ret < 0) goto lab4;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[0] = z->c; /* setmark p1, line 122 */
|
||||
{ /* gopast */ /* grouping v, line 123 */
|
||||
z->I[1] = z->c;
|
||||
{
|
||||
int ret = out_grouping(z, g_v, 97, 121, 1);
|
||||
if (ret < 0) goto lab4;
|
||||
z->c += ret;
|
||||
}
|
||||
{ /* gopast */ /* non v, line 123 */
|
||||
{
|
||||
int ret = in_grouping(z, g_v, 97, 121, 1);
|
||||
if (ret < 0) goto lab4;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[1] = z->c; /* setmark p2, line 123 */
|
||||
z->I[0] = z->c;
|
||||
lab4:
|
||||
z->c = c5;
|
||||
}
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 126 */
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
{ int m6 = z->l - z->c; (void)m6; /* do, line 127 */
|
||||
{ int ret = r_Step_1a(z); /* call Step_1a, line 127 */
|
||||
{ int m6 = z->l - z->c; (void)m6;
|
||||
{ int ret = r_Step_1a(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m6;
|
||||
}
|
||||
{ int m7 = z->l - z->c; (void)m7; /* do, line 128 */
|
||||
{ int ret = r_Step_1b(z); /* call Step_1b, line 128 */
|
||||
{ int m7 = z->l - z->c; (void)m7;
|
||||
{ int ret = r_Step_1b(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m7;
|
||||
}
|
||||
{ int m8 = z->l - z->c; (void)m8; /* do, line 129 */
|
||||
{ int ret = r_Step_1c(z); /* call Step_1c, line 129 */
|
||||
{ int m8 = z->l - z->c; (void)m8;
|
||||
{ int ret = r_Step_1c(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m8;
|
||||
}
|
||||
{ int m9 = z->l - z->c; (void)m9; /* do, line 130 */
|
||||
{ int ret = r_Step_2(z); /* call Step_2, line 130 */
|
||||
{ int m9 = z->l - z->c; (void)m9;
|
||||
{ int ret = r_Step_2(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m9;
|
||||
}
|
||||
{ int m10 = z->l - z->c; (void)m10; /* do, line 131 */
|
||||
{ int ret = r_Step_3(z); /* call Step_3, line 131 */
|
||||
{ int m10 = z->l - z->c; (void)m10;
|
||||
{ int ret = r_Step_3(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m10;
|
||||
}
|
||||
{ int m11 = z->l - z->c; (void)m11; /* do, line 132 */
|
||||
{ int ret = r_Step_4(z); /* call Step_4, line 132 */
|
||||
{ int m11 = z->l - z->c; (void)m11;
|
||||
{ int ret = r_Step_4(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m11;
|
||||
}
|
||||
{ int m12 = z->l - z->c; (void)m12; /* do, line 133 */
|
||||
{ int ret = r_Step_5a(z); /* call Step_5a, line 133 */
|
||||
{ int m12 = z->l - z->c; (void)m12;
|
||||
{ int ret = r_Step_5a(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m12;
|
||||
}
|
||||
{ int m13 = z->l - z->c; (void)m13; /* do, line 134 */
|
||||
{ int ret = r_Step_5b(z); /* call Step_5b, line 134 */
|
||||
{ int m13 = z->l - z->c; (void)m13;
|
||||
{ int ret = r_Step_5b(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m13;
|
||||
}
|
||||
z->c = z->lb;
|
||||
{ int c14 = z->c; /* do, line 137 */
|
||||
if (!(z->B[0])) goto lab5; /* Boolean test Y_found, line 137 */
|
||||
/* repeat, line 137 */
|
||||
|
||||
while(1) { int c15 = z->c;
|
||||
while(1) { /* goto, line 137 */
|
||||
{ int c14 = z->c;
|
||||
if (!(z->I[2])) goto lab5;
|
||||
while(1) {
|
||||
int c15 = z->c;
|
||||
while(1) {
|
||||
int c16 = z->c;
|
||||
z->bra = z->c; /* [, line 137 */
|
||||
if (z->c == z->l || z->p[z->c] != 'Y') goto lab7; /* literal, line 137 */
|
||||
z->bra = z->c;
|
||||
if (z->c == z->l || z->p[z->c] != 'Y') goto lab7;
|
||||
z->c++;
|
||||
z->ket = z->c; /* ], line 137 */
|
||||
z->ket = z->c;
|
||||
z->c = c16;
|
||||
break;
|
||||
lab7:
|
||||
z->c = c16;
|
||||
if (z->c >= z->l) goto lab6;
|
||||
z->c++; /* goto, line 137 */
|
||||
z->c++;
|
||||
}
|
||||
{ int ret = slice_from_s(z, 1, s_23); /* <-, line 137 */
|
||||
{ int ret = slice_from_s(z, 1, s_23);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
continue;
|
||||
@ -713,7 +711,7 @@ extern int porter_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern struct SN_env * porter_ISO_8859_1_create_env(void) { return SN_create_env(0, 2, 1); }
|
||||
extern struct SN_env * porter_ISO_8859_1_create_env(void) { return SN_create_env(0, 3); }
|
||||
|
||||
extern void porter_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); }
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#include "header.h"
|
||||
|
||||
@ -65,43 +65,43 @@ static const symbol s_0_36[3] = { 'a', 's', 't' };
|
||||
|
||||
static const struct among a_0[37] =
|
||||
{
|
||||
/* 0 */ { 1, s_0_0, -1, 1, 0},
|
||||
/* 1 */ { 4, s_0_1, 0, 1, 0},
|
||||
/* 2 */ { 4, s_0_2, 0, 1, 0},
|
||||
/* 3 */ { 7, s_0_3, 2, 1, 0},
|
||||
/* 4 */ { 4, s_0_4, 0, 1, 0},
|
||||
/* 5 */ { 2, s_0_5, -1, 1, 0},
|
||||
/* 6 */ { 1, s_0_6, -1, 1, 0},
|
||||
/* 7 */ { 3, s_0_7, 6, 1, 0},
|
||||
/* 8 */ { 4, s_0_8, 6, 1, 0},
|
||||
/* 9 */ { 4, s_0_9, 6, 1, 0},
|
||||
/* 10 */ { 3, s_0_10, 6, 1, 0},
|
||||
/* 11 */ { 4, s_0_11, 6, 1, 0},
|
||||
/* 12 */ { 2, s_0_12, -1, 1, 0},
|
||||
/* 13 */ { 5, s_0_13, 12, 1, 0},
|
||||
/* 14 */ { 4, s_0_14, 12, 1, 0},
|
||||
/* 15 */ { 5, s_0_15, 12, 1, 0},
|
||||
/* 16 */ { 3, s_0_16, -1, 1, 0},
|
||||
/* 17 */ { 2, s_0_17, -1, 1, 0},
|
||||
/* 18 */ { 2, s_0_18, -1, 1, 0},
|
||||
/* 19 */ { 5, s_0_19, 18, 1, 0},
|
||||
/* 20 */ { 2, s_0_20, -1, 1, 0},
|
||||
/* 21 */ { 1, s_0_21, -1, 2, 0},
|
||||
/* 22 */ { 2, s_0_22, 21, 1, 0},
|
||||
/* 23 */ { 5, s_0_23, 22, 1, 0},
|
||||
/* 24 */ { 5, s_0_24, 22, 1, 0},
|
||||
/* 25 */ { 5, s_0_25, 22, 1, 0},
|
||||
/* 26 */ { 2, s_0_26, 21, 1, 0},
|
||||
/* 27 */ { 4, s_0_27, 26, 1, 0},
|
||||
/* 28 */ { 5, s_0_28, 26, 1, 0},
|
||||
/* 29 */ { 3, s_0_29, 21, 1, 0},
|
||||
/* 30 */ { 5, s_0_30, 29, 1, 0},
|
||||
/* 31 */ { 6, s_0_31, 29, 1, 0},
|
||||
/* 32 */ { 4, s_0_32, 21, 1, 0},
|
||||
/* 33 */ { 2, s_0_33, -1, 1, 0},
|
||||
/* 34 */ { 5, s_0_34, -1, 1, 0},
|
||||
/* 35 */ { 3, s_0_35, -1, 1, 0},
|
||||
/* 36 */ { 3, s_0_36, -1, 1, 0}
|
||||
{ 1, s_0_0, -1, 1, 0},
|
||||
{ 4, s_0_1, 0, 1, 0},
|
||||
{ 4, s_0_2, 0, 1, 0},
|
||||
{ 7, s_0_3, 2, 1, 0},
|
||||
{ 4, s_0_4, 0, 1, 0},
|
||||
{ 2, s_0_5, -1, 1, 0},
|
||||
{ 1, s_0_6, -1, 1, 0},
|
||||
{ 3, s_0_7, 6, 1, 0},
|
||||
{ 4, s_0_8, 6, 1, 0},
|
||||
{ 4, s_0_9, 6, 1, 0},
|
||||
{ 3, s_0_10, 6, 1, 0},
|
||||
{ 4, s_0_11, 6, 1, 0},
|
||||
{ 2, s_0_12, -1, 1, 0},
|
||||
{ 5, s_0_13, 12, 1, 0},
|
||||
{ 4, s_0_14, 12, 1, 0},
|
||||
{ 5, s_0_15, 12, 1, 0},
|
||||
{ 3, s_0_16, -1, 1, 0},
|
||||
{ 2, s_0_17, -1, 1, 0},
|
||||
{ 2, s_0_18, -1, 1, 0},
|
||||
{ 5, s_0_19, 18, 1, 0},
|
||||
{ 2, s_0_20, -1, 1, 0},
|
||||
{ 1, s_0_21, -1, 2, 0},
|
||||
{ 2, s_0_22, 21, 1, 0},
|
||||
{ 5, s_0_23, 22, 1, 0},
|
||||
{ 5, s_0_24, 22, 1, 0},
|
||||
{ 5, s_0_25, 22, 1, 0},
|
||||
{ 2, s_0_26, 21, 1, 0},
|
||||
{ 4, s_0_27, 26, 1, 0},
|
||||
{ 5, s_0_28, 26, 1, 0},
|
||||
{ 3, s_0_29, 21, 1, 0},
|
||||
{ 5, s_0_30, 29, 1, 0},
|
||||
{ 6, s_0_31, 29, 1, 0},
|
||||
{ 4, s_0_32, 21, 1, 0},
|
||||
{ 2, s_0_33, -1, 1, 0},
|
||||
{ 5, s_0_34, -1, 1, 0},
|
||||
{ 3, s_0_35, -1, 1, 0},
|
||||
{ 3, s_0_36, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_1_0[2] = { 'd', 'd' };
|
||||
@ -114,13 +114,13 @@ static const symbol s_1_6[2] = { 't', 't' };
|
||||
|
||||
static const struct among a_1[7] =
|
||||
{
|
||||
/* 0 */ { 2, s_1_0, -1, -1, 0},
|
||||
/* 1 */ { 2, s_1_1, -1, -1, 0},
|
||||
/* 2 */ { 2, s_1_2, -1, -1, 0},
|
||||
/* 3 */ { 2, s_1_3, -1, -1, 0},
|
||||
/* 4 */ { 2, s_1_4, -1, -1, 0},
|
||||
/* 5 */ { 2, s_1_5, -1, -1, 0},
|
||||
/* 6 */ { 2, s_1_6, -1, -1, 0}
|
||||
{ 2, s_1_0, -1, -1, 0},
|
||||
{ 2, s_1_1, -1, -1, 0},
|
||||
{ 2, s_1_2, -1, -1, 0},
|
||||
{ 2, s_1_3, -1, -1, 0},
|
||||
{ 2, s_1_4, -1, -1, 0},
|
||||
{ 2, s_1_5, -1, -1, 0},
|
||||
{ 2, s_1_6, -1, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_2_0[2] = { 'i', 'g' };
|
||||
@ -131,11 +131,11 @@ static const symbol s_2_4[4] = { 'l', 0xF6, 's', 't' };
|
||||
|
||||
static const struct among a_2[5] =
|
||||
{
|
||||
/* 0 */ { 2, s_2_0, -1, 1, 0},
|
||||
/* 1 */ { 3, s_2_1, 0, 1, 0},
|
||||
/* 2 */ { 3, s_2_2, -1, 1, 0},
|
||||
/* 3 */ { 5, s_2_3, -1, 3, 0},
|
||||
/* 4 */ { 4, s_2_4, -1, 2, 0}
|
||||
{ 2, s_2_0, -1, 1, 0},
|
||||
{ 3, s_2_1, 0, 1, 0},
|
||||
{ 3, s_2_2, -1, 1, 0},
|
||||
{ 5, s_2_3, -1, 3, 0},
|
||||
{ 4, s_2_4, -1, 2, 0}
|
||||
};
|
||||
|
||||
static const unsigned char g_v[] = { 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 0, 32 };
|
||||
@ -145,52 +145,50 @@ static const unsigned char g_s_ending[] = { 119, 127, 149 };
|
||||
static const symbol s_0[] = { 'l', 0xF6, 's' };
|
||||
static const symbol s_1[] = { 'f', 'u', 'l', 'l' };
|
||||
|
||||
static int r_mark_regions(struct SN_env * z) { /* forwardmode */
|
||||
z->I[0] = z->l; /* $p1 = <integer expression>, line 28 */
|
||||
{ int c_test1 = z->c; /* test, line 29 */
|
||||
{ int ret = z->c + 3; /* hop, line 29 */
|
||||
if (0 > ret || ret > z->l) return 0;
|
||||
z->c = ret;
|
||||
}
|
||||
z->I[1] = z->c; /* setmark x, line 29 */
|
||||
static int r_mark_regions(struct SN_env * z) {
|
||||
z->I[1] = z->l;
|
||||
{ int c_test1 = z->c;
|
||||
z->c = z->c + 3;
|
||||
if (z->c > z->l) return 0;
|
||||
z->I[0] = z->c;
|
||||
z->c = c_test1;
|
||||
}
|
||||
if (out_grouping(z, g_v, 97, 246, 1) < 0) return 0; /* goto */ /* grouping v, line 30 */
|
||||
{ /* gopast */ /* non v, line 30 */
|
||||
if (out_grouping(z, g_v, 97, 246, 1) < 0) return 0;
|
||||
{
|
||||
int ret = in_grouping(z, g_v, 97, 246, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[0] = z->c; /* setmark p1, line 30 */
|
||||
/* try, line 31 */
|
||||
if (!(z->I[0] < z->I[1])) goto lab0; /* $(<integer expression> < <integer expression>), line 31 */
|
||||
z->I[0] = z->I[1]; /* $p1 = <integer expression>, line 31 */
|
||||
z->I[1] = z->c;
|
||||
|
||||
if (!(z->I[1] < z->I[0])) goto lab0;
|
||||
z->I[1] = z->I[0];
|
||||
lab0:
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_main_suffix(struct SN_env * z) { /* backwardmode */
|
||||
static int r_main_suffix(struct SN_env * z) {
|
||||
int among_var;
|
||||
|
||||
{ int mlimit1; /* setlimit, line 37 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 37 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1851442 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; } /* substring, line 37 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1851442 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; }
|
||||
among_var = find_among_b(z, a_0, 37);
|
||||
if (!(among_var)) { z->lb = mlimit1; return 0; }
|
||||
z->bra = z->c; /* ], line 37 */
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit1;
|
||||
}
|
||||
switch (among_var) { /* among, line 38 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 44 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (in_grouping_b(z, g_s_ending, 98, 121, 0)) return 0; /* grouping s_ending, line 46 */
|
||||
{ int ret = slice_del(z); /* delete, line 46 */
|
||||
if (in_grouping_b(z, g_s_ending, 98, 121, 0)) return 0;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -198,20 +196,20 @@ static int r_main_suffix(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_consonant_pair(struct SN_env * z) { /* backwardmode */
|
||||
static int r_consonant_pair(struct SN_env * z) {
|
||||
|
||||
{ int mlimit1; /* setlimit, line 50 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
{ int m2 = z->l - z->c; (void)m2; /* and, line 52 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1064976 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; } /* among, line 51 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1064976 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; }
|
||||
if (!(find_among_b(z, a_1, 7))) { z->lb = mlimit1; return 0; }
|
||||
z->c = z->l - m2;
|
||||
z->ket = z->c; /* [, line 52 */
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb) { z->lb = mlimit1; return 0; }
|
||||
z->c--; /* next, line 52 */
|
||||
z->bra = z->c; /* ], line 52 */
|
||||
{ int ret = slice_del(z); /* delete, line 52 */
|
||||
z->c--;
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
}
|
||||
@ -220,30 +218,30 @@ static int r_consonant_pair(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_other_suffix(struct SN_env * z) { /* backwardmode */
|
||||
static int r_other_suffix(struct SN_env * z) {
|
||||
int among_var;
|
||||
|
||||
{ int mlimit1; /* setlimit, line 55 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 56 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1572992 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; } /* substring, line 56 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1572992 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; }
|
||||
among_var = find_among_b(z, a_2, 5);
|
||||
if (!(among_var)) { z->lb = mlimit1; return 0; }
|
||||
z->bra = z->c; /* ], line 56 */
|
||||
switch (among_var) { /* among, line 56 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 57 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 3, s_0); /* <-, line 58 */
|
||||
{ int ret = slice_from_s(z, 3, s_0);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_from_s(z, 4, s_1); /* <-, line 59 */
|
||||
{ int ret = slice_from_s(z, 4, s_1);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -253,29 +251,29 @@ static int r_other_suffix(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern int swedish_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
|
||||
{ int c1 = z->c; /* do, line 66 */
|
||||
{ int ret = r_mark_regions(z); /* call mark_regions, line 66 */
|
||||
extern int swedish_ISO_8859_1_stem(struct SN_env * z) {
|
||||
{ int c1 = z->c;
|
||||
{ int ret = r_mark_regions(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = c1;
|
||||
}
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 67 */
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
{ int m2 = z->l - z->c; (void)m2; /* do, line 68 */
|
||||
{ int ret = r_main_suffix(z); /* call main_suffix, line 68 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
{ int ret = r_main_suffix(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m2;
|
||||
}
|
||||
{ int m3 = z->l - z->c; (void)m3; /* do, line 69 */
|
||||
{ int ret = r_consonant_pair(z); /* call consonant_pair, line 69 */
|
||||
{ int m3 = z->l - z->c; (void)m3;
|
||||
{ int ret = r_consonant_pair(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m3;
|
||||
}
|
||||
{ int m4 = z->l - z->c; (void)m4; /* do, line 70 */
|
||||
{ int ret = r_other_suffix(z); /* call other_suffix, line 70 */
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
{ int ret = r_other_suffix(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m4;
|
||||
@ -284,7 +282,7 @@ extern int swedish_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern struct SN_env * swedish_ISO_8859_1_create_env(void) { return SN_create_env(0, 2, 0); }
|
||||
extern struct SN_env * swedish_ISO_8859_1_create_env(void) { return SN_create_env(0, 2); }
|
||||
|
||||
extern void swedish_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); }
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#include "header.h"
|
||||
|
||||
@ -46,14 +46,14 @@ static const symbol s_0_7[2] = { 'z', 's' };
|
||||
|
||||
static const struct among a_0[8] =
|
||||
{
|
||||
/* 0 */ { 2, s_0_0, -1, -1, 0},
|
||||
/* 1 */ { 3, s_0_1, -1, -1, 0},
|
||||
/* 2 */ { 2, s_0_2, -1, -1, 0},
|
||||
/* 3 */ { 2, s_0_3, -1, -1, 0},
|
||||
/* 4 */ { 2, s_0_4, -1, -1, 0},
|
||||
/* 5 */ { 2, s_0_5, -1, -1, 0},
|
||||
/* 6 */ { 2, s_0_6, -1, -1, 0},
|
||||
/* 7 */ { 2, s_0_7, -1, -1, 0}
|
||||
{ 2, s_0_0, -1, -1, 0},
|
||||
{ 3, s_0_1, -1, -1, 0},
|
||||
{ 2, s_0_2, -1, -1, 0},
|
||||
{ 2, s_0_3, -1, -1, 0},
|
||||
{ 2, s_0_4, -1, -1, 0},
|
||||
{ 2, s_0_5, -1, -1, 0},
|
||||
{ 2, s_0_6, -1, -1, 0},
|
||||
{ 2, s_0_7, -1, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_1_0[1] = { 0xE1 };
|
||||
@ -61,8 +61,8 @@ static const symbol s_1_1[1] = { 0xE9 };
|
||||
|
||||
static const struct among a_1[2] =
|
||||
{
|
||||
/* 0 */ { 1, s_1_0, -1, 1, 0},
|
||||
/* 1 */ { 1, s_1_1, -1, 2, 0}
|
||||
{ 1, s_1_0, -1, 1, 0},
|
||||
{ 1, s_1_1, -1, 2, 0}
|
||||
};
|
||||
|
||||
static const symbol s_2_0[2] = { 'b', 'b' };
|
||||
@ -91,29 +91,29 @@ static const symbol s_2_22[2] = { 'z', 'z' };
|
||||
|
||||
static const struct among a_2[23] =
|
||||
{
|
||||
/* 0 */ { 2, s_2_0, -1, -1, 0},
|
||||
/* 1 */ { 2, s_2_1, -1, -1, 0},
|
||||
/* 2 */ { 2, s_2_2, -1, -1, 0},
|
||||
/* 3 */ { 2, s_2_3, -1, -1, 0},
|
||||
/* 4 */ { 2, s_2_4, -1, -1, 0},
|
||||
/* 5 */ { 2, s_2_5, -1, -1, 0},
|
||||
/* 6 */ { 2, s_2_6, -1, -1, 0},
|
||||
/* 7 */ { 2, s_2_7, -1, -1, 0},
|
||||
/* 8 */ { 2, s_2_8, -1, -1, 0},
|
||||
/* 9 */ { 2, s_2_9, -1, -1, 0},
|
||||
/* 10 */ { 2, s_2_10, -1, -1, 0},
|
||||
/* 11 */ { 2, s_2_11, -1, -1, 0},
|
||||
/* 12 */ { 3, s_2_12, -1, -1, 0},
|
||||
/* 13 */ { 2, s_2_13, -1, -1, 0},
|
||||
/* 14 */ { 3, s_2_14, -1, -1, 0},
|
||||
/* 15 */ { 2, s_2_15, -1, -1, 0},
|
||||
/* 16 */ { 2, s_2_16, -1, -1, 0},
|
||||
/* 17 */ { 3, s_2_17, -1, -1, 0},
|
||||
/* 18 */ { 3, s_2_18, -1, -1, 0},
|
||||
/* 19 */ { 3, s_2_19, -1, -1, 0},
|
||||
/* 20 */ { 3, s_2_20, -1, -1, 0},
|
||||
/* 21 */ { 3, s_2_21, -1, -1, 0},
|
||||
/* 22 */ { 2, s_2_22, -1, -1, 0}
|
||||
{ 2, s_2_0, -1, -1, 0},
|
||||
{ 2, s_2_1, -1, -1, 0},
|
||||
{ 2, s_2_2, -1, -1, 0},
|
||||
{ 2, s_2_3, -1, -1, 0},
|
||||
{ 2, s_2_4, -1, -1, 0},
|
||||
{ 2, s_2_5, -1, -1, 0},
|
||||
{ 2, s_2_6, -1, -1, 0},
|
||||
{ 2, s_2_7, -1, -1, 0},
|
||||
{ 2, s_2_8, -1, -1, 0},
|
||||
{ 2, s_2_9, -1, -1, 0},
|
||||
{ 2, s_2_10, -1, -1, 0},
|
||||
{ 2, s_2_11, -1, -1, 0},
|
||||
{ 3, s_2_12, -1, -1, 0},
|
||||
{ 2, s_2_13, -1, -1, 0},
|
||||
{ 3, s_2_14, -1, -1, 0},
|
||||
{ 2, s_2_15, -1, -1, 0},
|
||||
{ 2, s_2_16, -1, -1, 0},
|
||||
{ 3, s_2_17, -1, -1, 0},
|
||||
{ 3, s_2_18, -1, -1, 0},
|
||||
{ 3, s_2_19, -1, -1, 0},
|
||||
{ 3, s_2_20, -1, -1, 0},
|
||||
{ 3, s_2_21, -1, -1, 0},
|
||||
{ 2, s_2_22, -1, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_3_0[2] = { 'a', 'l' };
|
||||
@ -121,8 +121,8 @@ static const symbol s_3_1[2] = { 'e', 'l' };
|
||||
|
||||
static const struct among a_3[2] =
|
||||
{
|
||||
/* 0 */ { 2, s_3_0, -1, 1, 0},
|
||||
/* 1 */ { 2, s_3_1, -1, 1, 0}
|
||||
{ 2, s_3_0, -1, 1, 0},
|
||||
{ 2, s_3_1, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_4_0[2] = { 'b', 'a' };
|
||||
@ -172,50 +172,50 @@ static const symbol s_4_43[2] = { 'v', 0xE9 };
|
||||
|
||||
static const struct among a_4[44] =
|
||||
{
|
||||
/* 0 */ { 2, s_4_0, -1, -1, 0},
|
||||
/* 1 */ { 2, s_4_1, -1, -1, 0},
|
||||
/* 2 */ { 2, s_4_2, -1, -1, 0},
|
||||
/* 3 */ { 2, s_4_3, -1, -1, 0},
|
||||
/* 4 */ { 2, s_4_4, -1, -1, 0},
|
||||
/* 5 */ { 3, s_4_5, -1, -1, 0},
|
||||
/* 6 */ { 3, s_4_6, -1, -1, 0},
|
||||
/* 7 */ { 3, s_4_7, -1, -1, 0},
|
||||
/* 8 */ { 3, s_4_8, -1, -1, 0},
|
||||
/* 9 */ { 2, s_4_9, -1, -1, 0},
|
||||
/* 10 */ { 3, s_4_10, -1, -1, 0},
|
||||
/* 11 */ { 3, s_4_11, -1, -1, 0},
|
||||
/* 12 */ { 3, s_4_12, -1, -1, 0},
|
||||
/* 13 */ { 3, s_4_13, -1, -1, 0},
|
||||
/* 14 */ { 3, s_4_14, -1, -1, 0},
|
||||
/* 15 */ { 3, s_4_15, -1, -1, 0},
|
||||
/* 16 */ { 3, s_4_16, -1, -1, 0},
|
||||
/* 17 */ { 3, s_4_17, -1, -1, 0},
|
||||
/* 18 */ { 2, s_4_18, -1, -1, 0},
|
||||
/* 19 */ { 1, s_4_19, -1, -1, 0},
|
||||
/* 20 */ { 2, s_4_20, 19, -1, 0},
|
||||
/* 21 */ { 3, s_4_21, 20, -1, 0},
|
||||
/* 22 */ { 2, s_4_22, 19, -1, 0},
|
||||
/* 23 */ { 3, s_4_23, 22, -1, 0},
|
||||
/* 24 */ { 6, s_4_24, 22, -1, 0},
|
||||
/* 25 */ { 2, s_4_25, 19, -1, 0},
|
||||
/* 26 */ { 2, s_4_26, 19, -1, 0},
|
||||
/* 27 */ { 4, s_4_27, -1, -1, 0},
|
||||
/* 28 */ { 3, s_4_28, -1, -1, 0},
|
||||
/* 29 */ { 1, s_4_29, -1, -1, 0},
|
||||
/* 30 */ { 2, s_4_30, 29, -1, 0},
|
||||
/* 31 */ { 2, s_4_31, 29, -1, 0},
|
||||
/* 32 */ { 4, s_4_32, 29, -1, 0},
|
||||
/* 33 */ { 6, s_4_33, 32, -1, 0},
|
||||
/* 34 */ { 6, s_4_34, 32, -1, 0},
|
||||
/* 35 */ { 6, s_4_35, 32, -1, 0},
|
||||
/* 36 */ { 2, s_4_36, 29, -1, 0},
|
||||
/* 37 */ { 3, s_4_37, 29, -1, 0},
|
||||
/* 38 */ { 2, s_4_38, 29, -1, 0},
|
||||
/* 39 */ { 3, s_4_39, -1, -1, 0},
|
||||
/* 40 */ { 3, s_4_40, -1, -1, 0},
|
||||
/* 41 */ { 3, s_4_41, -1, -1, 0},
|
||||
/* 42 */ { 2, s_4_42, -1, -1, 0},
|
||||
/* 43 */ { 2, s_4_43, -1, -1, 0}
|
||||
{ 2, s_4_0, -1, -1, 0},
|
||||
{ 2, s_4_1, -1, -1, 0},
|
||||
{ 2, s_4_2, -1, -1, 0},
|
||||
{ 2, s_4_3, -1, -1, 0},
|
||||
{ 2, s_4_4, -1, -1, 0},
|
||||
{ 3, s_4_5, -1, -1, 0},
|
||||
{ 3, s_4_6, -1, -1, 0},
|
||||
{ 3, s_4_7, -1, -1, 0},
|
||||
{ 3, s_4_8, -1, -1, 0},
|
||||
{ 2, s_4_9, -1, -1, 0},
|
||||
{ 3, s_4_10, -1, -1, 0},
|
||||
{ 3, s_4_11, -1, -1, 0},
|
||||
{ 3, s_4_12, -1, -1, 0},
|
||||
{ 3, s_4_13, -1, -1, 0},
|
||||
{ 3, s_4_14, -1, -1, 0},
|
||||
{ 3, s_4_15, -1, -1, 0},
|
||||
{ 3, s_4_16, -1, -1, 0},
|
||||
{ 3, s_4_17, -1, -1, 0},
|
||||
{ 2, s_4_18, -1, -1, 0},
|
||||
{ 1, s_4_19, -1, -1, 0},
|
||||
{ 2, s_4_20, 19, -1, 0},
|
||||
{ 3, s_4_21, 20, -1, 0},
|
||||
{ 2, s_4_22, 19, -1, 0},
|
||||
{ 3, s_4_23, 22, -1, 0},
|
||||
{ 6, s_4_24, 22, -1, 0},
|
||||
{ 2, s_4_25, 19, -1, 0},
|
||||
{ 2, s_4_26, 19, -1, 0},
|
||||
{ 4, s_4_27, -1, -1, 0},
|
||||
{ 3, s_4_28, -1, -1, 0},
|
||||
{ 1, s_4_29, -1, -1, 0},
|
||||
{ 2, s_4_30, 29, -1, 0},
|
||||
{ 2, s_4_31, 29, -1, 0},
|
||||
{ 4, s_4_32, 29, -1, 0},
|
||||
{ 6, s_4_33, 32, -1, 0},
|
||||
{ 6, s_4_34, 32, -1, 0},
|
||||
{ 6, s_4_35, 32, -1, 0},
|
||||
{ 2, s_4_36, 29, -1, 0},
|
||||
{ 3, s_4_37, 29, -1, 0},
|
||||
{ 2, s_4_38, 29, -1, 0},
|
||||
{ 3, s_4_39, -1, -1, 0},
|
||||
{ 3, s_4_40, -1, -1, 0},
|
||||
{ 3, s_4_41, -1, -1, 0},
|
||||
{ 2, s_4_42, -1, -1, 0},
|
||||
{ 2, s_4_43, -1, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_5_0[2] = { 0xE1, 'n' };
|
||||
@ -224,9 +224,9 @@ static const symbol s_5_2[6] = { 0xE1, 'n', 'k', 0xE9, 'n', 't' };
|
||||
|
||||
static const struct among a_5[3] =
|
||||
{
|
||||
/* 0 */ { 2, s_5_0, -1, 2, 0},
|
||||
/* 1 */ { 2, s_5_1, -1, 1, 0},
|
||||
/* 2 */ { 6, s_5_2, -1, 2, 0}
|
||||
{ 2, s_5_0, -1, 2, 0},
|
||||
{ 2, s_5_1, -1, 1, 0},
|
||||
{ 6, s_5_2, -1, 2, 0}
|
||||
};
|
||||
|
||||
static const symbol s_6_0[4] = { 's', 't', 'u', 'l' };
|
||||
@ -238,12 +238,12 @@ static const symbol s_6_5[5] = { 0xE9, 's', 't', 0xFC, 'l' };
|
||||
|
||||
static const struct among a_6[6] =
|
||||
{
|
||||
/* 0 */ { 4, s_6_0, -1, 1, 0},
|
||||
/* 1 */ { 5, s_6_1, 0, 1, 0},
|
||||
/* 2 */ { 5, s_6_2, 0, 2, 0},
|
||||
/* 3 */ { 4, s_6_3, -1, 1, 0},
|
||||
/* 4 */ { 5, s_6_4, 3, 1, 0},
|
||||
/* 5 */ { 5, s_6_5, 3, 3, 0}
|
||||
{ 4, s_6_0, -1, 1, 0},
|
||||
{ 5, s_6_1, 0, 1, 0},
|
||||
{ 5, s_6_2, 0, 2, 0},
|
||||
{ 4, s_6_3, -1, 1, 0},
|
||||
{ 5, s_6_4, 3, 1, 0},
|
||||
{ 5, s_6_5, 3, 3, 0}
|
||||
};
|
||||
|
||||
static const symbol s_7_0[1] = { 0xE1 };
|
||||
@ -251,8 +251,8 @@ static const symbol s_7_1[1] = { 0xE9 };
|
||||
|
||||
static const struct among a_7[2] =
|
||||
{
|
||||
/* 0 */ { 1, s_7_0, -1, 1, 0},
|
||||
/* 1 */ { 1, s_7_1, -1, 1, 0}
|
||||
{ 1, s_7_0, -1, 1, 0},
|
||||
{ 1, s_7_1, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_8_0[1] = { 'k' };
|
||||
@ -265,13 +265,13 @@ static const symbol s_8_6[2] = { 0xF6, 'k' };
|
||||
|
||||
static const struct among a_8[7] =
|
||||
{
|
||||
/* 0 */ { 1, s_8_0, -1, 3, 0},
|
||||
/* 1 */ { 2, s_8_1, 0, 3, 0},
|
||||
/* 2 */ { 2, s_8_2, 0, 3, 0},
|
||||
/* 3 */ { 2, s_8_3, 0, 3, 0},
|
||||
/* 4 */ { 2, s_8_4, 0, 1, 0},
|
||||
/* 5 */ { 2, s_8_5, 0, 2, 0},
|
||||
/* 6 */ { 2, s_8_6, 0, 3, 0}
|
||||
{ 1, s_8_0, -1, 3, 0},
|
||||
{ 2, s_8_1, 0, 3, 0},
|
||||
{ 2, s_8_2, 0, 3, 0},
|
||||
{ 2, s_8_3, 0, 3, 0},
|
||||
{ 2, s_8_4, 0, 1, 0},
|
||||
{ 2, s_8_5, 0, 2, 0},
|
||||
{ 2, s_8_6, 0, 3, 0}
|
||||
};
|
||||
|
||||
static const symbol s_9_0[2] = { 0xE9, 'i' };
|
||||
@ -289,18 +289,18 @@ static const symbol s_9_11[2] = { 0xE9, 0xE9 };
|
||||
|
||||
static const struct among a_9[12] =
|
||||
{
|
||||
/* 0 */ { 2, s_9_0, -1, 1, 0},
|
||||
/* 1 */ { 3, s_9_1, 0, 3, 0},
|
||||
/* 2 */ { 3, s_9_2, 0, 2, 0},
|
||||
/* 3 */ { 1, s_9_3, -1, 1, 0},
|
||||
/* 4 */ { 2, s_9_4, 3, 1, 0},
|
||||
/* 5 */ { 3, s_9_5, 4, 1, 0},
|
||||
/* 6 */ { 3, s_9_6, 4, 1, 0},
|
||||
/* 7 */ { 3, s_9_7, 4, 1, 0},
|
||||
/* 8 */ { 3, s_9_8, 4, 3, 0},
|
||||
/* 9 */ { 3, s_9_9, 4, 2, 0},
|
||||
/* 10 */ { 3, s_9_10, 4, 1, 0},
|
||||
/* 11 */ { 2, s_9_11, 3, 2, 0}
|
||||
{ 2, s_9_0, -1, 1, 0},
|
||||
{ 3, s_9_1, 0, 3, 0},
|
||||
{ 3, s_9_2, 0, 2, 0},
|
||||
{ 1, s_9_3, -1, 1, 0},
|
||||
{ 2, s_9_4, 3, 1, 0},
|
||||
{ 3, s_9_5, 4, 1, 0},
|
||||
{ 3, s_9_6, 4, 1, 0},
|
||||
{ 3, s_9_7, 4, 1, 0},
|
||||
{ 3, s_9_8, 4, 3, 0},
|
||||
{ 3, s_9_9, 4, 2, 0},
|
||||
{ 3, s_9_10, 4, 1, 0},
|
||||
{ 2, s_9_11, 3, 2, 0}
|
||||
};
|
||||
|
||||
static const symbol s_10_0[1] = { 'a' };
|
||||
@ -337,37 +337,37 @@ static const symbol s_10_30[1] = { 0xE9 };
|
||||
|
||||
static const struct among a_10[31] =
|
||||
{
|
||||
/* 0 */ { 1, s_10_0, -1, 1, 0},
|
||||
/* 1 */ { 2, s_10_1, 0, 1, 0},
|
||||
/* 2 */ { 1, s_10_2, -1, 1, 0},
|
||||
/* 3 */ { 2, s_10_3, 2, 1, 0},
|
||||
/* 4 */ { 2, s_10_4, 2, 1, 0},
|
||||
/* 5 */ { 2, s_10_5, 2, 1, 0},
|
||||
/* 6 */ { 2, s_10_6, 2, 2, 0},
|
||||
/* 7 */ { 2, s_10_7, 2, 3, 0},
|
||||
/* 8 */ { 2, s_10_8, 2, 1, 0},
|
||||
/* 9 */ { 1, s_10_9, -1, 1, 0},
|
||||
/* 10 */ { 2, s_10_10, 9, 1, 0},
|
||||
/* 11 */ { 2, s_10_11, -1, 1, 0},
|
||||
/* 12 */ { 3, s_10_12, 11, 1, 0},
|
||||
/* 13 */ { 3, s_10_13, 11, 2, 0},
|
||||
/* 14 */ { 3, s_10_14, 11, 3, 0},
|
||||
/* 15 */ { 3, s_10_15, 11, 1, 0},
|
||||
/* 16 */ { 2, s_10_16, -1, 1, 0},
|
||||
/* 17 */ { 3, s_10_17, 16, 1, 0},
|
||||
/* 18 */ { 4, s_10_18, 17, 2, 0},
|
||||
/* 19 */ { 2, s_10_19, -1, 1, 0},
|
||||
/* 20 */ { 3, s_10_20, 19, 1, 0},
|
||||
/* 21 */ { 4, s_10_21, 20, 3, 0},
|
||||
/* 22 */ { 1, s_10_22, -1, 1, 0},
|
||||
/* 23 */ { 2, s_10_23, 22, 1, 0},
|
||||
/* 24 */ { 2, s_10_24, 22, 1, 0},
|
||||
/* 25 */ { 2, s_10_25, 22, 1, 0},
|
||||
/* 26 */ { 2, s_10_26, 22, 2, 0},
|
||||
/* 27 */ { 2, s_10_27, 22, 3, 0},
|
||||
/* 28 */ { 1, s_10_28, -1, 1, 0},
|
||||
/* 29 */ { 1, s_10_29, -1, 2, 0},
|
||||
/* 30 */ { 1, s_10_30, -1, 3, 0}
|
||||
{ 1, s_10_0, -1, 1, 0},
|
||||
{ 2, s_10_1, 0, 1, 0},
|
||||
{ 1, s_10_2, -1, 1, 0},
|
||||
{ 2, s_10_3, 2, 1, 0},
|
||||
{ 2, s_10_4, 2, 1, 0},
|
||||
{ 2, s_10_5, 2, 1, 0},
|
||||
{ 2, s_10_6, 2, 2, 0},
|
||||
{ 2, s_10_7, 2, 3, 0},
|
||||
{ 2, s_10_8, 2, 1, 0},
|
||||
{ 1, s_10_9, -1, 1, 0},
|
||||
{ 2, s_10_10, 9, 1, 0},
|
||||
{ 2, s_10_11, -1, 1, 0},
|
||||
{ 3, s_10_12, 11, 1, 0},
|
||||
{ 3, s_10_13, 11, 2, 0},
|
||||
{ 3, s_10_14, 11, 3, 0},
|
||||
{ 3, s_10_15, 11, 1, 0},
|
||||
{ 2, s_10_16, -1, 1, 0},
|
||||
{ 3, s_10_17, 16, 1, 0},
|
||||
{ 4, s_10_18, 17, 2, 0},
|
||||
{ 2, s_10_19, -1, 1, 0},
|
||||
{ 3, s_10_20, 19, 1, 0},
|
||||
{ 4, s_10_21, 20, 3, 0},
|
||||
{ 1, s_10_22, -1, 1, 0},
|
||||
{ 2, s_10_23, 22, 1, 0},
|
||||
{ 2, s_10_24, 22, 1, 0},
|
||||
{ 2, s_10_25, 22, 1, 0},
|
||||
{ 2, s_10_26, 22, 2, 0},
|
||||
{ 2, s_10_27, 22, 3, 0},
|
||||
{ 1, s_10_28, -1, 1, 0},
|
||||
{ 1, s_10_29, -1, 2, 0},
|
||||
{ 1, s_10_30, -1, 3, 0}
|
||||
};
|
||||
|
||||
static const symbol s_11_0[2] = { 'i', 'd' };
|
||||
@ -415,48 +415,48 @@ static const symbol s_11_41[3] = { 0xE9, 'i', 'm' };
|
||||
|
||||
static const struct among a_11[42] =
|
||||
{
|
||||
/* 0 */ { 2, s_11_0, -1, 1, 0},
|
||||
/* 1 */ { 3, s_11_1, 0, 1, 0},
|
||||
/* 2 */ { 4, s_11_2, 1, 1, 0},
|
||||
/* 3 */ { 3, s_11_3, 0, 1, 0},
|
||||
/* 4 */ { 4, s_11_4, 3, 1, 0},
|
||||
/* 5 */ { 3, s_11_5, 0, 2, 0},
|
||||
/* 6 */ { 3, s_11_6, 0, 3, 0},
|
||||
/* 7 */ { 1, s_11_7, -1, 1, 0},
|
||||
/* 8 */ { 2, s_11_8, 7, 1, 0},
|
||||
/* 9 */ { 3, s_11_9, 8, 1, 0},
|
||||
/* 10 */ { 2, s_11_10, 7, 1, 0},
|
||||
/* 11 */ { 3, s_11_11, 10, 1, 0},
|
||||
/* 12 */ { 2, s_11_12, 7, 2, 0},
|
||||
/* 13 */ { 2, s_11_13, 7, 3, 0},
|
||||
/* 14 */ { 4, s_11_14, -1, 1, 0},
|
||||
/* 15 */ { 5, s_11_15, 14, 1, 0},
|
||||
/* 16 */ { 6, s_11_16, 15, 1, 0},
|
||||
/* 17 */ { 5, s_11_17, 14, 3, 0},
|
||||
/* 18 */ { 2, s_11_18, -1, 1, 0},
|
||||
/* 19 */ { 3, s_11_19, 18, 1, 0},
|
||||
/* 20 */ { 4, s_11_20, 19, 1, 0},
|
||||
/* 21 */ { 3, s_11_21, 18, 1, 0},
|
||||
/* 22 */ { 4, s_11_22, 21, 1, 0},
|
||||
/* 23 */ { 3, s_11_23, 18, 2, 0},
|
||||
/* 24 */ { 3, s_11_24, 18, 3, 0},
|
||||
/* 25 */ { 3, s_11_25, -1, 1, 0},
|
||||
/* 26 */ { 4, s_11_26, 25, 1, 0},
|
||||
/* 27 */ { 5, s_11_27, 26, 1, 0},
|
||||
/* 28 */ { 4, s_11_28, 25, 1, 0},
|
||||
/* 29 */ { 5, s_11_29, 28, 1, 0},
|
||||
/* 30 */ { 4, s_11_30, 25, 2, 0},
|
||||
/* 31 */ { 4, s_11_31, 25, 3, 0},
|
||||
/* 32 */ { 5, s_11_32, -1, 1, 0},
|
||||
/* 33 */ { 6, s_11_33, 32, 1, 0},
|
||||
/* 34 */ { 5, s_11_34, -1, 2, 0},
|
||||
/* 35 */ { 2, s_11_35, -1, 1, 0},
|
||||
/* 36 */ { 3, s_11_36, 35, 1, 0},
|
||||
/* 37 */ { 4, s_11_37, 36, 1, 0},
|
||||
/* 38 */ { 3, s_11_38, 35, 1, 0},
|
||||
/* 39 */ { 4, s_11_39, 38, 1, 0},
|
||||
/* 40 */ { 3, s_11_40, 35, 2, 0},
|
||||
/* 41 */ { 3, s_11_41, 35, 3, 0}
|
||||
{ 2, s_11_0, -1, 1, 0},
|
||||
{ 3, s_11_1, 0, 1, 0},
|
||||
{ 4, s_11_2, 1, 1, 0},
|
||||
{ 3, s_11_3, 0, 1, 0},
|
||||
{ 4, s_11_4, 3, 1, 0},
|
||||
{ 3, s_11_5, 0, 2, 0},
|
||||
{ 3, s_11_6, 0, 3, 0},
|
||||
{ 1, s_11_7, -1, 1, 0},
|
||||
{ 2, s_11_8, 7, 1, 0},
|
||||
{ 3, s_11_9, 8, 1, 0},
|
||||
{ 2, s_11_10, 7, 1, 0},
|
||||
{ 3, s_11_11, 10, 1, 0},
|
||||
{ 2, s_11_12, 7, 2, 0},
|
||||
{ 2, s_11_13, 7, 3, 0},
|
||||
{ 4, s_11_14, -1, 1, 0},
|
||||
{ 5, s_11_15, 14, 1, 0},
|
||||
{ 6, s_11_16, 15, 1, 0},
|
||||
{ 5, s_11_17, 14, 3, 0},
|
||||
{ 2, s_11_18, -1, 1, 0},
|
||||
{ 3, s_11_19, 18, 1, 0},
|
||||
{ 4, s_11_20, 19, 1, 0},
|
||||
{ 3, s_11_21, 18, 1, 0},
|
||||
{ 4, s_11_22, 21, 1, 0},
|
||||
{ 3, s_11_23, 18, 2, 0},
|
||||
{ 3, s_11_24, 18, 3, 0},
|
||||
{ 3, s_11_25, -1, 1, 0},
|
||||
{ 4, s_11_26, 25, 1, 0},
|
||||
{ 5, s_11_27, 26, 1, 0},
|
||||
{ 4, s_11_28, 25, 1, 0},
|
||||
{ 5, s_11_29, 28, 1, 0},
|
||||
{ 4, s_11_30, 25, 2, 0},
|
||||
{ 4, s_11_31, 25, 3, 0},
|
||||
{ 5, s_11_32, -1, 1, 0},
|
||||
{ 6, s_11_33, 32, 1, 0},
|
||||
{ 5, s_11_34, -1, 2, 0},
|
||||
{ 2, s_11_35, -1, 1, 0},
|
||||
{ 3, s_11_36, 35, 1, 0},
|
||||
{ 4, s_11_37, 36, 1, 0},
|
||||
{ 3, s_11_38, 35, 1, 0},
|
||||
{ 4, s_11_39, 38, 1, 0},
|
||||
{ 3, s_11_40, 35, 2, 0},
|
||||
{ 3, s_11_41, 35, 3, 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, 52, 14 };
|
||||
@ -476,60 +476,60 @@ static const symbol s_11[] = { 'e' };
|
||||
static const symbol s_12[] = { 'a' };
|
||||
static const symbol s_13[] = { 'e' };
|
||||
|
||||
static int r_mark_regions(struct SN_env * z) { /* forwardmode */
|
||||
z->I[0] = z->l; /* $p1 = <integer expression>, line 46 */
|
||||
{ int c1 = z->c; /* or, line 51 */
|
||||
if (in_grouping(z, g_v, 97, 252, 0)) goto lab1; /* grouping v, line 48 */
|
||||
if (in_grouping(z, g_v, 97, 252, 1) < 0) goto lab1; /* goto */ /* non v, line 48 */
|
||||
{ int c2 = z->c; /* or, line 49 */
|
||||
if (z->c + 1 >= z->l || z->p[z->c + 1] >> 5 != 3 || !((101187584 >> (z->p[z->c + 1] & 0x1f)) & 1)) goto lab3; /* among, line 49 */
|
||||
static int r_mark_regions(struct SN_env * z) {
|
||||
z->I[0] = z->l;
|
||||
{ int c1 = z->c;
|
||||
if (in_grouping(z, g_v, 97, 252, 0)) goto lab1;
|
||||
if (in_grouping(z, g_v, 97, 252, 1) < 0) goto lab1;
|
||||
{ int c2 = z->c;
|
||||
if (z->c + 1 >= z->l || z->p[z->c + 1] >> 5 != 3 || !((101187584 >> (z->p[z->c + 1] & 0x1f)) & 1)) goto lab3;
|
||||
if (!(find_among(z, a_0, 8))) goto lab3;
|
||||
goto lab2;
|
||||
lab3:
|
||||
z->c = c2;
|
||||
if (z->c >= z->l) goto lab1;
|
||||
z->c++; /* next, line 49 */
|
||||
z->c++;
|
||||
}
|
||||
lab2:
|
||||
z->I[0] = z->c; /* setmark p1, line 50 */
|
||||
z->I[0] = z->c;
|
||||
goto lab0;
|
||||
lab1:
|
||||
z->c = c1;
|
||||
if (out_grouping(z, g_v, 97, 252, 0)) return 0; /* non v, line 53 */
|
||||
{ /* gopast */ /* grouping v, line 53 */
|
||||
if (out_grouping(z, g_v, 97, 252, 0)) return 0;
|
||||
{
|
||||
int ret = out_grouping(z, g_v, 97, 252, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[0] = z->c; /* setmark p1, line 53 */
|
||||
z->I[0] = z->c;
|
||||
}
|
||||
lab0:
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_R1(struct SN_env * z) { /* backwardmode */
|
||||
if (!(z->I[0] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 58 */
|
||||
static int r_R1(struct SN_env * z) {
|
||||
if (!(z->I[0] <= z->c)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_v_ending(struct SN_env * z) { /* backwardmode */
|
||||
static int r_v_ending(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 61 */
|
||||
if (z->c <= z->lb || (z->p[z->c - 1] != 225 && z->p[z->c - 1] != 233)) return 0; /* substring, line 61 */
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || (z->p[z->c - 1] != 225 && z->p[z->c - 1] != 233)) return 0;
|
||||
among_var = find_among_b(z, a_1, 2);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 61 */
|
||||
{ int ret = r_R1(z); /* call R1, line 61 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
switch (among_var) { /* among, line 61 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_from_s(z, 1, s_0); /* <-, line 62 */
|
||||
{ int ret = slice_from_s(z, 1, s_0);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 1, s_1); /* <-, line 63 */
|
||||
{ int ret = slice_from_s(z, 1, s_1);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -537,84 +537,82 @@ static int r_v_ending(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_double(struct SN_env * z) { /* backwardmode */
|
||||
{ int m_test1 = z->l - z->c; /* test, line 68 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((106790108 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* among, line 68 */
|
||||
static int r_double(struct SN_env * z) {
|
||||
{ int m_test1 = z->l - z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((106790108 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
|
||||
if (!(find_among_b(z, a_2, 23))) return 0;
|
||||
z->c = z->l - m_test1;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_undouble(struct SN_env * z) { /* backwardmode */
|
||||
static int r_undouble(struct SN_env * z) {
|
||||
if (z->c <= z->lb) return 0;
|
||||
z->c--; /* next, line 73 */
|
||||
z->ket = z->c; /* [, line 73 */
|
||||
{ int ret = z->c - 1; /* hop, line 73 */
|
||||
if (z->lb > ret || ret > z->l) return 0;
|
||||
z->c = ret;
|
||||
}
|
||||
z->bra = z->c; /* ], line 73 */
|
||||
{ int ret = slice_del(z); /* delete, line 73 */
|
||||
z->c--;
|
||||
z->ket = z->c;
|
||||
z->c = z->c - 1;
|
||||
if (z->c < z->lb) return 0;
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_instrum(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 77 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] != 108) return 0; /* substring, line 77 */
|
||||
static int r_instrum(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] != 108) return 0;
|
||||
if (!(find_among_b(z, a_3, 2))) return 0;
|
||||
z->bra = z->c; /* ], line 77 */
|
||||
{ int ret = r_R1(z); /* call R1, line 77 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int ret = r_double(z); /* call double, line 78 */
|
||||
{ int ret = r_double(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 81 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int ret = r_undouble(z); /* call undouble, line 82 */
|
||||
{ int ret = r_undouble(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_case(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 87 */
|
||||
if (!(find_among_b(z, a_4, 44))) return 0; /* substring, line 87 */
|
||||
z->bra = z->c; /* ], line 87 */
|
||||
{ int ret = r_R1(z); /* call R1, line 87 */
|
||||
static int r_case(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (!(find_among_b(z, a_4, 44))) return 0;
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 111 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int ret = r_v_ending(z); /* call v_ending, line 112 */
|
||||
{ int ret = r_v_ending(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_case_special(struct SN_env * z) { /* backwardmode */
|
||||
static int r_case_special(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 116 */
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 110 && z->p[z->c - 1] != 116)) return 0; /* substring, line 116 */
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 110 && z->p[z->c - 1] != 116)) return 0;
|
||||
among_var = find_among_b(z, a_5, 3);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 116 */
|
||||
{ int ret = r_R1(z); /* call R1, line 116 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
switch (among_var) { /* among, line 116 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_from_s(z, 1, s_2); /* <-, line 117 */
|
||||
{ int ret = slice_from_s(z, 1, s_2);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 1, s_3); /* <-, line 118 */
|
||||
{ int ret = slice_from_s(z, 1, s_3);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -622,29 +620,29 @@ static int r_case_special(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_case_other(struct SN_env * z) { /* backwardmode */
|
||||
static int r_case_other(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 124 */
|
||||
if (z->c - 3 <= z->lb || z->p[z->c - 1] != 108) return 0; /* substring, line 124 */
|
||||
z->ket = z->c;
|
||||
if (z->c - 3 <= z->lb || z->p[z->c - 1] != 108) return 0;
|
||||
among_var = find_among_b(z, a_6, 6);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 124 */
|
||||
{ int ret = r_R1(z); /* call R1, line 124 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
switch (among_var) { /* among, line 124 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 125 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 1, s_4); /* <-, line 127 */
|
||||
{ int ret = slice_from_s(z, 1, s_4);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_from_s(z, 1, s_5); /* <-, line 128 */
|
||||
{ int ret = slice_from_s(z, 1, s_5);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -652,49 +650,49 @@ static int r_case_other(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_factive(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 133 */
|
||||
if (z->c <= z->lb || (z->p[z->c - 1] != 225 && z->p[z->c - 1] != 233)) return 0; /* substring, line 133 */
|
||||
static int r_factive(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || (z->p[z->c - 1] != 225 && z->p[z->c - 1] != 233)) return 0;
|
||||
if (!(find_among_b(z, a_7, 2))) return 0;
|
||||
z->bra = z->c; /* ], line 133 */
|
||||
{ int ret = r_R1(z); /* call R1, line 133 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int ret = r_double(z); /* call double, line 134 */
|
||||
{ int ret = r_double(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 137 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int ret = r_undouble(z); /* call undouble, line 138 */
|
||||
{ int ret = r_undouble(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_plural(struct SN_env * z) { /* backwardmode */
|
||||
static int r_plural(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 142 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 107) return 0; /* substring, line 142 */
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 107) return 0;
|
||||
among_var = find_among_b(z, a_8, 7);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 142 */
|
||||
{ int ret = r_R1(z); /* call R1, line 142 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
switch (among_var) { /* among, line 142 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_from_s(z, 1, s_6); /* <-, line 143 */
|
||||
{ int ret = slice_from_s(z, 1, s_6);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 1, s_7); /* <-, line 144 */
|
||||
{ int ret = slice_from_s(z, 1, s_7);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_del(z); /* delete, line 145 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -702,29 +700,29 @@ static int r_plural(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_owned(struct SN_env * z) { /* backwardmode */
|
||||
static int r_owned(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 154 */
|
||||
if (z->c <= z->lb || (z->p[z->c - 1] != 105 && z->p[z->c - 1] != 233)) return 0; /* substring, line 154 */
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || (z->p[z->c - 1] != 105 && z->p[z->c - 1] != 233)) return 0;
|
||||
among_var = find_among_b(z, a_9, 12);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 154 */
|
||||
{ int ret = r_R1(z); /* call R1, line 154 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
switch (among_var) { /* among, line 154 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 155 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 1, s_8); /* <-, line 156 */
|
||||
{ int ret = slice_from_s(z, 1, s_8);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_from_s(z, 1, s_9); /* <-, line 157 */
|
||||
{ int ret = slice_from_s(z, 1, s_9);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -732,28 +730,28 @@ static int r_owned(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_sing_owner(struct SN_env * z) { /* backwardmode */
|
||||
static int r_sing_owner(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 168 */
|
||||
among_var = find_among_b(z, a_10, 31); /* substring, line 168 */
|
||||
z->ket = z->c;
|
||||
among_var = find_among_b(z, a_10, 31);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 168 */
|
||||
{ int ret = r_R1(z); /* call R1, line 168 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
switch (among_var) { /* among, line 168 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 169 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 1, s_10); /* <-, line 170 */
|
||||
{ int ret = slice_from_s(z, 1, s_10);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_from_s(z, 1, s_11); /* <-, line 171 */
|
||||
{ int ret = slice_from_s(z, 1, s_11);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -761,29 +759,29 @@ static int r_sing_owner(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_plur_owner(struct SN_env * z) { /* backwardmode */
|
||||
static int r_plur_owner(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 193 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((10768 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 193 */
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((10768 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
|
||||
among_var = find_among_b(z, a_11, 42);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 193 */
|
||||
{ int ret = r_R1(z); /* call R1, line 193 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
switch (among_var) { /* among, line 193 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 194 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 1, s_12); /* <-, line 195 */
|
||||
{ int ret = slice_from_s(z, 1, s_12);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_from_s(z, 1, s_13); /* <-, line 196 */
|
||||
{ int ret = slice_from_s(z, 1, s_13);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -791,65 +789,65 @@ static int r_plur_owner(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern int hungarian_ISO_8859_2_stem(struct SN_env * z) { /* forwardmode */
|
||||
{ int c1 = z->c; /* do, line 229 */
|
||||
{ int ret = r_mark_regions(z); /* call mark_regions, line 229 */
|
||||
extern int hungarian_ISO_8859_2_stem(struct SN_env * z) {
|
||||
{ int c1 = z->c;
|
||||
{ int ret = r_mark_regions(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = c1;
|
||||
}
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 230 */
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
{ int m2 = z->l - z->c; (void)m2; /* do, line 231 */
|
||||
{ int ret = r_instrum(z); /* call instrum, line 231 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
{ int ret = r_instrum(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m2;
|
||||
}
|
||||
{ int m3 = z->l - z->c; (void)m3; /* do, line 232 */
|
||||
{ int ret = r_case(z); /* call case, line 232 */
|
||||
{ int m3 = z->l - z->c; (void)m3;
|
||||
{ int ret = r_case(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m3;
|
||||
}
|
||||
{ int m4 = z->l - z->c; (void)m4; /* do, line 233 */
|
||||
{ int ret = r_case_special(z); /* call case_special, line 233 */
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
{ int ret = r_case_special(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m4;
|
||||
}
|
||||
{ int m5 = z->l - z->c; (void)m5; /* do, line 234 */
|
||||
{ int ret = r_case_other(z); /* call case_other, line 234 */
|
||||
{ int m5 = z->l - z->c; (void)m5;
|
||||
{ int ret = r_case_other(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m5;
|
||||
}
|
||||
{ int m6 = z->l - z->c; (void)m6; /* do, line 235 */
|
||||
{ int ret = r_factive(z); /* call factive, line 235 */
|
||||
{ int m6 = z->l - z->c; (void)m6;
|
||||
{ int ret = r_factive(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m6;
|
||||
}
|
||||
{ int m7 = z->l - z->c; (void)m7; /* do, line 236 */
|
||||
{ int ret = r_owned(z); /* call owned, line 236 */
|
||||
{ int m7 = z->l - z->c; (void)m7;
|
||||
{ int ret = r_owned(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m7;
|
||||
}
|
||||
{ int m8 = z->l - z->c; (void)m8; /* do, line 237 */
|
||||
{ int ret = r_sing_owner(z); /* call sing_owner, line 237 */
|
||||
{ int m8 = z->l - z->c; (void)m8;
|
||||
{ int ret = r_sing_owner(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m8;
|
||||
}
|
||||
{ int m9 = z->l - z->c; (void)m9; /* do, line 238 */
|
||||
{ int ret = r_plur_owner(z); /* call plur_owner, line 238 */
|
||||
{ int m9 = z->l - z->c; (void)m9;
|
||||
{ int ret = r_plur_owner(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m9;
|
||||
}
|
||||
{ int m10 = z->l - z->c; (void)m10; /* do, line 239 */
|
||||
{ int ret = r_plural(z); /* call plural, line 239 */
|
||||
{ int m10 = z->l - z->c; (void)m10;
|
||||
{ int ret = r_plural(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m10;
|
||||
@ -858,7 +856,7 @@ extern int hungarian_ISO_8859_2_stem(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern struct SN_env * hungarian_ISO_8859_2_create_env(void) { return SN_create_env(0, 1, 0); }
|
||||
extern struct SN_env * hungarian_ISO_8859_2_create_env(void) { return SN_create_env(0, 1); }
|
||||
|
||||
extern void hungarian_ISO_8859_2_close_env(struct SN_env * z) { SN_close_env(z, 0); }
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#include "header.h"
|
||||
|
||||
@ -43,15 +43,15 @@ static const symbol s_0_8[6] = { 0xD9, 0xD7, 0xDB, 0xC9, 0xD3, 0xD8 };
|
||||
|
||||
static const struct among a_0[9] =
|
||||
{
|
||||
/* 0 */ { 3, s_0_0, -1, 1, 0},
|
||||
/* 1 */ { 4, s_0_1, 0, 2, 0},
|
||||
/* 2 */ { 4, s_0_2, 0, 2, 0},
|
||||
/* 3 */ { 1, s_0_3, -1, 1, 0},
|
||||
/* 4 */ { 2, s_0_4, 3, 2, 0},
|
||||
/* 5 */ { 2, s_0_5, 3, 2, 0},
|
||||
/* 6 */ { 5, s_0_6, -1, 1, 0},
|
||||
/* 7 */ { 6, s_0_7, 6, 2, 0},
|
||||
/* 8 */ { 6, s_0_8, 6, 2, 0}
|
||||
{ 3, s_0_0, -1, 1, 0},
|
||||
{ 4, s_0_1, 0, 2, 0},
|
||||
{ 4, s_0_2, 0, 2, 0},
|
||||
{ 1, s_0_3, -1, 1, 0},
|
||||
{ 2, s_0_4, 3, 2, 0},
|
||||
{ 2, s_0_5, 3, 2, 0},
|
||||
{ 5, s_0_6, -1, 1, 0},
|
||||
{ 6, s_0_7, 6, 2, 0},
|
||||
{ 6, s_0_8, 6, 2, 0}
|
||||
};
|
||||
|
||||
static const symbol s_1_0[2] = { 0xC0, 0xC0 };
|
||||
@ -83,32 +83,32 @@ static const symbol s_1_25[3] = { 0xCF, 0xCD, 0xD5 };
|
||||
|
||||
static const struct among a_1[26] =
|
||||
{
|
||||
/* 0 */ { 2, s_1_0, -1, 1, 0},
|
||||
/* 1 */ { 2, s_1_1, -1, 1, 0},
|
||||
/* 2 */ { 2, s_1_2, -1, 1, 0},
|
||||
/* 3 */ { 2, s_1_3, -1, 1, 0},
|
||||
/* 4 */ { 2, s_1_4, -1, 1, 0},
|
||||
/* 5 */ { 2, s_1_5, -1, 1, 0},
|
||||
/* 6 */ { 2, s_1_6, -1, 1, 0},
|
||||
/* 7 */ { 2, s_1_7, -1, 1, 0},
|
||||
/* 8 */ { 2, s_1_8, -1, 1, 0},
|
||||
/* 9 */ { 2, s_1_9, -1, 1, 0},
|
||||
/* 10 */ { 3, s_1_10, -1, 1, 0},
|
||||
/* 11 */ { 3, s_1_11, -1, 1, 0},
|
||||
/* 12 */ { 2, s_1_12, -1, 1, 0},
|
||||
/* 13 */ { 2, s_1_13, -1, 1, 0},
|
||||
/* 14 */ { 2, s_1_14, -1, 1, 0},
|
||||
/* 15 */ { 2, s_1_15, -1, 1, 0},
|
||||
/* 16 */ { 2, s_1_16, -1, 1, 0},
|
||||
/* 17 */ { 2, s_1_17, -1, 1, 0},
|
||||
/* 18 */ { 2, s_1_18, -1, 1, 0},
|
||||
/* 19 */ { 2, s_1_19, -1, 1, 0},
|
||||
/* 20 */ { 3, s_1_20, -1, 1, 0},
|
||||
/* 21 */ { 3, s_1_21, -1, 1, 0},
|
||||
/* 22 */ { 2, s_1_22, -1, 1, 0},
|
||||
/* 23 */ { 2, s_1_23, -1, 1, 0},
|
||||
/* 24 */ { 3, s_1_24, -1, 1, 0},
|
||||
/* 25 */ { 3, s_1_25, -1, 1, 0}
|
||||
{ 2, s_1_0, -1, 1, 0},
|
||||
{ 2, s_1_1, -1, 1, 0},
|
||||
{ 2, s_1_2, -1, 1, 0},
|
||||
{ 2, s_1_3, -1, 1, 0},
|
||||
{ 2, s_1_4, -1, 1, 0},
|
||||
{ 2, s_1_5, -1, 1, 0},
|
||||
{ 2, s_1_6, -1, 1, 0},
|
||||
{ 2, s_1_7, -1, 1, 0},
|
||||
{ 2, s_1_8, -1, 1, 0},
|
||||
{ 2, s_1_9, -1, 1, 0},
|
||||
{ 3, s_1_10, -1, 1, 0},
|
||||
{ 3, s_1_11, -1, 1, 0},
|
||||
{ 2, s_1_12, -1, 1, 0},
|
||||
{ 2, s_1_13, -1, 1, 0},
|
||||
{ 2, s_1_14, -1, 1, 0},
|
||||
{ 2, s_1_15, -1, 1, 0},
|
||||
{ 2, s_1_16, -1, 1, 0},
|
||||
{ 2, s_1_17, -1, 1, 0},
|
||||
{ 2, s_1_18, -1, 1, 0},
|
||||
{ 2, s_1_19, -1, 1, 0},
|
||||
{ 3, s_1_20, -1, 1, 0},
|
||||
{ 3, s_1_21, -1, 1, 0},
|
||||
{ 2, s_1_22, -1, 1, 0},
|
||||
{ 2, s_1_23, -1, 1, 0},
|
||||
{ 3, s_1_24, -1, 1, 0},
|
||||
{ 3, s_1_25, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_2_0[2] = { 0xC5, 0xCD };
|
||||
@ -122,14 +122,14 @@ static const symbol s_2_7[3] = { 0xD5, 0xC0, 0xDD };
|
||||
|
||||
static const struct among a_2[8] =
|
||||
{
|
||||
/* 0 */ { 2, s_2_0, -1, 1, 0},
|
||||
/* 1 */ { 2, s_2_1, -1, 1, 0},
|
||||
/* 2 */ { 2, s_2_2, -1, 1, 0},
|
||||
/* 3 */ { 3, s_2_3, 2, 2, 0},
|
||||
/* 4 */ { 3, s_2_4, 2, 2, 0},
|
||||
/* 5 */ { 1, s_2_5, -1, 1, 0},
|
||||
/* 6 */ { 2, s_2_6, 5, 1, 0},
|
||||
/* 7 */ { 3, s_2_7, 6, 2, 0}
|
||||
{ 2, s_2_0, -1, 1, 0},
|
||||
{ 2, s_2_1, -1, 1, 0},
|
||||
{ 2, s_2_2, -1, 1, 0},
|
||||
{ 3, s_2_3, 2, 2, 0},
|
||||
{ 3, s_2_4, 2, 2, 0},
|
||||
{ 1, s_2_5, -1, 1, 0},
|
||||
{ 2, s_2_6, 5, 1, 0},
|
||||
{ 3, s_2_7, 6, 2, 0}
|
||||
};
|
||||
|
||||
static const symbol s_3_0[2] = { 0xD3, 0xD1 };
|
||||
@ -137,8 +137,8 @@ static const symbol s_3_1[2] = { 0xD3, 0xD8 };
|
||||
|
||||
static const struct among a_3[2] =
|
||||
{
|
||||
/* 0 */ { 2, s_3_0, -1, 1, 0},
|
||||
/* 1 */ { 2, s_3_1, -1, 1, 0}
|
||||
{ 2, s_3_0, -1, 1, 0},
|
||||
{ 2, s_3_1, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_4_0[1] = { 0xC0 };
|
||||
@ -190,52 +190,52 @@ static const symbol s_4_45[3] = { 0xC5, 0xCE, 0xD9 };
|
||||
|
||||
static const struct among a_4[46] =
|
||||
{
|
||||
/* 0 */ { 1, s_4_0, -1, 2, 0},
|
||||
/* 1 */ { 2, s_4_1, 0, 2, 0},
|
||||
/* 2 */ { 2, s_4_2, -1, 1, 0},
|
||||
/* 3 */ { 3, s_4_3, 2, 2, 0},
|
||||
/* 4 */ { 3, s_4_4, 2, 2, 0},
|
||||
/* 5 */ { 2, s_4_5, -1, 1, 0},
|
||||
/* 6 */ { 3, s_4_6, 5, 2, 0},
|
||||
/* 7 */ { 3, s_4_7, -1, 1, 0},
|
||||
/* 8 */ { 3, s_4_8, -1, 2, 0},
|
||||
/* 9 */ { 3, s_4_9, -1, 1, 0},
|
||||
/* 10 */ { 4, s_4_10, 9, 2, 0},
|
||||
/* 11 */ { 4, s_4_11, 9, 2, 0},
|
||||
/* 12 */ { 2, s_4_12, -1, 1, 0},
|
||||
/* 13 */ { 3, s_4_13, 12, 2, 0},
|
||||
/* 14 */ { 3, s_4_14, 12, 2, 0},
|
||||
/* 15 */ { 1, s_4_15, -1, 1, 0},
|
||||
/* 16 */ { 2, s_4_16, 15, 2, 0},
|
||||
/* 17 */ { 2, s_4_17, 15, 2, 0},
|
||||
/* 18 */ { 1, s_4_18, -1, 1, 0},
|
||||
/* 19 */ { 2, s_4_19, 18, 2, 0},
|
||||
/* 20 */ { 2, s_4_20, 18, 2, 0},
|
||||
/* 21 */ { 2, s_4_21, -1, 1, 0},
|
||||
/* 22 */ { 2, s_4_22, -1, 2, 0},
|
||||
/* 23 */ { 2, s_4_23, -1, 2, 0},
|
||||
/* 24 */ { 1, s_4_24, -1, 1, 0},
|
||||
/* 25 */ { 2, s_4_25, 24, 2, 0},
|
||||
/* 26 */ { 2, s_4_26, -1, 1, 0},
|
||||
/* 27 */ { 3, s_4_27, 26, 2, 0},
|
||||
/* 28 */ { 3, s_4_28, 26, 2, 0},
|
||||
/* 29 */ { 2, s_4_29, -1, 1, 0},
|
||||
/* 30 */ { 3, s_4_30, 29, 2, 0},
|
||||
/* 31 */ { 3, s_4_31, 29, 1, 0},
|
||||
/* 32 */ { 2, s_4_32, -1, 1, 0},
|
||||
/* 33 */ { 3, s_4_33, 32, 2, 0},
|
||||
/* 34 */ { 2, s_4_34, -1, 1, 0},
|
||||
/* 35 */ { 3, s_4_35, 34, 2, 0},
|
||||
/* 36 */ { 2, s_4_36, -1, 2, 0},
|
||||
/* 37 */ { 2, s_4_37, -1, 2, 0},
|
||||
/* 38 */ { 2, s_4_38, -1, 2, 0},
|
||||
/* 39 */ { 2, s_4_39, -1, 1, 0},
|
||||
/* 40 */ { 3, s_4_40, 39, 2, 0},
|
||||
/* 41 */ { 3, s_4_41, 39, 2, 0},
|
||||
/* 42 */ { 3, s_4_42, -1, 1, 0},
|
||||
/* 43 */ { 3, s_4_43, -1, 2, 0},
|
||||
/* 44 */ { 2, s_4_44, -1, 1, 0},
|
||||
/* 45 */ { 3, s_4_45, 44, 2, 0}
|
||||
{ 1, s_4_0, -1, 2, 0},
|
||||
{ 2, s_4_1, 0, 2, 0},
|
||||
{ 2, s_4_2, -1, 1, 0},
|
||||
{ 3, s_4_3, 2, 2, 0},
|
||||
{ 3, s_4_4, 2, 2, 0},
|
||||
{ 2, s_4_5, -1, 1, 0},
|
||||
{ 3, s_4_6, 5, 2, 0},
|
||||
{ 3, s_4_7, -1, 1, 0},
|
||||
{ 3, s_4_8, -1, 2, 0},
|
||||
{ 3, s_4_9, -1, 1, 0},
|
||||
{ 4, s_4_10, 9, 2, 0},
|
||||
{ 4, s_4_11, 9, 2, 0},
|
||||
{ 2, s_4_12, -1, 1, 0},
|
||||
{ 3, s_4_13, 12, 2, 0},
|
||||
{ 3, s_4_14, 12, 2, 0},
|
||||
{ 1, s_4_15, -1, 1, 0},
|
||||
{ 2, s_4_16, 15, 2, 0},
|
||||
{ 2, s_4_17, 15, 2, 0},
|
||||
{ 1, s_4_18, -1, 1, 0},
|
||||
{ 2, s_4_19, 18, 2, 0},
|
||||
{ 2, s_4_20, 18, 2, 0},
|
||||
{ 2, s_4_21, -1, 1, 0},
|
||||
{ 2, s_4_22, -1, 2, 0},
|
||||
{ 2, s_4_23, -1, 2, 0},
|
||||
{ 1, s_4_24, -1, 1, 0},
|
||||
{ 2, s_4_25, 24, 2, 0},
|
||||
{ 2, s_4_26, -1, 1, 0},
|
||||
{ 3, s_4_27, 26, 2, 0},
|
||||
{ 3, s_4_28, 26, 2, 0},
|
||||
{ 2, s_4_29, -1, 1, 0},
|
||||
{ 3, s_4_30, 29, 2, 0},
|
||||
{ 3, s_4_31, 29, 1, 0},
|
||||
{ 2, s_4_32, -1, 1, 0},
|
||||
{ 3, s_4_33, 32, 2, 0},
|
||||
{ 2, s_4_34, -1, 1, 0},
|
||||
{ 3, s_4_35, 34, 2, 0},
|
||||
{ 2, s_4_36, -1, 2, 0},
|
||||
{ 2, s_4_37, -1, 2, 0},
|
||||
{ 2, s_4_38, -1, 2, 0},
|
||||
{ 2, s_4_39, -1, 1, 0},
|
||||
{ 3, s_4_40, 39, 2, 0},
|
||||
{ 3, s_4_41, 39, 2, 0},
|
||||
{ 3, s_4_42, -1, 1, 0},
|
||||
{ 3, s_4_43, -1, 2, 0},
|
||||
{ 2, s_4_44, -1, 1, 0},
|
||||
{ 3, s_4_45, 44, 2, 0}
|
||||
};
|
||||
|
||||
static const symbol s_5_0[1] = { 0xC0 };
|
||||
@ -277,42 +277,42 @@ static const symbol s_5_35[1] = { 0xD9 };
|
||||
|
||||
static const struct among a_5[36] =
|
||||
{
|
||||
/* 0 */ { 1, s_5_0, -1, 1, 0},
|
||||
/* 1 */ { 2, s_5_1, 0, 1, 0},
|
||||
/* 2 */ { 2, s_5_2, 0, 1, 0},
|
||||
/* 3 */ { 1, s_5_3, -1, 1, 0},
|
||||
/* 4 */ { 1, s_5_4, -1, 1, 0},
|
||||
/* 5 */ { 2, s_5_5, 4, 1, 0},
|
||||
/* 6 */ { 2, s_5_6, 4, 1, 0},
|
||||
/* 7 */ { 2, s_5_7, -1, 1, 0},
|
||||
/* 8 */ { 2, s_5_8, -1, 1, 0},
|
||||
/* 9 */ { 3, s_5_9, 8, 1, 0},
|
||||
/* 10 */ { 1, s_5_10, -1, 1, 0},
|
||||
/* 11 */ { 2, s_5_11, 10, 1, 0},
|
||||
/* 12 */ { 2, s_5_12, 10, 1, 0},
|
||||
/* 13 */ { 3, s_5_13, 10, 1, 0},
|
||||
/* 14 */ { 3, s_5_14, 10, 1, 0},
|
||||
/* 15 */ { 4, s_5_15, 14, 1, 0},
|
||||
/* 16 */ { 1, s_5_16, -1, 1, 0},
|
||||
/* 17 */ { 2, s_5_17, 16, 1, 0},
|
||||
/* 18 */ { 3, s_5_18, 17, 1, 0},
|
||||
/* 19 */ { 2, s_5_19, 16, 1, 0},
|
||||
/* 20 */ { 2, s_5_20, 16, 1, 0},
|
||||
/* 21 */ { 2, s_5_21, -1, 1, 0},
|
||||
/* 22 */ { 2, s_5_22, -1, 1, 0},
|
||||
/* 23 */ { 3, s_5_23, 22, 1, 0},
|
||||
/* 24 */ { 2, s_5_24, -1, 1, 0},
|
||||
/* 25 */ { 2, s_5_25, -1, 1, 0},
|
||||
/* 26 */ { 3, s_5_26, 25, 1, 0},
|
||||
/* 27 */ { 1, s_5_27, -1, 1, 0},
|
||||
/* 28 */ { 1, s_5_28, -1, 1, 0},
|
||||
/* 29 */ { 2, s_5_29, 28, 1, 0},
|
||||
/* 30 */ { 2, s_5_30, 28, 1, 0},
|
||||
/* 31 */ { 1, s_5_31, -1, 1, 0},
|
||||
/* 32 */ { 2, s_5_32, -1, 1, 0},
|
||||
/* 33 */ { 2, s_5_33, -1, 1, 0},
|
||||
/* 34 */ { 1, s_5_34, -1, 1, 0},
|
||||
/* 35 */ { 1, s_5_35, -1, 1, 0}
|
||||
{ 1, s_5_0, -1, 1, 0},
|
||||
{ 2, s_5_1, 0, 1, 0},
|
||||
{ 2, s_5_2, 0, 1, 0},
|
||||
{ 1, s_5_3, -1, 1, 0},
|
||||
{ 1, s_5_4, -1, 1, 0},
|
||||
{ 2, s_5_5, 4, 1, 0},
|
||||
{ 2, s_5_6, 4, 1, 0},
|
||||
{ 2, s_5_7, -1, 1, 0},
|
||||
{ 2, s_5_8, -1, 1, 0},
|
||||
{ 3, s_5_9, 8, 1, 0},
|
||||
{ 1, s_5_10, -1, 1, 0},
|
||||
{ 2, s_5_11, 10, 1, 0},
|
||||
{ 2, s_5_12, 10, 1, 0},
|
||||
{ 3, s_5_13, 10, 1, 0},
|
||||
{ 3, s_5_14, 10, 1, 0},
|
||||
{ 4, s_5_15, 14, 1, 0},
|
||||
{ 1, s_5_16, -1, 1, 0},
|
||||
{ 2, s_5_17, 16, 1, 0},
|
||||
{ 3, s_5_18, 17, 1, 0},
|
||||
{ 2, s_5_19, 16, 1, 0},
|
||||
{ 2, s_5_20, 16, 1, 0},
|
||||
{ 2, s_5_21, -1, 1, 0},
|
||||
{ 2, s_5_22, -1, 1, 0},
|
||||
{ 3, s_5_23, 22, 1, 0},
|
||||
{ 2, s_5_24, -1, 1, 0},
|
||||
{ 2, s_5_25, -1, 1, 0},
|
||||
{ 3, s_5_26, 25, 1, 0},
|
||||
{ 1, s_5_27, -1, 1, 0},
|
||||
{ 1, s_5_28, -1, 1, 0},
|
||||
{ 2, s_5_29, 28, 1, 0},
|
||||
{ 2, s_5_30, 28, 1, 0},
|
||||
{ 1, s_5_31, -1, 1, 0},
|
||||
{ 2, s_5_32, -1, 1, 0},
|
||||
{ 2, s_5_33, -1, 1, 0},
|
||||
{ 1, s_5_34, -1, 1, 0},
|
||||
{ 1, s_5_35, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_6_0[3] = { 0xCF, 0xD3, 0xD4 };
|
||||
@ -320,8 +320,8 @@ static const symbol s_6_1[4] = { 0xCF, 0xD3, 0xD4, 0xD8 };
|
||||
|
||||
static const struct among a_6[2] =
|
||||
{
|
||||
/* 0 */ { 3, s_6_0, -1, 1, 0},
|
||||
/* 1 */ { 4, s_6_1, -1, 1, 0}
|
||||
{ 3, s_6_0, -1, 1, 0},
|
||||
{ 4, s_6_1, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_7_0[4] = { 0xC5, 0xCA, 0xDB, 0xC5 };
|
||||
@ -331,78 +331,78 @@ static const symbol s_7_3[3] = { 0xC5, 0xCA, 0xDB };
|
||||
|
||||
static const struct among a_7[4] =
|
||||
{
|
||||
/* 0 */ { 4, s_7_0, -1, 1, 0},
|
||||
/* 1 */ { 1, s_7_1, -1, 2, 0},
|
||||
/* 2 */ { 1, s_7_2, -1, 3, 0},
|
||||
/* 3 */ { 3, s_7_3, -1, 1, 0}
|
||||
{ 4, s_7_0, -1, 1, 0},
|
||||
{ 1, s_7_1, -1, 2, 0},
|
||||
{ 1, s_7_2, -1, 3, 0},
|
||||
{ 3, s_7_3, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const unsigned char g_v[] = { 35, 130, 34, 18 };
|
||||
|
||||
static const symbol s_0[] = { 0xC5 };
|
||||
|
||||
static int r_mark_regions(struct SN_env * z) { /* forwardmode */
|
||||
z->I[0] = z->l; /* $pV = <integer expression>, line 61 */
|
||||
z->I[1] = z->l; /* $p2 = <integer expression>, line 62 */
|
||||
{ int c1 = z->c; /* do, line 63 */
|
||||
{ /* gopast */ /* grouping v, line 64 */
|
||||
static int r_mark_regions(struct SN_env * z) {
|
||||
z->I[1] = z->l;
|
||||
z->I[0] = z->l;
|
||||
{ int c1 = z->c;
|
||||
{
|
||||
int ret = out_grouping(z, g_v, 192, 220, 1);
|
||||
if (ret < 0) goto lab0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[0] = z->c; /* setmark pV, line 64 */
|
||||
{ /* gopast */ /* non v, line 64 */
|
||||
z->I[1] = z->c;
|
||||
{
|
||||
int ret = in_grouping(z, g_v, 192, 220, 1);
|
||||
if (ret < 0) goto lab0;
|
||||
z->c += ret;
|
||||
}
|
||||
{ /* gopast */ /* grouping v, line 65 */
|
||||
{
|
||||
int ret = out_grouping(z, g_v, 192, 220, 1);
|
||||
if (ret < 0) goto lab0;
|
||||
z->c += ret;
|
||||
}
|
||||
{ /* gopast */ /* non v, line 65 */
|
||||
{
|
||||
int ret = in_grouping(z, g_v, 192, 220, 1);
|
||||
if (ret < 0) goto lab0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[1] = z->c; /* setmark p2, line 65 */
|
||||
z->I[0] = z->c;
|
||||
lab0:
|
||||
z->c = c1;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_R2(struct SN_env * z) { /* backwardmode */
|
||||
if (!(z->I[1] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 71 */
|
||||
static int r_R2(struct SN_env * z) {
|
||||
if (!(z->I[0] <= z->c)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_perfective_gerund(struct SN_env * z) { /* backwardmode */
|
||||
static int r_perfective_gerund(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 74 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 6 || !((25166336 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 74 */
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 6 || !((25166336 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
|
||||
among_var = find_among_b(z, a_0, 9);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 74 */
|
||||
switch (among_var) { /* among, line 74 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int m1 = z->l - z->c; (void)m1; /* or, line 78 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 0xC1) goto lab1; /* literal, line 78 */
|
||||
{ int m1 = z->l - z->c; (void)m1;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 0xC1) goto lab1;
|
||||
z->c--;
|
||||
goto lab0;
|
||||
lab1:
|
||||
z->c = z->l - m1;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 0xD1) return 0; /* literal, line 78 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 0xD1) return 0;
|
||||
z->c--;
|
||||
}
|
||||
lab0:
|
||||
{ int ret = slice_del(z); /* delete, line 78 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_del(z); /* delete, line 85 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -410,46 +410,46 @@ static int r_perfective_gerund(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_adjective(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 90 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 6 || !((2271009 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 90 */
|
||||
static int r_adjective(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 6 || !((2271009 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
|
||||
if (!(find_among_b(z, a_1, 26))) return 0;
|
||||
z->bra = z->c; /* ], line 90 */
|
||||
{ int ret = slice_del(z); /* delete, line 99 */
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_adjectival(struct SN_env * z) { /* backwardmode */
|
||||
static int r_adjectival(struct SN_env * z) {
|
||||
int among_var;
|
||||
{ int ret = r_adjective(z); /* call adjective, line 104 */
|
||||
{ int ret = r_adjective(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int m1 = z->l - z->c; (void)m1; /* try, line 111 */
|
||||
z->ket = z->c; /* [, line 112 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 6 || !((671113216 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->c = z->l - m1; goto lab0; } /* substring, line 112 */
|
||||
{ int m1 = z->l - z->c; (void)m1;
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 6 || !((671113216 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->c = z->l - m1; goto lab0; }
|
||||
among_var = find_among_b(z, a_2, 8);
|
||||
if (!(among_var)) { z->c = z->l - m1; goto lab0; }
|
||||
z->bra = z->c; /* ], line 112 */
|
||||
switch (among_var) { /* among, line 112 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int m2 = z->l - z->c; (void)m2; /* or, line 117 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 0xC1) goto lab2; /* literal, line 117 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 0xC1) goto lab2;
|
||||
z->c--;
|
||||
goto lab1;
|
||||
lab2:
|
||||
z->c = z->l - m2;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 0xD1) { z->c = z->l - m1; goto lab0; } /* literal, line 117 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 0xD1) { z->c = z->l - m1; goto lab0; }
|
||||
z->c--;
|
||||
}
|
||||
lab1:
|
||||
{ int ret = slice_del(z); /* delete, line 117 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_del(z); /* delete, line 124 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -460,42 +460,42 @@ static int r_adjectival(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_reflexive(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 131 */
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 209 && z->p[z->c - 1] != 216)) return 0; /* substring, line 131 */
|
||||
static int r_reflexive(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 209 && z->p[z->c - 1] != 216)) return 0;
|
||||
if (!(find_among_b(z, a_3, 2))) return 0;
|
||||
z->bra = z->c; /* ], line 131 */
|
||||
{ int ret = slice_del(z); /* delete, line 134 */
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_verb(struct SN_env * z) { /* backwardmode */
|
||||
static int r_verb(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 139 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 6 || !((51443235 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 139 */
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 6 || !((51443235 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
|
||||
among_var = find_among_b(z, a_4, 46);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 139 */
|
||||
switch (among_var) { /* among, line 139 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int m1 = z->l - z->c; (void)m1; /* or, line 145 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 0xC1) goto lab1; /* literal, line 145 */
|
||||
{ int m1 = z->l - z->c; (void)m1;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 0xC1) goto lab1;
|
||||
z->c--;
|
||||
goto lab0;
|
||||
lab1:
|
||||
z->c = z->l - m1;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 0xD1) return 0; /* literal, line 145 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 0xD1) return 0;
|
||||
z->c--;
|
||||
}
|
||||
lab0:
|
||||
{ int ret = slice_del(z); /* delete, line 145 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_del(z); /* delete, line 153 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -503,62 +503,62 @@ static int r_verb(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_noun(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 162 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 6 || !((60991267 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 162 */
|
||||
static int r_noun(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 6 || !((60991267 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
|
||||
if (!(find_among_b(z, a_5, 36))) return 0;
|
||||
z->bra = z->c; /* ], line 162 */
|
||||
{ int ret = slice_del(z); /* delete, line 169 */
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_derivational(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 178 */
|
||||
if (z->c - 2 <= z->lb || (z->p[z->c - 1] != 212 && z->p[z->c - 1] != 216)) return 0; /* substring, line 178 */
|
||||
static int r_derivational(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (z->c - 2 <= z->lb || (z->p[z->c - 1] != 212 && z->p[z->c - 1] != 216)) return 0;
|
||||
if (!(find_among_b(z, a_6, 2))) return 0;
|
||||
z->bra = z->c; /* ], line 178 */
|
||||
{ int ret = r_R2(z); /* call R2, line 178 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R2(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 181 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_tidy_up(struct SN_env * z) { /* backwardmode */
|
||||
static int r_tidy_up(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 186 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 6 || !((151011360 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 186 */
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 6 || !((151011360 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
|
||||
among_var = find_among_b(z, a_7, 4);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 186 */
|
||||
switch (among_var) { /* among, line 186 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 190 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->ket = z->c; /* [, line 191 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 0xCE) return 0; /* literal, line 191 */
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 0xCE) return 0;
|
||||
z->c--;
|
||||
z->bra = z->c; /* ], line 191 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 0xCE) return 0; /* literal, line 191 */
|
||||
z->bra = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 0xCE) return 0;
|
||||
z->c--;
|
||||
{ int ret = slice_del(z); /* delete, line 191 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 0xCE) return 0; /* literal, line 194 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 0xCE) return 0;
|
||||
z->c--;
|
||||
{ int ret = slice_del(z); /* delete, line 194 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_del(z); /* delete, line 196 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -566,25 +566,24 @@ static int r_tidy_up(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern int russian_KOI8_R_stem(struct SN_env * z) { /* forwardmode */
|
||||
{ int c1 = z->c; /* do, line 205 */
|
||||
/* repeat, line 205 */
|
||||
|
||||
while(1) { int c2 = z->c;
|
||||
while(1) { /* goto, line 205 */
|
||||
extern int russian_KOI8_R_stem(struct SN_env * z) {
|
||||
{ int c1 = z->c;
|
||||
while(1) {
|
||||
int c2 = z->c;
|
||||
while(1) {
|
||||
int c3 = z->c;
|
||||
z->bra = z->c; /* [, line 205 */
|
||||
if (z->c == z->l || z->p[z->c] != 0xA3) goto lab2; /* literal, line 205 */
|
||||
z->bra = z->c;
|
||||
if (z->c == z->l || z->p[z->c] != 0xA3) goto lab2;
|
||||
z->c++;
|
||||
z->ket = z->c; /* ], line 205 */
|
||||
z->ket = z->c;
|
||||
z->c = c3;
|
||||
break;
|
||||
lab2:
|
||||
z->c = c3;
|
||||
if (z->c >= z->l) goto lab1;
|
||||
z->c++; /* goto, line 205 */
|
||||
z->c++;
|
||||
}
|
||||
{ int ret = slice_from_s(z, 1, s_0); /* <-, line 205 */
|
||||
{ int ret = slice_from_s(z, 1, s_0);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
continue;
|
||||
@ -594,49 +593,49 @@ extern int russian_KOI8_R_stem(struct SN_env * z) { /* forwardmode */
|
||||
}
|
||||
z->c = c1;
|
||||
}
|
||||
/* do, line 207 */
|
||||
{ int ret = r_mark_regions(z); /* call mark_regions, line 207 */
|
||||
|
||||
{ int ret = r_mark_regions(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 208 */
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
|
||||
{ int mlimit4; /* setlimit, line 208 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit4 = z->lb; z->lb = z->I[0];
|
||||
{ int m5 = z->l - z->c; (void)m5; /* do, line 209 */
|
||||
{ int m6 = z->l - z->c; (void)m6; /* or, line 210 */
|
||||
{ int ret = r_perfective_gerund(z); /* call perfective_gerund, line 210 */
|
||||
{ int mlimit4;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit4 = z->lb; z->lb = z->I[1];
|
||||
{ int m5 = z->l - z->c; (void)m5;
|
||||
{ int m6 = z->l - z->c; (void)m6;
|
||||
{ int ret = r_perfective_gerund(z);
|
||||
if (ret == 0) goto lab5;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
goto lab4;
|
||||
lab5:
|
||||
z->c = z->l - m6;
|
||||
{ int m7 = z->l - z->c; (void)m7; /* try, line 211 */
|
||||
{ int ret = r_reflexive(z); /* call reflexive, line 211 */
|
||||
{ int m7 = z->l - z->c; (void)m7;
|
||||
{ int ret = r_reflexive(z);
|
||||
if (ret == 0) { z->c = z->l - m7; goto lab6; }
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
lab6:
|
||||
;
|
||||
}
|
||||
{ int m8 = z->l - z->c; (void)m8; /* or, line 212 */
|
||||
{ int ret = r_adjectival(z); /* call adjectival, line 212 */
|
||||
{ int m8 = z->l - z->c; (void)m8;
|
||||
{ int ret = r_adjectival(z);
|
||||
if (ret == 0) goto lab8;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
goto lab7;
|
||||
lab8:
|
||||
z->c = z->l - m8;
|
||||
{ int ret = r_verb(z); /* call verb, line 212 */
|
||||
{ int ret = r_verb(z);
|
||||
if (ret == 0) goto lab9;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
goto lab7;
|
||||
lab9:
|
||||
z->c = z->l - m8;
|
||||
{ int ret = r_noun(z); /* call noun, line 212 */
|
||||
{ int ret = r_noun(z);
|
||||
if (ret == 0) goto lab3;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
@ -648,25 +647,25 @@ extern int russian_KOI8_R_stem(struct SN_env * z) { /* forwardmode */
|
||||
lab3:
|
||||
z->c = z->l - m5;
|
||||
}
|
||||
{ int m9 = z->l - z->c; (void)m9; /* try, line 215 */
|
||||
z->ket = z->c; /* [, line 215 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 0xC9) { z->c = z->l - m9; goto lab10; } /* literal, line 215 */
|
||||
{ int m9 = z->l - z->c; (void)m9;
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 0xC9) { z->c = z->l - m9; goto lab10; }
|
||||
z->c--;
|
||||
z->bra = z->c; /* ], line 215 */
|
||||
{ int ret = slice_del(z); /* delete, line 215 */
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
lab10:
|
||||
;
|
||||
}
|
||||
{ int m10 = z->l - z->c; (void)m10; /* do, line 218 */
|
||||
{ int ret = r_derivational(z); /* call derivational, line 218 */
|
||||
{ int m10 = z->l - z->c; (void)m10;
|
||||
{ int ret = r_derivational(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m10;
|
||||
}
|
||||
{ int m11 = z->l - z->c; (void)m11; /* do, line 219 */
|
||||
{ int ret = r_tidy_up(z); /* call tidy_up, line 219 */
|
||||
{ int m11 = z->l - z->c; (void)m11;
|
||||
{ int ret = r_tidy_up(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m11;
|
||||
@ -677,7 +676,7 @@ extern int russian_KOI8_R_stem(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern struct SN_env * russian_KOI8_R_create_env(void) { return SN_create_env(0, 2, 0); }
|
||||
extern struct SN_env * russian_KOI8_R_create_env(void) { return SN_create_env(0, 2); }
|
||||
|
||||
extern void russian_KOI8_R_close_env(struct SN_env * z) { SN_close_env(z, 0); }
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
559
src/backend/snowball/libstemmer/stem_UTF_8_armenian.c
Normal file
559
src/backend/snowball/libstemmer/stem_UTF_8_armenian.c
Normal file
@ -0,0 +1,559 @@
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#include "header.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
extern int armenian_UTF_8_stem(struct SN_env * z);
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
static int r_ending(struct SN_env * z);
|
||||
static int r_noun(struct SN_env * z);
|
||||
static int r_verb(struct SN_env * z);
|
||||
static int r_adjective(struct SN_env * z);
|
||||
static int r_R2(struct SN_env * z);
|
||||
static int r_mark_regions(struct SN_env * z);
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
extern struct SN_env * armenian_UTF_8_create_env(void);
|
||||
extern void armenian_UTF_8_close_env(struct SN_env * z);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
static const symbol s_0_0[6] = { 0xD5, 0xA2, 0xD5, 0xA1, 0xD6, 0x80 };
|
||||
static const symbol s_0_1[8] = { 0xD6, 0x80, 0xD5, 0xB8, 0xD6, 0x80, 0xD5, 0xA4 };
|
||||
static const symbol s_0_2[10] = { 0xD5, 0xA5, 0xD6, 0x80, 0xD5, 0xB8, 0xD6, 0x80, 0xD5, 0xA4 };
|
||||
static const symbol s_0_3[6] = { 0xD5, 0xA1, 0xD5, 0xAC, 0xD5, 0xAB };
|
||||
static const symbol s_0_4[6] = { 0xD5, 0xA1, 0xD5, 0xAF, 0xD5, 0xAB };
|
||||
static const symbol s_0_5[8] = { 0xD5, 0xB8, 0xD6, 0x80, 0xD5, 0xA1, 0xD5, 0xAF };
|
||||
static const symbol s_0_6[4] = { 0xD5, 0xA5, 0xD5, 0xB2 };
|
||||
static const symbol s_0_7[8] = { 0xD5, 0xBE, 0xD5, 0xB8, 0xD6, 0x82, 0xD5, 0xB6 };
|
||||
static const symbol s_0_8[8] = { 0xD5, 0xA1, 0xD6, 0x80, 0xD5, 0xA1, 0xD5, 0xB6 };
|
||||
static const symbol s_0_9[8] = { 0xD5, 0xA1, 0xD5, 0xAF, 0xD5, 0xA1, 0xD5, 0xB6 };
|
||||
static const symbol s_0_10[4] = { 0xD5, 0xA5, 0xD5, 0xB6 };
|
||||
static const symbol s_0_11[8] = { 0xD5, 0xA5, 0xD6, 0x80, 0xD5, 0xA5, 0xD5, 0xB6 };
|
||||
static const symbol s_0_12[8] = { 0xD5, 0xA5, 0xD5, 0xAF, 0xD5, 0xA5, 0xD5, 0xB6 };
|
||||
static const symbol s_0_13[8] = { 0xD5, 0xB8, 0xD6, 0x80, 0xD5, 0xA7, 0xD5, 0xB6 };
|
||||
static const symbol s_0_14[4] = { 0xD5, 0xAB, 0xD5, 0xB6 };
|
||||
static const symbol s_0_15[6] = { 0xD5, 0xA3, 0xD5, 0xAB, 0xD5, 0xB6 };
|
||||
static const symbol s_0_16[8] = { 0xD5, 0xB8, 0xD5, 0xBE, 0xD5, 0xAB, 0xD5, 0xB6 };
|
||||
static const symbol s_0_17[8] = { 0xD5, 0xAC, 0xD5, 0xA1, 0xD5, 0xB5, 0xD5, 0xB6 };
|
||||
static const symbol s_0_18[6] = { 0xD5, 0xBA, 0xD5, 0xA5, 0xD5, 0xBD };
|
||||
static const symbol s_0_19[4] = { 0xD5, 0xAB, 0xD5, 0xBE };
|
||||
static const symbol s_0_20[4] = { 0xD5, 0xA1, 0xD5, 0xBF };
|
||||
static const symbol s_0_21[8] = { 0xD5, 0xA1, 0xD5, 0xBE, 0xD5, 0xA5, 0xD5, 0xBF };
|
||||
static const symbol s_0_22[6] = { 0xD5, 0xAF, 0xD5, 0xB8, 0xD5, 0xBF };
|
||||
|
||||
static const struct among a_0[23] =
|
||||
{
|
||||
{ 6, s_0_0, -1, 1, 0},
|
||||
{ 8, s_0_1, -1, 1, 0},
|
||||
{ 10, s_0_2, 1, 1, 0},
|
||||
{ 6, s_0_3, -1, 1, 0},
|
||||
{ 6, s_0_4, -1, 1, 0},
|
||||
{ 8, s_0_5, -1, 1, 0},
|
||||
{ 4, s_0_6, -1, 1, 0},
|
||||
{ 8, s_0_7, -1, 1, 0},
|
||||
{ 8, s_0_8, -1, 1, 0},
|
||||
{ 8, s_0_9, -1, 1, 0},
|
||||
{ 4, s_0_10, -1, 1, 0},
|
||||
{ 8, s_0_11, 10, 1, 0},
|
||||
{ 8, s_0_12, 10, 1, 0},
|
||||
{ 8, s_0_13, -1, 1, 0},
|
||||
{ 4, s_0_14, -1, 1, 0},
|
||||
{ 6, s_0_15, 14, 1, 0},
|
||||
{ 8, s_0_16, 14, 1, 0},
|
||||
{ 8, s_0_17, -1, 1, 0},
|
||||
{ 6, s_0_18, -1, 1, 0},
|
||||
{ 4, s_0_19, -1, 1, 0},
|
||||
{ 4, s_0_20, -1, 1, 0},
|
||||
{ 8, s_0_21, -1, 1, 0},
|
||||
{ 6, s_0_22, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_1_0[4] = { 0xD5, 0xA1, 0xD6, 0x80 };
|
||||
static const symbol s_1_1[8] = { 0xD5, 0xA1, 0xD6, 0x81, 0xD5, 0xA1, 0xD6, 0x80 };
|
||||
static const symbol s_1_2[8] = { 0xD5, 0xA5, 0xD6, 0x81, 0xD5, 0xA1, 0xD6, 0x80 };
|
||||
static const symbol s_1_3[10] = { 0xD5, 0xA1, 0xD6, 0x81, 0xD6, 0x80, 0xD5, 0xAB, 0xD6, 0x80 };
|
||||
static const symbol s_1_4[8] = { 0xD5, 0xA1, 0xD6, 0x81, 0xD5, 0xAB, 0xD6, 0x80 };
|
||||
static const symbol s_1_5[8] = { 0xD5, 0xA5, 0xD6, 0x81, 0xD5, 0xAB, 0xD6, 0x80 };
|
||||
static const symbol s_1_6[10] = { 0xD5, 0xBE, 0xD5, 0xA5, 0xD6, 0x81, 0xD5, 0xAB, 0xD6, 0x80 };
|
||||
static const symbol s_1_7[10] = { 0xD5, 0xA1, 0xD5, 0xAC, 0xD5, 0xB8, 0xD6, 0x82, 0xD6, 0x81 };
|
||||
static const symbol s_1_8[10] = { 0xD5, 0xA5, 0xD5, 0xAC, 0xD5, 0xB8, 0xD6, 0x82, 0xD6, 0x81 };
|
||||
static const symbol s_1_9[4] = { 0xD5, 0xA1, 0xD6, 0x81 };
|
||||
static const symbol s_1_10[4] = { 0xD5, 0xA5, 0xD6, 0x81 };
|
||||
static const symbol s_1_11[10] = { 0xD5, 0xA1, 0xD6, 0x81, 0xD6, 0x80, 0xD5, 0xA5, 0xD6, 0x81 };
|
||||
static const symbol s_1_12[8] = { 0xD5, 0xA1, 0xD5, 0xAC, 0xD5, 0xB8, 0xD6, 0x82 };
|
||||
static const symbol s_1_13[8] = { 0xD5, 0xA5, 0xD5, 0xAC, 0xD5, 0xB8, 0xD6, 0x82 };
|
||||
static const symbol s_1_14[4] = { 0xD5, 0xA1, 0xD6, 0x84 };
|
||||
static const symbol s_1_15[6] = { 0xD6, 0x81, 0xD5, 0xA1, 0xD6, 0x84 };
|
||||
static const symbol s_1_16[8] = { 0xD5, 0xA1, 0xD6, 0x81, 0xD5, 0xA1, 0xD6, 0x84 };
|
||||
static const symbol s_1_17[10] = { 0xD5, 0xA1, 0xD6, 0x81, 0xD6, 0x80, 0xD5, 0xAB, 0xD6, 0x84 };
|
||||
static const symbol s_1_18[8] = { 0xD5, 0xA1, 0xD6, 0x81, 0xD5, 0xAB, 0xD6, 0x84 };
|
||||
static const symbol s_1_19[8] = { 0xD5, 0xA5, 0xD6, 0x81, 0xD5, 0xAB, 0xD6, 0x84 };
|
||||
static const symbol s_1_20[10] = { 0xD5, 0xBE, 0xD5, 0xA5, 0xD6, 0x81, 0xD5, 0xAB, 0xD6, 0x84 };
|
||||
static const symbol s_1_21[6] = { 0xD5, 0xA1, 0xD5, 0xB6, 0xD6, 0x84 };
|
||||
static const symbol s_1_22[8] = { 0xD6, 0x81, 0xD5, 0xA1, 0xD5, 0xB6, 0xD6, 0x84 };
|
||||
static const symbol s_1_23[10] = { 0xD5, 0xA1, 0xD6, 0x81, 0xD5, 0xA1, 0xD5, 0xB6, 0xD6, 0x84 };
|
||||
static const symbol s_1_24[12] = { 0xD5, 0xA1, 0xD6, 0x81, 0xD6, 0x80, 0xD5, 0xAB, 0xD5, 0xB6, 0xD6, 0x84 };
|
||||
static const symbol s_1_25[10] = { 0xD5, 0xA1, 0xD6, 0x81, 0xD5, 0xAB, 0xD5, 0xB6, 0xD6, 0x84 };
|
||||
static const symbol s_1_26[10] = { 0xD5, 0xA5, 0xD6, 0x81, 0xD5, 0xAB, 0xD5, 0xB6, 0xD6, 0x84 };
|
||||
static const symbol s_1_27[12] = { 0xD5, 0xBE, 0xD5, 0xA5, 0xD6, 0x81, 0xD5, 0xAB, 0xD5, 0xB6, 0xD6, 0x84 };
|
||||
static const symbol s_1_28[2] = { 0xD5, 0xA1 };
|
||||
static const symbol s_1_29[6] = { 0xD5, 0xA1, 0xD6, 0x81, 0xD5, 0xA1 };
|
||||
static const symbol s_1_30[6] = { 0xD5, 0xA5, 0xD6, 0x81, 0xD5, 0xA1 };
|
||||
static const symbol s_1_31[4] = { 0xD5, 0xBE, 0xD5, 0xA5 };
|
||||
static const symbol s_1_32[8] = { 0xD5, 0xA1, 0xD6, 0x81, 0xD6, 0x80, 0xD5, 0xAB };
|
||||
static const symbol s_1_33[6] = { 0xD5, 0xA1, 0xD6, 0x81, 0xD5, 0xAB };
|
||||
static const symbol s_1_34[6] = { 0xD5, 0xA5, 0xD6, 0x81, 0xD5, 0xAB };
|
||||
static const symbol s_1_35[8] = { 0xD5, 0xBE, 0xD5, 0xA5, 0xD6, 0x81, 0xD5, 0xAB };
|
||||
static const symbol s_1_36[4] = { 0xD5, 0xA1, 0xD5, 0xAC };
|
||||
static const symbol s_1_37[6] = { 0xD5, 0xA8, 0xD5, 0xA1, 0xD5, 0xAC };
|
||||
static const symbol s_1_38[10] = { 0xD5, 0xA1, 0xD6, 0x81, 0xD5, 0xB6, 0xD5, 0xA1, 0xD5, 0xAC };
|
||||
static const symbol s_1_39[8] = { 0xD5, 0xA1, 0xD5, 0xB6, 0xD5, 0xA1, 0xD5, 0xAC };
|
||||
static const symbol s_1_40[8] = { 0xD5, 0xA5, 0xD5, 0xB6, 0xD5, 0xA1, 0xD5, 0xAC };
|
||||
static const symbol s_1_41[4] = { 0xD5, 0xA5, 0xD5, 0xAC };
|
||||
static const symbol s_1_42[6] = { 0xD5, 0xA8, 0xD5, 0xA5, 0xD5, 0xAC };
|
||||
static const symbol s_1_43[6] = { 0xD5, 0xB6, 0xD5, 0xA5, 0xD5, 0xAC };
|
||||
static const symbol s_1_44[8] = { 0xD6, 0x81, 0xD5, 0xB6, 0xD5, 0xA5, 0xD5, 0xAC };
|
||||
static const symbol s_1_45[10] = { 0xD5, 0xA5, 0xD6, 0x81, 0xD5, 0xB6, 0xD5, 0xA5, 0xD5, 0xAC };
|
||||
static const symbol s_1_46[6] = { 0xD5, 0xB9, 0xD5, 0xA5, 0xD5, 0xAC };
|
||||
static const symbol s_1_47[6] = { 0xD5, 0xBE, 0xD5, 0xA5, 0xD5, 0xAC };
|
||||
static const symbol s_1_48[10] = { 0xD5, 0xA1, 0xD6, 0x81, 0xD5, 0xBE, 0xD5, 0xA5, 0xD5, 0xAC };
|
||||
static const symbol s_1_49[10] = { 0xD5, 0xA5, 0xD6, 0x81, 0xD5, 0xBE, 0xD5, 0xA5, 0xD5, 0xAC };
|
||||
static const symbol s_1_50[6] = { 0xD5, 0xBF, 0xD5, 0xA5, 0xD5, 0xAC };
|
||||
static const symbol s_1_51[8] = { 0xD5, 0xA1, 0xD5, 0xBF, 0xD5, 0xA5, 0xD5, 0xAC };
|
||||
static const symbol s_1_52[8] = { 0xD5, 0xB8, 0xD5, 0xBF, 0xD5, 0xA5, 0xD5, 0xAC };
|
||||
static const symbol s_1_53[10] = { 0xD5, 0xAF, 0xD5, 0xB8, 0xD5, 0xBF, 0xD5, 0xA5, 0xD5, 0xAC };
|
||||
static const symbol s_1_54[6] = { 0xD5, 0xBE, 0xD5, 0xA1, 0xD5, 0xAE };
|
||||
static const symbol s_1_55[6] = { 0xD5, 0xB8, 0xD6, 0x82, 0xD5, 0xB4 };
|
||||
static const symbol s_1_56[8] = { 0xD5, 0xBE, 0xD5, 0xB8, 0xD6, 0x82, 0xD5, 0xB4 };
|
||||
static const symbol s_1_57[4] = { 0xD5, 0xA1, 0xD5, 0xB6 };
|
||||
static const symbol s_1_58[6] = { 0xD6, 0x81, 0xD5, 0xA1, 0xD5, 0xB6 };
|
||||
static const symbol s_1_59[8] = { 0xD5, 0xA1, 0xD6, 0x81, 0xD5, 0xA1, 0xD5, 0xB6 };
|
||||
static const symbol s_1_60[10] = { 0xD5, 0xA1, 0xD6, 0x81, 0xD6, 0x80, 0xD5, 0xAB, 0xD5, 0xB6 };
|
||||
static const symbol s_1_61[8] = { 0xD5, 0xA1, 0xD6, 0x81, 0xD5, 0xAB, 0xD5, 0xB6 };
|
||||
static const symbol s_1_62[8] = { 0xD5, 0xA5, 0xD6, 0x81, 0xD5, 0xAB, 0xD5, 0xB6 };
|
||||
static const symbol s_1_63[10] = { 0xD5, 0xBE, 0xD5, 0xA5, 0xD6, 0x81, 0xD5, 0xAB, 0xD5, 0xB6 };
|
||||
static const symbol s_1_64[8] = { 0xD5, 0xA1, 0xD5, 0xAC, 0xD5, 0xAB, 0xD5, 0xBD };
|
||||
static const symbol s_1_65[8] = { 0xD5, 0xA5, 0xD5, 0xAC, 0xD5, 0xAB, 0xD5, 0xBD };
|
||||
static const symbol s_1_66[4] = { 0xD5, 0xA1, 0xD5, 0xBE };
|
||||
static const symbol s_1_67[8] = { 0xD5, 0xA1, 0xD6, 0x81, 0xD5, 0xA1, 0xD5, 0xBE };
|
||||
static const symbol s_1_68[8] = { 0xD5, 0xA5, 0xD6, 0x81, 0xD5, 0xA1, 0xD5, 0xBE };
|
||||
static const symbol s_1_69[8] = { 0xD5, 0xA1, 0xD5, 0xAC, 0xD5, 0xB8, 0xD5, 0xBE };
|
||||
static const symbol s_1_70[8] = { 0xD5, 0xA5, 0xD5, 0xAC, 0xD5, 0xB8, 0xD5, 0xBE };
|
||||
|
||||
static const struct among a_1[71] =
|
||||
{
|
||||
{ 4, s_1_0, -1, 1, 0},
|
||||
{ 8, s_1_1, 0, 1, 0},
|
||||
{ 8, s_1_2, 0, 1, 0},
|
||||
{ 10, s_1_3, -1, 1, 0},
|
||||
{ 8, s_1_4, -1, 1, 0},
|
||||
{ 8, s_1_5, -1, 1, 0},
|
||||
{ 10, s_1_6, 5, 1, 0},
|
||||
{ 10, s_1_7, -1, 1, 0},
|
||||
{ 10, s_1_8, -1, 1, 0},
|
||||
{ 4, s_1_9, -1, 1, 0},
|
||||
{ 4, s_1_10, -1, 1, 0},
|
||||
{ 10, s_1_11, 10, 1, 0},
|
||||
{ 8, s_1_12, -1, 1, 0},
|
||||
{ 8, s_1_13, -1, 1, 0},
|
||||
{ 4, s_1_14, -1, 1, 0},
|
||||
{ 6, s_1_15, 14, 1, 0},
|
||||
{ 8, s_1_16, 15, 1, 0},
|
||||
{ 10, s_1_17, -1, 1, 0},
|
||||
{ 8, s_1_18, -1, 1, 0},
|
||||
{ 8, s_1_19, -1, 1, 0},
|
||||
{ 10, s_1_20, 19, 1, 0},
|
||||
{ 6, s_1_21, -1, 1, 0},
|
||||
{ 8, s_1_22, 21, 1, 0},
|
||||
{ 10, s_1_23, 22, 1, 0},
|
||||
{ 12, s_1_24, -1, 1, 0},
|
||||
{ 10, s_1_25, -1, 1, 0},
|
||||
{ 10, s_1_26, -1, 1, 0},
|
||||
{ 12, s_1_27, 26, 1, 0},
|
||||
{ 2, s_1_28, -1, 1, 0},
|
||||
{ 6, s_1_29, 28, 1, 0},
|
||||
{ 6, s_1_30, 28, 1, 0},
|
||||
{ 4, s_1_31, -1, 1, 0},
|
||||
{ 8, s_1_32, -1, 1, 0},
|
||||
{ 6, s_1_33, -1, 1, 0},
|
||||
{ 6, s_1_34, -1, 1, 0},
|
||||
{ 8, s_1_35, 34, 1, 0},
|
||||
{ 4, s_1_36, -1, 1, 0},
|
||||
{ 6, s_1_37, 36, 1, 0},
|
||||
{ 10, s_1_38, 36, 1, 0},
|
||||
{ 8, s_1_39, 36, 1, 0},
|
||||
{ 8, s_1_40, 36, 1, 0},
|
||||
{ 4, s_1_41, -1, 1, 0},
|
||||
{ 6, s_1_42, 41, 1, 0},
|
||||
{ 6, s_1_43, 41, 1, 0},
|
||||
{ 8, s_1_44, 43, 1, 0},
|
||||
{ 10, s_1_45, 44, 1, 0},
|
||||
{ 6, s_1_46, 41, 1, 0},
|
||||
{ 6, s_1_47, 41, 1, 0},
|
||||
{ 10, s_1_48, 47, 1, 0},
|
||||
{ 10, s_1_49, 47, 1, 0},
|
||||
{ 6, s_1_50, 41, 1, 0},
|
||||
{ 8, s_1_51, 50, 1, 0},
|
||||
{ 8, s_1_52, 50, 1, 0},
|
||||
{ 10, s_1_53, 52, 1, 0},
|
||||
{ 6, s_1_54, -1, 1, 0},
|
||||
{ 6, s_1_55, -1, 1, 0},
|
||||
{ 8, s_1_56, 55, 1, 0},
|
||||
{ 4, s_1_57, -1, 1, 0},
|
||||
{ 6, s_1_58, 57, 1, 0},
|
||||
{ 8, s_1_59, 58, 1, 0},
|
||||
{ 10, s_1_60, -1, 1, 0},
|
||||
{ 8, s_1_61, -1, 1, 0},
|
||||
{ 8, s_1_62, -1, 1, 0},
|
||||
{ 10, s_1_63, 62, 1, 0},
|
||||
{ 8, s_1_64, -1, 1, 0},
|
||||
{ 8, s_1_65, -1, 1, 0},
|
||||
{ 4, s_1_66, -1, 1, 0},
|
||||
{ 8, s_1_67, 66, 1, 0},
|
||||
{ 8, s_1_68, 66, 1, 0},
|
||||
{ 8, s_1_69, -1, 1, 0},
|
||||
{ 8, s_1_70, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_2_0[6] = { 0xD5, 0xA3, 0xD5, 0xA1, 0xD6, 0x80 };
|
||||
static const symbol s_2_1[6] = { 0xD5, 0xBE, 0xD5, 0xB8, 0xD6, 0x80 };
|
||||
static const symbol s_2_2[8] = { 0xD5, 0xA1, 0xD5, 0xBE, 0xD5, 0xB8, 0xD6, 0x80 };
|
||||
static const symbol s_2_3[8] = { 0xD5, 0xA1, 0xD5, 0xB6, 0xD6, 0x85, 0xD6, 0x81 };
|
||||
static const symbol s_2_4[4] = { 0xD5, 0xB8, 0xD6, 0x81 };
|
||||
static const symbol s_2_5[4] = { 0xD5, 0xB8, 0xD6, 0x82 };
|
||||
static const symbol s_2_6[2] = { 0xD6, 0x84 };
|
||||
static const symbol s_2_7[6] = { 0xD5, 0xA1, 0xD6, 0x80, 0xD6, 0x84 };
|
||||
static const symbol s_2_8[6] = { 0xD5, 0xB9, 0xD5, 0xA5, 0xD6, 0x84 };
|
||||
static const symbol s_2_9[4] = { 0xD5, 0xAB, 0xD6, 0x84 };
|
||||
static const symbol s_2_10[8] = { 0xD5, 0xA1, 0xD5, 0xAC, 0xD5, 0xAB, 0xD6, 0x84 };
|
||||
static const symbol s_2_11[8] = { 0xD5, 0xA1, 0xD5, 0xB6, 0xD5, 0xAB, 0xD6, 0x84 };
|
||||
static const symbol s_2_12[8] = { 0xD5, 0xBE, 0xD5, 0xA1, 0xD5, 0xAE, 0xD6, 0x84 };
|
||||
static const symbol s_2_13[8] = { 0xD5, 0xB8, 0xD6, 0x82, 0xD5, 0xB5, 0xD6, 0x84 };
|
||||
static const symbol s_2_14[8] = { 0xD5, 0xB8, 0xD6, 0x82, 0xD5, 0xB6, 0xD6, 0x84 };
|
||||
static const symbol s_2_15[10] = { 0xD5, 0xB4, 0xD5, 0xB8, 0xD6, 0x82, 0xD5, 0xB6, 0xD6, 0x84 };
|
||||
static const symbol s_2_16[6] = { 0xD5, 0xA5, 0xD5, 0xB6, 0xD6, 0x84 };
|
||||
static const symbol s_2_17[6] = { 0xD5, 0xB8, 0xD5, 0xB6, 0xD6, 0x84 };
|
||||
static const symbol s_2_18[6] = { 0xD5, 0xAB, 0xD5, 0xB9, 0xD6, 0x84 };
|
||||
static const symbol s_2_19[6] = { 0xD5, 0xB8, 0xD6, 0x80, 0xD5, 0xA4 };
|
||||
static const symbol s_2_20[8] = { 0xD5, 0xB8, 0xD6, 0x82, 0xD5, 0xB5, 0xD5, 0xA9 };
|
||||
static const symbol s_2_21[4] = { 0xD6, 0x81, 0xD5, 0xAB };
|
||||
static const symbol s_2_22[8] = { 0xD5, 0xB8, 0xD6, 0x82, 0xD5, 0xB0, 0xD5, 0xAB };
|
||||
static const symbol s_2_23[4] = { 0xD5, 0xAB, 0xD5, 0xAC };
|
||||
static const symbol s_2_24[6] = { 0xD5, 0xB8, 0xD6, 0x82, 0xD5, 0xAF };
|
||||
static const symbol s_2_25[4] = { 0xD5, 0xA1, 0xD5, 0xAF };
|
||||
static const symbol s_2_26[6] = { 0xD5, 0xB5, 0xD5, 0xA1, 0xD5, 0xAF };
|
||||
static const symbol s_2_27[8] = { 0xD5, 0xA1, 0xD5, 0xB6, 0xD5, 0xA1, 0xD5, 0xAF };
|
||||
static const symbol s_2_28[4] = { 0xD5, 0xAB, 0xD5, 0xAF };
|
||||
static const symbol s_2_29[8] = { 0xD5, 0xB5, 0xD5, 0xB8, 0xD6, 0x82, 0xD5, 0xB6 };
|
||||
static const symbol s_2_30[14] = { 0xD5, 0xB8, 0xD6, 0x82, 0xD5, 0xA9, 0xD5, 0xB5, 0xD5, 0xB8, 0xD6, 0x82, 0xD5, 0xB6 };
|
||||
static const symbol s_2_31[4] = { 0xD5, 0xA1, 0xD5, 0xB6 };
|
||||
static const symbol s_2_32[8] = { 0xD5, 0xA1, 0xD6, 0x80, 0xD5, 0xA1, 0xD5, 0xB6 };
|
||||
static const symbol s_2_33[6] = { 0xD5, 0xBA, 0xD5, 0xA1, 0xD5, 0xB6 };
|
||||
static const symbol s_2_34[8] = { 0xD5, 0xBD, 0xD5, 0xBF, 0xD5, 0xA1, 0xD5, 0xB6 };
|
||||
static const symbol s_2_35[8] = { 0xD5, 0xA5, 0xD5, 0xB2, 0xD5, 0xA7, 0xD5, 0xB6 };
|
||||
static const symbol s_2_36[6] = { 0xD5, 0xA1, 0xD5, 0xAE, 0xD5, 0xB8 };
|
||||
static const symbol s_2_37[4] = { 0xD5, 0xAB, 0xD5, 0xB9 };
|
||||
static const symbol s_2_38[6] = { 0xD5, 0xB8, 0xD6, 0x82, 0xD5, 0xBD };
|
||||
static const symbol s_2_39[8] = { 0xD5, 0xB8, 0xD6, 0x82, 0xD5, 0xBD, 0xD5, 0xBF };
|
||||
|
||||
static const struct among a_2[40] =
|
||||
{
|
||||
{ 6, s_2_0, -1, 1, 0},
|
||||
{ 6, s_2_1, -1, 1, 0},
|
||||
{ 8, s_2_2, 1, 1, 0},
|
||||
{ 8, s_2_3, -1, 1, 0},
|
||||
{ 4, s_2_4, -1, 1, 0},
|
||||
{ 4, s_2_5, -1, 1, 0},
|
||||
{ 2, s_2_6, -1, 1, 0},
|
||||
{ 6, s_2_7, 6, 1, 0},
|
||||
{ 6, s_2_8, 6, 1, 0},
|
||||
{ 4, s_2_9, 6, 1, 0},
|
||||
{ 8, s_2_10, 9, 1, 0},
|
||||
{ 8, s_2_11, 9, 1, 0},
|
||||
{ 8, s_2_12, 6, 1, 0},
|
||||
{ 8, s_2_13, 6, 1, 0},
|
||||
{ 8, s_2_14, 6, 1, 0},
|
||||
{ 10, s_2_15, 14, 1, 0},
|
||||
{ 6, s_2_16, 6, 1, 0},
|
||||
{ 6, s_2_17, 6, 1, 0},
|
||||
{ 6, s_2_18, 6, 1, 0},
|
||||
{ 6, s_2_19, -1, 1, 0},
|
||||
{ 8, s_2_20, -1, 1, 0},
|
||||
{ 4, s_2_21, -1, 1, 0},
|
||||
{ 8, s_2_22, -1, 1, 0},
|
||||
{ 4, s_2_23, -1, 1, 0},
|
||||
{ 6, s_2_24, -1, 1, 0},
|
||||
{ 4, s_2_25, -1, 1, 0},
|
||||
{ 6, s_2_26, 25, 1, 0},
|
||||
{ 8, s_2_27, 25, 1, 0},
|
||||
{ 4, s_2_28, -1, 1, 0},
|
||||
{ 8, s_2_29, -1, 1, 0},
|
||||
{ 14, s_2_30, 29, 1, 0},
|
||||
{ 4, s_2_31, -1, 1, 0},
|
||||
{ 8, s_2_32, 31, 1, 0},
|
||||
{ 6, s_2_33, 31, 1, 0},
|
||||
{ 8, s_2_34, 31, 1, 0},
|
||||
{ 8, s_2_35, -1, 1, 0},
|
||||
{ 6, s_2_36, -1, 1, 0},
|
||||
{ 4, s_2_37, -1, 1, 0},
|
||||
{ 6, s_2_38, -1, 1, 0},
|
||||
{ 8, s_2_39, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_3_0[4] = { 0xD5, 0xA5, 0xD6, 0x80 };
|
||||
static const symbol s_3_1[6] = { 0xD5, 0xB6, 0xD5, 0xA5, 0xD6, 0x80 };
|
||||
static const symbol s_3_2[2] = { 0xD6, 0x81 };
|
||||
static const symbol s_3_3[6] = { 0xD5, 0xB8, 0xD6, 0x82, 0xD6, 0x81 };
|
||||
static const symbol s_3_4[4] = { 0xD5, 0xAB, 0xD6, 0x81 };
|
||||
static const symbol s_3_5[8] = { 0xD5, 0xA5, 0xD6, 0x80, 0xD5, 0xAB, 0xD6, 0x81 };
|
||||
static const symbol s_3_6[10] = { 0xD5, 0xB6, 0xD5, 0xA5, 0xD6, 0x80, 0xD5, 0xAB, 0xD6, 0x81 };
|
||||
static const symbol s_3_7[6] = { 0xD6, 0x81, 0xD5, 0xAB, 0xD6, 0x81 };
|
||||
static const symbol s_3_8[10] = { 0xD5, 0xBE, 0xD5, 0xA1, 0xD5, 0xB6, 0xD5, 0xAB, 0xD6, 0x81 };
|
||||
static const symbol s_3_9[8] = { 0xD5, 0xB8, 0xD5, 0xBB, 0xD5, 0xAB, 0xD6, 0x81 };
|
||||
static const symbol s_3_10[6] = { 0xD5, 0xBE, 0xD5, 0xAB, 0xD6, 0x81 };
|
||||
static const symbol s_3_11[4] = { 0xD5, 0xB8, 0xD6, 0x81 };
|
||||
static const symbol s_3_12[4] = { 0xD5, 0xBD, 0xD5, 0xA1 };
|
||||
static const symbol s_3_13[4] = { 0xD5, 0xBE, 0xD5, 0xA1 };
|
||||
static const symbol s_3_14[6] = { 0xD5, 0xA1, 0xD5, 0xB4, 0xD5, 0xA2 };
|
||||
static const symbol s_3_15[2] = { 0xD5, 0xA4 };
|
||||
static const symbol s_3_16[6] = { 0xD5, 0xA5, 0xD6, 0x80, 0xD5, 0xA4 };
|
||||
static const symbol s_3_17[8] = { 0xD5, 0xB6, 0xD5, 0xA5, 0xD6, 0x80, 0xD5, 0xA4 };
|
||||
static const symbol s_3_18[6] = { 0xD5, 0xB8, 0xD6, 0x82, 0xD5, 0xA4 };
|
||||
static const symbol s_3_19[6] = { 0xD5, 0xA1, 0xD5, 0xB6, 0xD5, 0xA4 };
|
||||
static const symbol s_3_20[14] = { 0xD5, 0xB8, 0xD6, 0x82, 0xD5, 0xA9, 0xD5, 0xB5, 0xD5, 0xA1, 0xD5, 0xB6, 0xD5, 0xA4 };
|
||||
static const symbol s_3_21[8] = { 0xD5, 0xBE, 0xD5, 0xA1, 0xD5, 0xB6, 0xD5, 0xA4 };
|
||||
static const symbol s_3_22[6] = { 0xD5, 0xB8, 0xD5, 0xBB, 0xD5, 0xA4 };
|
||||
static const symbol s_3_23[2] = { 0xD5, 0xA8 };
|
||||
static const symbol s_3_24[6] = { 0xD5, 0xA5, 0xD6, 0x80, 0xD5, 0xA8 };
|
||||
static const symbol s_3_25[8] = { 0xD5, 0xB6, 0xD5, 0xA5, 0xD6, 0x80, 0xD5, 0xA8 };
|
||||
static const symbol s_3_26[6] = { 0xD5, 0xA1, 0xD5, 0xB6, 0xD5, 0xA8 };
|
||||
static const symbol s_3_27[14] = { 0xD5, 0xB8, 0xD6, 0x82, 0xD5, 0xA9, 0xD5, 0xB5, 0xD5, 0xA1, 0xD5, 0xB6, 0xD5, 0xA8 };
|
||||
static const symbol s_3_28[8] = { 0xD5, 0xBE, 0xD5, 0xA1, 0xD5, 0xB6, 0xD5, 0xA8 };
|
||||
static const symbol s_3_29[6] = { 0xD5, 0xB8, 0xD5, 0xBB, 0xD5, 0xA8 };
|
||||
static const symbol s_3_30[2] = { 0xD5, 0xAB };
|
||||
static const symbol s_3_31[6] = { 0xD5, 0xA5, 0xD6, 0x80, 0xD5, 0xAB };
|
||||
static const symbol s_3_32[8] = { 0xD5, 0xB6, 0xD5, 0xA5, 0xD6, 0x80, 0xD5, 0xAB };
|
||||
static const symbol s_3_33[4] = { 0xD5, 0xBE, 0xD5, 0xAB };
|
||||
static const symbol s_3_34[10] = { 0xD5, 0xA5, 0xD6, 0x80, 0xD5, 0xB8, 0xD6, 0x82, 0xD5, 0xB4 };
|
||||
static const symbol s_3_35[12] = { 0xD5, 0xB6, 0xD5, 0xA5, 0xD6, 0x80, 0xD5, 0xB8, 0xD6, 0x82, 0xD5, 0xB4 };
|
||||
static const symbol s_3_36[10] = { 0xD5, 0xA1, 0xD5, 0xB6, 0xD5, 0xB8, 0xD6, 0x82, 0xD5, 0xB4 };
|
||||
static const symbol s_3_37[2] = { 0xD5, 0xB6 };
|
||||
static const symbol s_3_38[6] = { 0xD5, 0xA5, 0xD6, 0x80, 0xD5, 0xB6 };
|
||||
static const symbol s_3_39[8] = { 0xD5, 0xB6, 0xD5, 0xA5, 0xD6, 0x80, 0xD5, 0xB6 };
|
||||
static const symbol s_3_40[6] = { 0xD5, 0xB8, 0xD6, 0x82, 0xD5, 0xB6 };
|
||||
static const symbol s_3_41[4] = { 0xD5, 0xA1, 0xD5, 0xB6 };
|
||||
static const symbol s_3_42[12] = { 0xD5, 0xB8, 0xD6, 0x82, 0xD5, 0xA9, 0xD5, 0xB5, 0xD5, 0xA1, 0xD5, 0xB6 };
|
||||
static const symbol s_3_43[6] = { 0xD5, 0xBE, 0xD5, 0xA1, 0xD5, 0xB6 };
|
||||
static const symbol s_3_44[4] = { 0xD5, 0xAB, 0xD5, 0xB6 };
|
||||
static const symbol s_3_45[8] = { 0xD5, 0xA5, 0xD6, 0x80, 0xD5, 0xAB, 0xD5, 0xB6 };
|
||||
static const symbol s_3_46[10] = { 0xD5, 0xB6, 0xD5, 0xA5, 0xD6, 0x80, 0xD5, 0xAB, 0xD5, 0xB6 };
|
||||
static const symbol s_3_47[14] = { 0xD5, 0xB8, 0xD6, 0x82, 0xD5, 0xA9, 0xD5, 0xB5, 0xD5, 0xA1, 0xD5, 0xB6, 0xD5, 0xB6 };
|
||||
static const symbol s_3_48[4] = { 0xD5, 0xB8, 0xD5, 0xBB };
|
||||
static const symbol s_3_49[14] = { 0xD5, 0xB8, 0xD6, 0x82, 0xD5, 0xA9, 0xD5, 0xB5, 0xD5, 0xA1, 0xD5, 0xB6, 0xD5, 0xBD };
|
||||
static const symbol s_3_50[8] = { 0xD5, 0xBE, 0xD5, 0xA1, 0xD5, 0xB6, 0xD5, 0xBD };
|
||||
static const symbol s_3_51[6] = { 0xD5, 0xB8, 0xD5, 0xBB, 0xD5, 0xBD };
|
||||
static const symbol s_3_52[4] = { 0xD5, 0xB8, 0xD5, 0xBE };
|
||||
static const symbol s_3_53[8] = { 0xD5, 0xA5, 0xD6, 0x80, 0xD5, 0xB8, 0xD5, 0xBE };
|
||||
static const symbol s_3_54[10] = { 0xD5, 0xB6, 0xD5, 0xA5, 0xD6, 0x80, 0xD5, 0xB8, 0xD5, 0xBE };
|
||||
static const symbol s_3_55[8] = { 0xD5, 0xA1, 0xD5, 0xB6, 0xD5, 0xB8, 0xD5, 0xBE };
|
||||
static const symbol s_3_56[6] = { 0xD5, 0xBE, 0xD5, 0xB8, 0xD5, 0xBE };
|
||||
|
||||
static const struct among a_3[57] =
|
||||
{
|
||||
{ 4, s_3_0, -1, 1, 0},
|
||||
{ 6, s_3_1, 0, 1, 0},
|
||||
{ 2, s_3_2, -1, 1, 0},
|
||||
{ 6, s_3_3, 2, 1, 0},
|
||||
{ 4, s_3_4, 2, 1, 0},
|
||||
{ 8, s_3_5, 4, 1, 0},
|
||||
{ 10, s_3_6, 5, 1, 0},
|
||||
{ 6, s_3_7, 4, 1, 0},
|
||||
{ 10, s_3_8, 4, 1, 0},
|
||||
{ 8, s_3_9, 4, 1, 0},
|
||||
{ 6, s_3_10, 4, 1, 0},
|
||||
{ 4, s_3_11, 2, 1, 0},
|
||||
{ 4, s_3_12, -1, 1, 0},
|
||||
{ 4, s_3_13, -1, 1, 0},
|
||||
{ 6, s_3_14, -1, 1, 0},
|
||||
{ 2, s_3_15, -1, 1, 0},
|
||||
{ 6, s_3_16, 15, 1, 0},
|
||||
{ 8, s_3_17, 16, 1, 0},
|
||||
{ 6, s_3_18, 15, 1, 0},
|
||||
{ 6, s_3_19, 15, 1, 0},
|
||||
{ 14, s_3_20, 19, 1, 0},
|
||||
{ 8, s_3_21, 19, 1, 0},
|
||||
{ 6, s_3_22, 15, 1, 0},
|
||||
{ 2, s_3_23, -1, 1, 0},
|
||||
{ 6, s_3_24, 23, 1, 0},
|
||||
{ 8, s_3_25, 24, 1, 0},
|
||||
{ 6, s_3_26, 23, 1, 0},
|
||||
{ 14, s_3_27, 26, 1, 0},
|
||||
{ 8, s_3_28, 26, 1, 0},
|
||||
{ 6, s_3_29, 23, 1, 0},
|
||||
{ 2, s_3_30, -1, 1, 0},
|
||||
{ 6, s_3_31, 30, 1, 0},
|
||||
{ 8, s_3_32, 31, 1, 0},
|
||||
{ 4, s_3_33, 30, 1, 0},
|
||||
{ 10, s_3_34, -1, 1, 0},
|
||||
{ 12, s_3_35, 34, 1, 0},
|
||||
{ 10, s_3_36, -1, 1, 0},
|
||||
{ 2, s_3_37, -1, 1, 0},
|
||||
{ 6, s_3_38, 37, 1, 0},
|
||||
{ 8, s_3_39, 38, 1, 0},
|
||||
{ 6, s_3_40, 37, 1, 0},
|
||||
{ 4, s_3_41, 37, 1, 0},
|
||||
{ 12, s_3_42, 41, 1, 0},
|
||||
{ 6, s_3_43, 41, 1, 0},
|
||||
{ 4, s_3_44, 37, 1, 0},
|
||||
{ 8, s_3_45, 44, 1, 0},
|
||||
{ 10, s_3_46, 45, 1, 0},
|
||||
{ 14, s_3_47, 37, 1, 0},
|
||||
{ 4, s_3_48, -1, 1, 0},
|
||||
{ 14, s_3_49, -1, 1, 0},
|
||||
{ 8, s_3_50, -1, 1, 0},
|
||||
{ 6, s_3_51, -1, 1, 0},
|
||||
{ 4, s_3_52, -1, 1, 0},
|
||||
{ 8, s_3_53, 52, 1, 0},
|
||||
{ 10, s_3_54, 53, 1, 0},
|
||||
{ 8, s_3_55, 52, 1, 0},
|
||||
{ 6, s_3_56, 52, 1, 0}
|
||||
};
|
||||
|
||||
static const unsigned char g_v[] = { 209, 4, 128, 0, 18 };
|
||||
|
||||
|
||||
static int r_mark_regions(struct SN_env * z) {
|
||||
z->I[1] = z->l;
|
||||
z->I[0] = z->l;
|
||||
{ int c1 = z->c;
|
||||
{
|
||||
int ret = out_grouping_U(z, g_v, 1377, 1413, 1);
|
||||
if (ret < 0) goto lab0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[1] = z->c;
|
||||
{
|
||||
int ret = in_grouping_U(z, g_v, 1377, 1413, 1);
|
||||
if (ret < 0) goto lab0;
|
||||
z->c += ret;
|
||||
}
|
||||
{
|
||||
int ret = out_grouping_U(z, g_v, 1377, 1413, 1);
|
||||
if (ret < 0) goto lab0;
|
||||
z->c += ret;
|
||||
}
|
||||
{
|
||||
int ret = in_grouping_U(z, g_v, 1377, 1413, 1);
|
||||
if (ret < 0) goto lab0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[0] = z->c;
|
||||
lab0:
|
||||
z->c = c1;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_R2(struct SN_env * z) {
|
||||
if (!(z->I[0] <= z->c)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_adjective(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (!(find_among_b(z, a_0, 23))) return 0;
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_verb(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (!(find_among_b(z, a_1, 71))) return 0;
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_noun(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (!(find_among_b(z, a_2, 40))) return 0;
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_ending(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (!(find_among_b(z, a_3, 57))) return 0;
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R2(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern int armenian_UTF_8_stem(struct SN_env * z) {
|
||||
|
||||
{ int ret = r_mark_regions(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
{ int ret = r_ending(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m2;
|
||||
}
|
||||
{ int m3 = z->l - z->c; (void)m3;
|
||||
{ int ret = r_verb(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m3;
|
||||
}
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
{ int ret = r_adjective(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m4;
|
||||
}
|
||||
{ int m5 = z->l - z->c; (void)m5;
|
||||
{ int ret = r_noun(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m5;
|
||||
}
|
||||
z->lb = mlimit1;
|
||||
}
|
||||
z->c = z->lb;
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern struct SN_env * armenian_UTF_8_create_env(void) { return SN_create_env(0, 2); }
|
||||
|
||||
extern void armenian_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#include "header.h"
|
||||
|
||||
@ -61,38 +61,38 @@ static const symbol s_0_31[4] = { 'e', 'r', 'e', 't' };
|
||||
|
||||
static const struct among a_0[32] =
|
||||
{
|
||||
/* 0 */ { 3, s_0_0, -1, 1, 0},
|
||||
/* 1 */ { 5, s_0_1, 0, 1, 0},
|
||||
/* 2 */ { 4, s_0_2, -1, 1, 0},
|
||||
/* 3 */ { 1, s_0_3, -1, 1, 0},
|
||||
/* 4 */ { 5, s_0_4, 3, 1, 0},
|
||||
/* 5 */ { 4, s_0_5, 3, 1, 0},
|
||||
/* 6 */ { 6, s_0_6, 5, 1, 0},
|
||||
/* 7 */ { 3, s_0_7, 3, 1, 0},
|
||||
/* 8 */ { 4, s_0_8, 3, 1, 0},
|
||||
/* 9 */ { 3, s_0_9, 3, 1, 0},
|
||||
/* 10 */ { 2, s_0_10, -1, 1, 0},
|
||||
/* 11 */ { 5, s_0_11, 10, 1, 0},
|
||||
/* 12 */ { 4, s_0_12, 10, 1, 0},
|
||||
/* 13 */ { 2, s_0_13, -1, 1, 0},
|
||||
/* 14 */ { 5, s_0_14, 13, 1, 0},
|
||||
/* 15 */ { 4, s_0_15, 13, 1, 0},
|
||||
/* 16 */ { 1, s_0_16, -1, 2, 0},
|
||||
/* 17 */ { 4, s_0_17, 16, 1, 0},
|
||||
/* 18 */ { 2, s_0_18, 16, 1, 0},
|
||||
/* 19 */ { 5, s_0_19, 18, 1, 0},
|
||||
/* 20 */ { 7, s_0_20, 19, 1, 0},
|
||||
/* 21 */ { 4, s_0_21, 18, 1, 0},
|
||||
/* 22 */ { 5, s_0_22, 18, 1, 0},
|
||||
/* 23 */ { 4, s_0_23, 18, 1, 0},
|
||||
/* 24 */ { 3, s_0_24, 16, 1, 0},
|
||||
/* 25 */ { 6, s_0_25, 24, 1, 0},
|
||||
/* 26 */ { 5, s_0_26, 24, 1, 0},
|
||||
/* 27 */ { 3, s_0_27, 16, 1, 0},
|
||||
/* 28 */ { 3, s_0_28, 16, 1, 0},
|
||||
/* 29 */ { 5, s_0_29, 28, 1, 0},
|
||||
/* 30 */ { 2, s_0_30, -1, 1, 0},
|
||||
/* 31 */ { 4, s_0_31, 30, 1, 0}
|
||||
{ 3, s_0_0, -1, 1, 0},
|
||||
{ 5, s_0_1, 0, 1, 0},
|
||||
{ 4, s_0_2, -1, 1, 0},
|
||||
{ 1, s_0_3, -1, 1, 0},
|
||||
{ 5, s_0_4, 3, 1, 0},
|
||||
{ 4, s_0_5, 3, 1, 0},
|
||||
{ 6, s_0_6, 5, 1, 0},
|
||||
{ 3, s_0_7, 3, 1, 0},
|
||||
{ 4, s_0_8, 3, 1, 0},
|
||||
{ 3, s_0_9, 3, 1, 0},
|
||||
{ 2, s_0_10, -1, 1, 0},
|
||||
{ 5, s_0_11, 10, 1, 0},
|
||||
{ 4, s_0_12, 10, 1, 0},
|
||||
{ 2, s_0_13, -1, 1, 0},
|
||||
{ 5, s_0_14, 13, 1, 0},
|
||||
{ 4, s_0_15, 13, 1, 0},
|
||||
{ 1, s_0_16, -1, 2, 0},
|
||||
{ 4, s_0_17, 16, 1, 0},
|
||||
{ 2, s_0_18, 16, 1, 0},
|
||||
{ 5, s_0_19, 18, 1, 0},
|
||||
{ 7, s_0_20, 19, 1, 0},
|
||||
{ 4, s_0_21, 18, 1, 0},
|
||||
{ 5, s_0_22, 18, 1, 0},
|
||||
{ 4, s_0_23, 18, 1, 0},
|
||||
{ 3, s_0_24, 16, 1, 0},
|
||||
{ 6, s_0_25, 24, 1, 0},
|
||||
{ 5, s_0_26, 24, 1, 0},
|
||||
{ 3, s_0_27, 16, 1, 0},
|
||||
{ 3, s_0_28, 16, 1, 0},
|
||||
{ 5, s_0_29, 28, 1, 0},
|
||||
{ 2, s_0_30, -1, 1, 0},
|
||||
{ 4, s_0_31, 30, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_1_0[2] = { 'g', 'd' };
|
||||
@ -102,10 +102,10 @@ static const symbol s_1_3[2] = { 'k', 't' };
|
||||
|
||||
static const struct among a_1[4] =
|
||||
{
|
||||
/* 0 */ { 2, s_1_0, -1, -1, 0},
|
||||
/* 1 */ { 2, s_1_1, -1, -1, 0},
|
||||
/* 2 */ { 2, s_1_2, -1, -1, 0},
|
||||
/* 3 */ { 2, s_1_3, -1, -1, 0}
|
||||
{ 2, s_1_0, -1, -1, 0},
|
||||
{ 2, s_1_1, -1, -1, 0},
|
||||
{ 2, s_1_2, -1, -1, 0},
|
||||
{ 2, s_1_3, -1, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_2_0[2] = { 'i', 'g' };
|
||||
@ -116,11 +116,11 @@ static const symbol s_2_4[5] = { 'l', 0xC3, 0xB8, 's', 't' };
|
||||
|
||||
static const struct among a_2[5] =
|
||||
{
|
||||
/* 0 */ { 2, s_2_0, -1, 1, 0},
|
||||
/* 1 */ { 3, s_2_1, 0, 1, 0},
|
||||
/* 2 */ { 4, s_2_2, 1, 1, 0},
|
||||
/* 3 */ { 3, s_2_3, -1, 1, 0},
|
||||
/* 4 */ { 5, s_2_4, -1, 2, 0}
|
||||
{ 2, s_2_0, -1, 1, 0},
|
||||
{ 3, s_2_1, 0, 1, 0},
|
||||
{ 4, s_2_2, 1, 1, 0},
|
||||
{ 3, s_2_3, -1, 1, 0},
|
||||
{ 5, s_2_4, -1, 2, 0}
|
||||
};
|
||||
|
||||
static const unsigned char g_c[] = { 119, 223, 119, 1 };
|
||||
@ -133,52 +133,52 @@ static const symbol s_0[] = { 's', 't' };
|
||||
static const symbol s_1[] = { 'i', 'g' };
|
||||
static const symbol s_2[] = { 'l', 0xC3, 0xB8, 's' };
|
||||
|
||||
static int r_mark_regions(struct SN_env * z) { /* forwardmode */
|
||||
z->I[0] = z->l; /* $p1 = <integer expression>, line 33 */
|
||||
{ int c_test1 = z->c; /* test, line 35 */
|
||||
{ int ret = skip_utf8(z->p, z->c, 0, z->l, + 3); /* hop, line 35 */
|
||||
static int r_mark_regions(struct SN_env * z) {
|
||||
z->I[1] = z->l;
|
||||
{ int c_test1 = z->c;
|
||||
{ int ret = skip_utf8(z->p, z->c, z->l, 3);
|
||||
if (ret < 0) return 0;
|
||||
z->c = ret;
|
||||
}
|
||||
z->I[1] = z->c; /* setmark x, line 35 */
|
||||
z->I[0] = z->c;
|
||||
z->c = c_test1;
|
||||
}
|
||||
if (out_grouping_U(z, g_v, 97, 248, 1) < 0) return 0; /* goto */ /* grouping v, line 36 */
|
||||
{ /* gopast */ /* non v, line 36 */
|
||||
if (out_grouping_U(z, g_v, 97, 248, 1) < 0) return 0;
|
||||
{
|
||||
int ret = in_grouping_U(z, g_v, 97, 248, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[0] = z->c; /* setmark p1, line 36 */
|
||||
/* try, line 37 */
|
||||
if (!(z->I[0] < z->I[1])) goto lab0; /* $(<integer expression> < <integer expression>), line 37 */
|
||||
z->I[0] = z->I[1]; /* $p1 = <integer expression>, line 37 */
|
||||
z->I[1] = z->c;
|
||||
|
||||
if (!(z->I[1] < z->I[0])) goto lab0;
|
||||
z->I[1] = z->I[0];
|
||||
lab0:
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_main_suffix(struct SN_env * z) { /* backwardmode */
|
||||
static int r_main_suffix(struct SN_env * z) {
|
||||
int among_var;
|
||||
|
||||
{ int mlimit1; /* setlimit, line 43 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 43 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1851440 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; } /* substring, line 43 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1851440 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; }
|
||||
among_var = find_among_b(z, a_0, 32);
|
||||
if (!(among_var)) { z->lb = mlimit1; return 0; }
|
||||
z->bra = z->c; /* ], line 43 */
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit1;
|
||||
}
|
||||
switch (among_var) { /* among, line 44 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 50 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (in_grouping_b_U(z, g_s_ending, 97, 229, 0)) return 0; /* grouping s_ending, line 52 */
|
||||
{ int ret = slice_del(z); /* delete, line 52 */
|
||||
if (in_grouping_b_U(z, g_s_ending, 97, 229, 0)) return 0;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -186,69 +186,69 @@ static int r_main_suffix(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_consonant_pair(struct SN_env * z) { /* backwardmode */
|
||||
{ int m_test1 = z->l - z->c; /* test, line 57 */
|
||||
static int r_consonant_pair(struct SN_env * z) {
|
||||
{ int m_test1 = z->l - z->c;
|
||||
|
||||
{ int mlimit2; /* setlimit, line 58 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit2 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 58 */
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 100 && z->p[z->c - 1] != 116)) { z->lb = mlimit2; return 0; } /* substring, line 58 */
|
||||
{ int mlimit2;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit2 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 100 && z->p[z->c - 1] != 116)) { z->lb = mlimit2; return 0; }
|
||||
if (!(find_among_b(z, a_1, 4))) { z->lb = mlimit2; return 0; }
|
||||
z->bra = z->c; /* ], line 58 */
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit2;
|
||||
}
|
||||
z->c = z->l - m_test1;
|
||||
}
|
||||
{ int ret = skip_utf8(z->p, z->c, z->lb, 0, -1);
|
||||
{ int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c = ret; /* next, line 64 */
|
||||
z->c = ret;
|
||||
}
|
||||
z->bra = z->c; /* ], line 64 */
|
||||
{ int ret = slice_del(z); /* delete, line 64 */
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_other_suffix(struct SN_env * z) { /* backwardmode */
|
||||
static int r_other_suffix(struct SN_env * z) {
|
||||
int among_var;
|
||||
{ int m1 = z->l - z->c; (void)m1; /* do, line 68 */
|
||||
z->ket = z->c; /* [, line 68 */
|
||||
if (!(eq_s_b(z, 2, s_0))) goto lab0; /* literal, line 68 */
|
||||
z->bra = z->c; /* ], line 68 */
|
||||
if (!(eq_s_b(z, 2, s_1))) goto lab0; /* literal, line 68 */
|
||||
{ int ret = slice_del(z); /* delete, line 68 */
|
||||
{ int m1 = z->l - z->c; (void)m1;
|
||||
z->ket = z->c;
|
||||
if (!(eq_s_b(z, 2, s_0))) goto lab0;
|
||||
z->bra = z->c;
|
||||
if (!(eq_s_b(z, 2, s_1))) goto lab0;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
lab0:
|
||||
z->c = z->l - m1;
|
||||
}
|
||||
|
||||
{ int mlimit2; /* setlimit, line 69 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit2 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 69 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1572992 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit2; return 0; } /* substring, line 69 */
|
||||
{ int mlimit2;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit2 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1572992 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit2; return 0; }
|
||||
among_var = find_among_b(z, a_2, 5);
|
||||
if (!(among_var)) { z->lb = mlimit2; return 0; }
|
||||
z->bra = z->c; /* ], line 69 */
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit2;
|
||||
}
|
||||
switch (among_var) { /* among, line 70 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 72 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int m3 = z->l - z->c; (void)m3; /* do, line 72 */
|
||||
{ int ret = r_consonant_pair(z); /* call consonant_pair, line 72 */
|
||||
{ int m3 = z->l - z->c; (void)m3;
|
||||
{ int ret = r_consonant_pair(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m3;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 4, s_2); /* <-, line 74 */
|
||||
{ int ret = slice_from_s(z, 4, s_2);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -256,54 +256,54 @@ static int r_other_suffix(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_undouble(struct SN_env * z) { /* backwardmode */
|
||||
static int r_undouble(struct SN_env * z) {
|
||||
|
||||
{ int mlimit1; /* setlimit, line 78 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 78 */
|
||||
if (in_grouping_b_U(z, g_c, 98, 122, 0)) { z->lb = mlimit1; return 0; } /* grouping c, line 78 */
|
||||
z->bra = z->c; /* ], line 78 */
|
||||
z->S[0] = slice_to(z, z->S[0]); /* -> ch, line 78 */
|
||||
if (z->S[0] == 0) return -1; /* -> ch, line 78 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
if (in_grouping_b_U(z, g_c, 98, 122, 0)) { z->lb = mlimit1; return 0; }
|
||||
z->bra = z->c;
|
||||
z->S[0] = slice_to(z, z->S[0]);
|
||||
if (z->S[0] == 0) return -1;
|
||||
z->lb = mlimit1;
|
||||
}
|
||||
if (!(eq_v_b(z, z->S[0]))) return 0; /* name ch, line 79 */
|
||||
{ int ret = slice_del(z); /* delete, line 80 */
|
||||
if (!(eq_v_b(z, z->S[0]))) return 0;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern int danish_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
{ int c1 = z->c; /* do, line 86 */
|
||||
{ int ret = r_mark_regions(z); /* call mark_regions, line 86 */
|
||||
extern int danish_UTF_8_stem(struct SN_env * z) {
|
||||
{ int c1 = z->c;
|
||||
{ int ret = r_mark_regions(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = c1;
|
||||
}
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 87 */
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
{ int m2 = z->l - z->c; (void)m2; /* do, line 88 */
|
||||
{ int ret = r_main_suffix(z); /* call main_suffix, line 88 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
{ int ret = r_main_suffix(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m2;
|
||||
}
|
||||
{ int m3 = z->l - z->c; (void)m3; /* do, line 89 */
|
||||
{ int ret = r_consonant_pair(z); /* call consonant_pair, line 89 */
|
||||
{ int m3 = z->l - z->c; (void)m3;
|
||||
{ int ret = r_consonant_pair(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m3;
|
||||
}
|
||||
{ int m4 = z->l - z->c; (void)m4; /* do, line 90 */
|
||||
{ int ret = r_other_suffix(z); /* call other_suffix, line 90 */
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
{ int ret = r_other_suffix(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m4;
|
||||
}
|
||||
{ int m5 = z->l - z->c; (void)m5; /* do, line 91 */
|
||||
{ int ret = r_undouble(z); /* call undouble, line 91 */
|
||||
{ int m5 = z->l - z->c; (void)m5;
|
||||
{ int ret = r_undouble(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m5;
|
||||
@ -312,7 +312,7 @@ extern int danish_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern struct SN_env * danish_UTF_8_create_env(void) { return SN_create_env(1, 2, 0); }
|
||||
extern struct SN_env * danish_UTF_8_create_env(void) { return SN_create_env(1, 2); }
|
||||
|
||||
extern void danish_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 1); }
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#include "header.h"
|
||||
|
||||
@ -43,17 +43,17 @@ static const symbol s_0_10[2] = { 0xC3, 0xBC };
|
||||
|
||||
static const struct among a_0[11] =
|
||||
{
|
||||
/* 0 */ { 0, 0, -1, 6, 0},
|
||||
/* 1 */ { 2, s_0_1, 0, 1, 0},
|
||||
/* 2 */ { 2, s_0_2, 0, 1, 0},
|
||||
/* 3 */ { 2, s_0_3, 0, 2, 0},
|
||||
/* 4 */ { 2, s_0_4, 0, 2, 0},
|
||||
/* 5 */ { 2, s_0_5, 0, 3, 0},
|
||||
/* 6 */ { 2, s_0_6, 0, 3, 0},
|
||||
/* 7 */ { 2, s_0_7, 0, 4, 0},
|
||||
/* 8 */ { 2, s_0_8, 0, 4, 0},
|
||||
/* 9 */ { 2, s_0_9, 0, 5, 0},
|
||||
/* 10 */ { 2, s_0_10, 0, 5, 0}
|
||||
{ 0, 0, -1, 6, 0},
|
||||
{ 2, s_0_1, 0, 1, 0},
|
||||
{ 2, s_0_2, 0, 1, 0},
|
||||
{ 2, s_0_3, 0, 2, 0},
|
||||
{ 2, s_0_4, 0, 2, 0},
|
||||
{ 2, s_0_5, 0, 3, 0},
|
||||
{ 2, s_0_6, 0, 3, 0},
|
||||
{ 2, s_0_7, 0, 4, 0},
|
||||
{ 2, s_0_8, 0, 4, 0},
|
||||
{ 2, s_0_9, 0, 5, 0},
|
||||
{ 2, s_0_10, 0, 5, 0}
|
||||
};
|
||||
|
||||
static const symbol s_1_1[1] = { 'I' };
|
||||
@ -61,9 +61,9 @@ static const symbol s_1_2[1] = { 'Y' };
|
||||
|
||||
static const struct among a_1[3] =
|
||||
{
|
||||
/* 0 */ { 0, 0, -1, 3, 0},
|
||||
/* 1 */ { 1, s_1_1, 0, 2, 0},
|
||||
/* 2 */ { 1, s_1_2, 0, 1, 0}
|
||||
{ 0, 0, -1, 3, 0},
|
||||
{ 1, s_1_1, 0, 2, 0},
|
||||
{ 1, s_1_2, 0, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_2_0[2] = { 'd', 'd' };
|
||||
@ -72,9 +72,9 @@ static const symbol s_2_2[2] = { 't', 't' };
|
||||
|
||||
static const struct among a_2[3] =
|
||||
{
|
||||
/* 0 */ { 2, s_2_0, -1, -1, 0},
|
||||
/* 1 */ { 2, s_2_1, -1, -1, 0},
|
||||
/* 2 */ { 2, s_2_2, -1, -1, 0}
|
||||
{ 2, s_2_0, -1, -1, 0},
|
||||
{ 2, s_2_1, -1, -1, 0},
|
||||
{ 2, s_2_2, -1, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_3_0[3] = { 'e', 'n', 'e' };
|
||||
@ -85,11 +85,11 @@ static const symbol s_3_4[1] = { 's' };
|
||||
|
||||
static const struct among a_3[5] =
|
||||
{
|
||||
/* 0 */ { 3, s_3_0, -1, 2, 0},
|
||||
/* 1 */ { 2, s_3_1, -1, 3, 0},
|
||||
/* 2 */ { 2, s_3_2, -1, 2, 0},
|
||||
/* 3 */ { 5, s_3_3, 2, 1, 0},
|
||||
/* 4 */ { 1, s_3_4, -1, 3, 0}
|
||||
{ 3, s_3_0, -1, 2, 0},
|
||||
{ 2, s_3_1, -1, 3, 0},
|
||||
{ 2, s_3_2, -1, 2, 0},
|
||||
{ 5, s_3_3, 2, 1, 0},
|
||||
{ 1, s_3_4, -1, 3, 0}
|
||||
};
|
||||
|
||||
static const symbol s_4_0[3] = { 'e', 'n', 'd' };
|
||||
@ -101,12 +101,12 @@ static const symbol s_4_5[3] = { 'b', 'a', 'r' };
|
||||
|
||||
static const struct among a_4[6] =
|
||||
{
|
||||
/* 0 */ { 3, s_4_0, -1, 1, 0},
|
||||
/* 1 */ { 2, s_4_1, -1, 2, 0},
|
||||
/* 2 */ { 3, s_4_2, -1, 1, 0},
|
||||
/* 3 */ { 4, s_4_3, -1, 3, 0},
|
||||
/* 4 */ { 4, s_4_4, -1, 4, 0},
|
||||
/* 5 */ { 3, s_4_5, -1, 5, 0}
|
||||
{ 3, s_4_0, -1, 1, 0},
|
||||
{ 2, s_4_1, -1, 2, 0},
|
||||
{ 3, s_4_2, -1, 1, 0},
|
||||
{ 4, s_4_3, -1, 3, 0},
|
||||
{ 4, s_4_4, -1, 4, 0},
|
||||
{ 3, s_4_5, -1, 5, 0}
|
||||
};
|
||||
|
||||
static const symbol s_5_0[2] = { 'a', 'a' };
|
||||
@ -116,10 +116,10 @@ static const symbol s_5_3[2] = { 'u', 'u' };
|
||||
|
||||
static const struct among a_5[4] =
|
||||
{
|
||||
/* 0 */ { 2, s_5_0, -1, -1, 0},
|
||||
/* 1 */ { 2, s_5_1, -1, -1, 0},
|
||||
/* 2 */ { 2, s_5_2, -1, -1, 0},
|
||||
/* 3 */ { 2, s_5_3, -1, -1, 0}
|
||||
{ 2, s_5_0, -1, -1, 0},
|
||||
{ 2, s_5_1, -1, -1, 0},
|
||||
{ 2, s_5_2, -1, -1, 0},
|
||||
{ 2, s_5_3, -1, -1, 0}
|
||||
};
|
||||
|
||||
static const unsigned char g_v[] = { 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128 };
|
||||
@ -144,47 +144,46 @@ static const symbol s_12[] = { 'h', 'e', 'i', 'd' };
|
||||
static const symbol s_13[] = { 'e', 'n' };
|
||||
static const symbol s_14[] = { 'i', 'g' };
|
||||
|
||||
static int r_prelude(struct SN_env * z) { /* forwardmode */
|
||||
static int r_prelude(struct SN_env * z) {
|
||||
int among_var;
|
||||
{ int c_test1 = z->c; /* test, line 42 */
|
||||
/* repeat, line 42 */
|
||||
|
||||
while(1) { int c2 = z->c;
|
||||
z->bra = z->c; /* [, line 43 */
|
||||
if (z->c + 1 >= z->l || z->p[z->c + 1] >> 5 != 5 || !((340306450 >> (z->p[z->c + 1] & 0x1f)) & 1)) among_var = 6; else /* substring, line 43 */
|
||||
{ int c_test1 = z->c;
|
||||
while(1) {
|
||||
int c2 = z->c;
|
||||
z->bra = z->c;
|
||||
if (z->c + 1 >= z->l || z->p[z->c + 1] >> 5 != 5 || !((340306450 >> (z->p[z->c + 1] & 0x1f)) & 1)) among_var = 6; else
|
||||
among_var = find_among(z, a_0, 11);
|
||||
if (!(among_var)) goto lab0;
|
||||
z->ket = z->c; /* ], line 43 */
|
||||
switch (among_var) { /* among, line 43 */
|
||||
z->ket = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_from_s(z, 1, s_0); /* <-, line 45 */
|
||||
{ int ret = slice_from_s(z, 1, s_0);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 1, s_1); /* <-, line 47 */
|
||||
{ int ret = slice_from_s(z, 1, s_1);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_from_s(z, 1, s_2); /* <-, line 49 */
|
||||
{ int ret = slice_from_s(z, 1, s_2);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
{ int ret = slice_from_s(z, 1, s_3); /* <-, line 51 */
|
||||
{ int ret = slice_from_s(z, 1, s_3);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
{ int ret = slice_from_s(z, 1, s_4); /* <-, line 53 */
|
||||
{ int ret = slice_from_s(z, 1, s_4);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 6:
|
||||
{ int ret = skip_utf8(z->p, z->c, 0, z->l, 1);
|
||||
{ int ret = skip_utf8(z->p, z->c, z->l, 1);
|
||||
if (ret < 0) goto lab0;
|
||||
z->c = ret; /* next, line 54 */
|
||||
z->c = ret;
|
||||
}
|
||||
break;
|
||||
}
|
||||
@ -195,39 +194,38 @@ static int r_prelude(struct SN_env * z) { /* forwardmode */
|
||||
}
|
||||
z->c = c_test1;
|
||||
}
|
||||
{ int c3 = z->c; /* try, line 57 */
|
||||
z->bra = z->c; /* [, line 57 */
|
||||
if (z->c == z->l || z->p[z->c] != 'y') { z->c = c3; goto lab1; } /* literal, line 57 */
|
||||
{ int c3 = z->c;
|
||||
z->bra = z->c;
|
||||
if (z->c == z->l || z->p[z->c] != 'y') { z->c = c3; goto lab1; }
|
||||
z->c++;
|
||||
z->ket = z->c; /* ], line 57 */
|
||||
{ int ret = slice_from_s(z, 1, s_5); /* <-, line 57 */
|
||||
z->ket = z->c;
|
||||
{ int ret = slice_from_s(z, 1, s_5);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
lab1:
|
||||
;
|
||||
}
|
||||
/* repeat, line 58 */
|
||||
|
||||
while(1) { int c4 = z->c;
|
||||
while(1) { /* goto, line 58 */
|
||||
while(1) {
|
||||
int c4 = z->c;
|
||||
while(1) {
|
||||
int c5 = z->c;
|
||||
if (in_grouping_U(z, g_v, 97, 232, 0)) goto lab3; /* grouping v, line 59 */
|
||||
z->bra = z->c; /* [, line 59 */
|
||||
{ int c6 = z->c; /* or, line 59 */
|
||||
if (z->c == z->l || z->p[z->c] != 'i') goto lab5; /* literal, line 59 */
|
||||
if (in_grouping_U(z, g_v, 97, 232, 0)) goto lab3;
|
||||
z->bra = z->c;
|
||||
{ int c6 = z->c;
|
||||
if (z->c == z->l || z->p[z->c] != 'i') goto lab5;
|
||||
z->c++;
|
||||
z->ket = z->c; /* ], line 59 */
|
||||
if (in_grouping_U(z, g_v, 97, 232, 0)) goto lab5; /* grouping v, line 59 */
|
||||
{ int ret = slice_from_s(z, 1, s_6); /* <-, line 59 */
|
||||
z->ket = z->c;
|
||||
if (in_grouping_U(z, g_v, 97, 232, 0)) goto lab5;
|
||||
{ int ret = slice_from_s(z, 1, s_6);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
goto lab4;
|
||||
lab5:
|
||||
z->c = c6;
|
||||
if (z->c == z->l || z->p[z->c] != 'y') goto lab3; /* literal, line 60 */
|
||||
if (z->c == z->l || z->p[z->c] != 'y') goto lab3;
|
||||
z->c++;
|
||||
z->ket = z->c; /* ], line 60 */
|
||||
{ int ret = slice_from_s(z, 1, s_7); /* <-, line 60 */
|
||||
z->ket = z->c;
|
||||
{ int ret = slice_from_s(z, 1, s_7);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
}
|
||||
@ -236,9 +234,9 @@ static int r_prelude(struct SN_env * z) { /* forwardmode */
|
||||
break;
|
||||
lab3:
|
||||
z->c = c5;
|
||||
{ int ret = skip_utf8(z->p, z->c, 0, z->l, 1);
|
||||
{ int ret = skip_utf8(z->p, z->c, z->l, 1);
|
||||
if (ret < 0) goto lab2;
|
||||
z->c = ret; /* goto, line 58 */
|
||||
z->c = ret;
|
||||
}
|
||||
}
|
||||
continue;
|
||||
@ -249,63 +247,62 @@ static int r_prelude(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_mark_regions(struct SN_env * z) { /* forwardmode */
|
||||
z->I[0] = z->l; /* $p1 = <integer expression>, line 66 */
|
||||
z->I[1] = z->l; /* $p2 = <integer expression>, line 67 */
|
||||
{ /* gopast */ /* grouping v, line 69 */
|
||||
static int r_mark_regions(struct SN_env * z) {
|
||||
z->I[1] = z->l;
|
||||
z->I[0] = z->l;
|
||||
{
|
||||
int ret = out_grouping_U(z, g_v, 97, 232, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
{ /* gopast */ /* non v, line 69 */
|
||||
{
|
||||
int ret = in_grouping_U(z, g_v, 97, 232, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[0] = z->c; /* setmark p1, line 69 */
|
||||
/* try, line 70 */
|
||||
if (!(z->I[0] < 3)) goto lab0; /* $(<integer expression> < <integer expression>), line 70 */
|
||||
z->I[0] = 3; /* $p1 = <integer expression>, line 70 */
|
||||
z->I[1] = z->c;
|
||||
|
||||
if (!(z->I[1] < 3)) goto lab0;
|
||||
z->I[1] = 3;
|
||||
lab0:
|
||||
{ /* gopast */ /* grouping v, line 71 */
|
||||
{
|
||||
int ret = out_grouping_U(z, g_v, 97, 232, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
{ /* gopast */ /* non v, line 71 */
|
||||
{
|
||||
int ret = in_grouping_U(z, g_v, 97, 232, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[1] = z->c; /* setmark p2, line 71 */
|
||||
z->I[0] = z->c;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_postlude(struct SN_env * z) { /* forwardmode */
|
||||
static int r_postlude(struct SN_env * z) {
|
||||
int among_var;
|
||||
/* repeat, line 75 */
|
||||
|
||||
while(1) { int c1 = z->c;
|
||||
z->bra = z->c; /* [, line 77 */
|
||||
if (z->c >= z->l || (z->p[z->c + 0] != 73 && z->p[z->c + 0] != 89)) among_var = 3; else /* substring, line 77 */
|
||||
while(1) {
|
||||
int c1 = z->c;
|
||||
z->bra = z->c;
|
||||
if (z->c >= z->l || (z->p[z->c + 0] != 73 && z->p[z->c + 0] != 89)) among_var = 3; else
|
||||
among_var = find_among(z, a_1, 3);
|
||||
if (!(among_var)) goto lab0;
|
||||
z->ket = z->c; /* ], line 77 */
|
||||
switch (among_var) { /* among, line 77 */
|
||||
z->ket = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_from_s(z, 1, s_8); /* <-, line 78 */
|
||||
{ int ret = slice_from_s(z, 1, s_8);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 1, s_9); /* <-, line 79 */
|
||||
{ int ret = slice_from_s(z, 1, s_9);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = skip_utf8(z->p, z->c, 0, z->l, 1);
|
||||
{ int ret = skip_utf8(z->p, z->c, z->l, 1);
|
||||
if (ret < 0) goto lab0;
|
||||
z->c = ret; /* next, line 80 */
|
||||
z->c = ret;
|
||||
}
|
||||
break;
|
||||
}
|
||||
@ -317,111 +314,111 @@ static int r_postlude(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_R1(struct SN_env * z) { /* backwardmode */
|
||||
if (!(z->I[0] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 87 */
|
||||
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) { /* backwardmode */
|
||||
if (!(z->I[1] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 88 */
|
||||
static int r_R2(struct SN_env * z) {
|
||||
if (!(z->I[0] <= z->c)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_undouble(struct SN_env * z) { /* backwardmode */
|
||||
{ int m_test1 = z->l - z->c; /* test, line 91 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1050640 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* among, line 91 */
|
||||
static int r_undouble(struct SN_env * z) {
|
||||
{ int m_test1 = z->l - z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1050640 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
|
||||
if (!(find_among_b(z, a_2, 3))) return 0;
|
||||
z->c = z->l - m_test1;
|
||||
}
|
||||
z->ket = z->c; /* [, line 91 */
|
||||
{ int ret = skip_utf8(z->p, z->c, z->lb, 0, -1);
|
||||
z->ket = z->c;
|
||||
{ int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c = ret; /* next, line 91 */
|
||||
z->c = ret;
|
||||
}
|
||||
z->bra = z->c; /* ], line 91 */
|
||||
{ int ret = slice_del(z); /* delete, line 91 */
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_e_ending(struct SN_env * z) { /* backwardmode */
|
||||
z->B[0] = 0; /* unset e_found, line 95 */
|
||||
z->ket = z->c; /* [, line 96 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') return 0; /* literal, line 96 */
|
||||
static int r_e_ending(struct SN_env * z) {
|
||||
z->I[2] = 0;
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') return 0;
|
||||
z->c--;
|
||||
z->bra = z->c; /* ], line 96 */
|
||||
{ int ret = r_R1(z); /* call R1, line 96 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int m_test1 = z->l - z->c; /* test, line 96 */
|
||||
if (out_grouping_b_U(z, g_v, 97, 232, 0)) return 0; /* non v, line 96 */
|
||||
{ int m_test1 = z->l - z->c;
|
||||
if (out_grouping_b_U(z, g_v, 97, 232, 0)) return 0;
|
||||
z->c = z->l - m_test1;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 96 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->B[0] = 1; /* set e_found, line 97 */
|
||||
{ int ret = r_undouble(z); /* call undouble, line 98 */
|
||||
z->I[2] = 1;
|
||||
{ int ret = r_undouble(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_en_ending(struct SN_env * z) { /* backwardmode */
|
||||
{ int ret = r_R1(z); /* call R1, line 102 */
|
||||
static int r_en_ending(struct SN_env * z) {
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int m1 = z->l - z->c; (void)m1; /* and, line 102 */
|
||||
if (out_grouping_b_U(z, g_v, 97, 232, 0)) return 0; /* non v, line 102 */
|
||||
{ int m1 = z->l - z->c; (void)m1;
|
||||
if (out_grouping_b_U(z, g_v, 97, 232, 0)) return 0;
|
||||
z->c = z->l - m1;
|
||||
{ int m2 = z->l - z->c; (void)m2; /* not, line 102 */
|
||||
if (!(eq_s_b(z, 3, s_10))) goto lab0; /* literal, line 102 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
if (!(eq_s_b(z, 3, s_10))) goto lab0;
|
||||
return 0;
|
||||
lab0:
|
||||
z->c = z->l - m2;
|
||||
}
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 102 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int ret = r_undouble(z); /* call undouble, line 103 */
|
||||
{ int ret = r_undouble(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
|
||||
static int r_standard_suffix(struct SN_env * z) {
|
||||
int among_var;
|
||||
{ int m1 = z->l - z->c; (void)m1; /* do, line 107 */
|
||||
z->ket = z->c; /* [, line 108 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((540704 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab0; /* substring, line 108 */
|
||||
{ int m1 = z->l - z->c; (void)m1;
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((540704 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab0;
|
||||
among_var = find_among_b(z, a_3, 5);
|
||||
if (!(among_var)) goto lab0;
|
||||
z->bra = z->c; /* ], line 108 */
|
||||
switch (among_var) { /* among, line 108 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = r_R1(z); /* call R1, line 110 */
|
||||
{ int ret = r_R1(z);
|
||||
if (ret == 0) goto lab0;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int ret = slice_from_s(z, 4, s_11); /* <-, line 110 */
|
||||
{ int ret = slice_from_s(z, 4, s_11);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = r_en_ending(z); /* call en_ending, line 113 */
|
||||
{ int ret = r_en_ending(z);
|
||||
if (ret == 0) goto lab0;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = r_R1(z); /* call R1, line 116 */
|
||||
{ int ret = r_R1(z);
|
||||
if (ret == 0) goto lab0;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
if (out_grouping_b_U(z, g_v_j, 97, 232, 0)) goto lab0; /* non v_j, line 116 */
|
||||
{ int ret = slice_del(z); /* delete, line 116 */
|
||||
if (out_grouping_b_U(z, g_v_j, 97, 232, 0)) goto lab0;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -429,77 +426,77 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
|
||||
lab0:
|
||||
z->c = z->l - m1;
|
||||
}
|
||||
{ int m2 = z->l - z->c; (void)m2; /* do, line 120 */
|
||||
{ int ret = r_e_ending(z); /* call e_ending, line 120 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
{ int ret = r_e_ending(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m2;
|
||||
}
|
||||
{ int m3 = z->l - z->c; (void)m3; /* do, line 122 */
|
||||
z->ket = z->c; /* [, line 122 */
|
||||
if (!(eq_s_b(z, 4, s_12))) goto lab1; /* literal, line 122 */
|
||||
z->bra = z->c; /* ], line 122 */
|
||||
{ int ret = r_R2(z); /* call R2, line 122 */
|
||||
{ int m3 = z->l - z->c; (void)m3;
|
||||
z->ket = z->c;
|
||||
if (!(eq_s_b(z, 4, s_12))) goto lab1;
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R2(z);
|
||||
if (ret == 0) goto lab1;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int m4 = z->l - z->c; (void)m4; /* not, line 122 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'c') goto lab2; /* literal, line 122 */
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'c') goto lab2;
|
||||
z->c--;
|
||||
goto lab1;
|
||||
lab2:
|
||||
z->c = z->l - m4;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 122 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->ket = z->c; /* [, line 123 */
|
||||
if (!(eq_s_b(z, 2, s_13))) goto lab1; /* literal, line 123 */
|
||||
z->bra = z->c; /* ], line 123 */
|
||||
{ int ret = r_en_ending(z); /* call en_ending, line 123 */
|
||||
z->ket = z->c;
|
||||
if (!(eq_s_b(z, 2, s_13))) goto lab1;
|
||||
z->bra = z->c;
|
||||
{ int ret = r_en_ending(z);
|
||||
if (ret == 0) goto lab1;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
lab1:
|
||||
z->c = z->l - m3;
|
||||
}
|
||||
{ int m5 = z->l - z->c; (void)m5; /* do, line 126 */
|
||||
z->ket = z->c; /* [, line 127 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((264336 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab3; /* substring, line 127 */
|
||||
{ int m5 = z->l - z->c; (void)m5;
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((264336 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab3;
|
||||
among_var = find_among_b(z, a_4, 6);
|
||||
if (!(among_var)) goto lab3;
|
||||
z->bra = z->c; /* ], line 127 */
|
||||
switch (among_var) { /* among, line 127 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = r_R2(z); /* call R2, line 129 */
|
||||
{ int ret = r_R2(z);
|
||||
if (ret == 0) goto lab3;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 129 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int m6 = z->l - z->c; (void)m6; /* or, line 130 */
|
||||
z->ket = z->c; /* [, line 130 */
|
||||
if (!(eq_s_b(z, 2, s_14))) goto lab5; /* literal, line 130 */
|
||||
z->bra = z->c; /* ], line 130 */
|
||||
{ int ret = r_R2(z); /* call R2, line 130 */
|
||||
{ int m6 = z->l - z->c; (void)m6;
|
||||
z->ket = z->c;
|
||||
if (!(eq_s_b(z, 2, s_14))) goto lab5;
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R2(z);
|
||||
if (ret == 0) goto lab5;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int m7 = z->l - z->c; (void)m7; /* not, line 130 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab6; /* literal, line 130 */
|
||||
{ int m7 = z->l - z->c; (void)m7;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab6;
|
||||
z->c--;
|
||||
goto lab5;
|
||||
lab6:
|
||||
z->c = z->l - m7;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 130 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
goto lab4;
|
||||
lab5:
|
||||
z->c = z->l - m6;
|
||||
{ int ret = r_undouble(z); /* call undouble, line 130 */
|
||||
{ int ret = r_undouble(z);
|
||||
if (ret == 0) goto lab3;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
@ -507,50 +504,50 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
|
||||
lab4:
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = r_R2(z); /* call R2, line 133 */
|
||||
{ int ret = r_R2(z);
|
||||
if (ret == 0) goto lab3;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int m8 = z->l - z->c; (void)m8; /* not, line 133 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab7; /* literal, line 133 */
|
||||
{ int m8 = z->l - z->c; (void)m8;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab7;
|
||||
z->c--;
|
||||
goto lab3;
|
||||
lab7:
|
||||
z->c = z->l - m8;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 133 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = r_R2(z); /* call R2, line 136 */
|
||||
{ int ret = r_R2(z);
|
||||
if (ret == 0) goto lab3;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 136 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int ret = r_e_ending(z); /* call e_ending, line 136 */
|
||||
{ int ret = r_e_ending(z);
|
||||
if (ret == 0) goto lab3;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
{ int ret = r_R2(z); /* call R2, line 139 */
|
||||
{ int ret = r_R2(z);
|
||||
if (ret == 0) goto lab3;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 139 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
{ int ret = r_R2(z); /* call R2, line 142 */
|
||||
{ int ret = r_R2(z);
|
||||
if (ret == 0) goto lab3;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
if (!(z->B[0])) goto lab3; /* Boolean test e_found, line 142 */
|
||||
{ int ret = slice_del(z); /* delete, line 142 */
|
||||
if (!(z->I[2])) goto lab3;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -558,21 +555,21 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
|
||||
lab3:
|
||||
z->c = z->l - m5;
|
||||
}
|
||||
{ int m9 = z->l - z->c; (void)m9; /* do, line 146 */
|
||||
if (out_grouping_b_U(z, g_v_I, 73, 232, 0)) goto lab8; /* non v_I, line 147 */
|
||||
{ int m_test10 = z->l - z->c; /* test, line 148 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((2129954 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab8; /* among, line 149 */
|
||||
{ int m9 = z->l - z->c; (void)m9;
|
||||
if (out_grouping_b_U(z, g_v_I, 73, 232, 0)) goto lab8;
|
||||
{ int m_test10 = z->l - z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((2129954 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab8;
|
||||
if (!(find_among_b(z, a_5, 4))) goto lab8;
|
||||
if (out_grouping_b_U(z, g_v, 97, 232, 0)) goto lab8; /* non v, line 150 */
|
||||
if (out_grouping_b_U(z, g_v, 97, 232, 0)) goto lab8;
|
||||
z->c = z->l - m_test10;
|
||||
}
|
||||
z->ket = z->c; /* [, line 152 */
|
||||
{ int ret = skip_utf8(z->p, z->c, z->lb, 0, -1);
|
||||
z->ket = z->c;
|
||||
{ int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
|
||||
if (ret < 0) goto lab8;
|
||||
z->c = ret; /* next, line 152 */
|
||||
z->c = ret;
|
||||
}
|
||||
z->bra = z->c; /* ], line 152 */
|
||||
{ int ret = slice_del(z); /* delete, line 152 */
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
lab8:
|
||||
@ -581,28 +578,28 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern int dutch_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
{ int c1 = z->c; /* do, line 159 */
|
||||
{ int ret = r_prelude(z); /* call prelude, line 159 */
|
||||
extern int dutch_UTF_8_stem(struct SN_env * z) {
|
||||
{ int c1 = z->c;
|
||||
{ int ret = r_prelude(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = c1;
|
||||
}
|
||||
{ int c2 = z->c; /* do, line 160 */
|
||||
{ int ret = r_mark_regions(z); /* call mark_regions, line 160 */
|
||||
{ int c2 = z->c;
|
||||
{ int ret = r_mark_regions(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = c2;
|
||||
}
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 161 */
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
/* do, line 162 */
|
||||
{ int ret = r_standard_suffix(z); /* call standard_suffix, line 162 */
|
||||
|
||||
{ int ret = r_standard_suffix(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->lb;
|
||||
{ int c3 = z->c; /* do, line 163 */
|
||||
{ int ret = r_postlude(z); /* call postlude, line 163 */
|
||||
{ int c3 = z->c;
|
||||
{ int ret = r_postlude(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = c3;
|
||||
@ -610,7 +607,7 @@ extern int dutch_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern struct SN_env * dutch_UTF_8_create_env(void) { return SN_create_env(0, 2, 1); }
|
||||
extern struct SN_env * dutch_UTF_8_create_env(void) { return SN_create_env(0, 3); }
|
||||
|
||||
extern void dutch_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#include "header.h"
|
||||
|
||||
@ -45,16 +45,16 @@ static const symbol s_0_9[3] = { 'k', 0xC3, 0xB6 };
|
||||
|
||||
static const struct among a_0[10] =
|
||||
{
|
||||
/* 0 */ { 2, s_0_0, -1, 1, 0},
|
||||
/* 1 */ { 3, s_0_1, -1, 2, 0},
|
||||
/* 2 */ { 4, s_0_2, -1, 1, 0},
|
||||
/* 3 */ { 3, s_0_3, -1, 1, 0},
|
||||
/* 4 */ { 3, s_0_4, -1, 1, 0},
|
||||
/* 5 */ { 4, s_0_5, -1, 1, 0},
|
||||
/* 6 */ { 6, s_0_6, -1, 1, 0},
|
||||
/* 7 */ { 2, s_0_7, -1, 1, 0},
|
||||
/* 8 */ { 3, s_0_8, -1, 1, 0},
|
||||
/* 9 */ { 3, s_0_9, -1, 1, 0}
|
||||
{ 2, s_0_0, -1, 1, 0},
|
||||
{ 3, s_0_1, -1, 2, 0},
|
||||
{ 4, s_0_2, -1, 1, 0},
|
||||
{ 3, s_0_3, -1, 1, 0},
|
||||
{ 3, s_0_4, -1, 1, 0},
|
||||
{ 4, s_0_5, -1, 1, 0},
|
||||
{ 6, s_0_6, -1, 1, 0},
|
||||
{ 2, s_0_7, -1, 1, 0},
|
||||
{ 3, s_0_8, -1, 1, 0},
|
||||
{ 3, s_0_9, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_1_0[3] = { 'l', 'l', 'a' };
|
||||
@ -66,12 +66,12 @@ static const symbol s_1_5[3] = { 's', 't', 'a' };
|
||||
|
||||
static const struct among a_1[6] =
|
||||
{
|
||||
/* 0 */ { 3, s_1_0, -1, -1, 0},
|
||||
/* 1 */ { 2, s_1_1, -1, -1, 0},
|
||||
/* 2 */ { 3, s_1_2, -1, -1, 0},
|
||||
/* 3 */ { 2, s_1_3, -1, -1, 0},
|
||||
/* 4 */ { 3, s_1_4, 3, -1, 0},
|
||||
/* 5 */ { 3, s_1_5, 3, -1, 0}
|
||||
{ 3, s_1_0, -1, -1, 0},
|
||||
{ 2, s_1_1, -1, -1, 0},
|
||||
{ 3, s_1_2, -1, -1, 0},
|
||||
{ 2, s_1_3, -1, -1, 0},
|
||||
{ 3, s_1_4, 3, -1, 0},
|
||||
{ 3, s_1_5, 3, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_2_0[4] = { 'l', 'l', 0xC3, 0xA4 };
|
||||
@ -83,12 +83,12 @@ static const symbol s_2_5[4] = { 's', 't', 0xC3, 0xA4 };
|
||||
|
||||
static const struct among a_2[6] =
|
||||
{
|
||||
/* 0 */ { 4, s_2_0, -1, -1, 0},
|
||||
/* 1 */ { 3, s_2_1, -1, -1, 0},
|
||||
/* 2 */ { 4, s_2_2, -1, -1, 0},
|
||||
/* 3 */ { 3, s_2_3, -1, -1, 0},
|
||||
/* 4 */ { 4, s_2_4, 3, -1, 0},
|
||||
/* 5 */ { 4, s_2_5, 3, -1, 0}
|
||||
{ 4, s_2_0, -1, -1, 0},
|
||||
{ 3, s_2_1, -1, -1, 0},
|
||||
{ 4, s_2_2, -1, -1, 0},
|
||||
{ 3, s_2_3, -1, -1, 0},
|
||||
{ 4, s_2_4, 3, -1, 0},
|
||||
{ 4, s_2_5, 3, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_3_0[3] = { 'l', 'l', 'e' };
|
||||
@ -96,8 +96,8 @@ static const symbol s_3_1[3] = { 'i', 'n', 'e' };
|
||||
|
||||
static const struct among a_3[2] =
|
||||
{
|
||||
/* 0 */ { 3, s_3_0, -1, -1, 0},
|
||||
/* 1 */ { 3, s_3_1, -1, -1, 0}
|
||||
{ 3, s_3_0, -1, -1, 0},
|
||||
{ 3, s_3_1, -1, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_4_0[3] = { 'n', 's', 'a' };
|
||||
@ -112,15 +112,15 @@ static const symbol s_4_8[4] = { 'n', 's', 0xC3, 0xA4 };
|
||||
|
||||
static const struct among a_4[9] =
|
||||
{
|
||||
/* 0 */ { 3, s_4_0, -1, 3, 0},
|
||||
/* 1 */ { 3, s_4_1, -1, 3, 0},
|
||||
/* 2 */ { 3, s_4_2, -1, 3, 0},
|
||||
/* 3 */ { 2, s_4_3, -1, 2, 0},
|
||||
/* 4 */ { 2, s_4_4, -1, 1, 0},
|
||||
/* 5 */ { 2, s_4_5, -1, 4, 0},
|
||||
/* 6 */ { 2, s_4_6, -1, 6, 0},
|
||||
/* 7 */ { 3, s_4_7, -1, 5, 0},
|
||||
/* 8 */ { 4, s_4_8, -1, 3, 0}
|
||||
{ 3, s_4_0, -1, 3, 0},
|
||||
{ 3, s_4_1, -1, 3, 0},
|
||||
{ 3, s_4_2, -1, 3, 0},
|
||||
{ 2, s_4_3, -1, 2, 0},
|
||||
{ 2, s_4_4, -1, 1, 0},
|
||||
{ 2, s_4_5, -1, 4, 0},
|
||||
{ 2, s_4_6, -1, 6, 0},
|
||||
{ 3, s_4_7, -1, 5, 0},
|
||||
{ 4, s_4_8, -1, 3, 0}
|
||||
};
|
||||
|
||||
static const symbol s_5_0[2] = { 'a', 'a' };
|
||||
@ -133,13 +133,13 @@ static const symbol s_5_6[4] = { 0xC3, 0xB6, 0xC3, 0xB6 };
|
||||
|
||||
static const struct among a_5[7] =
|
||||
{
|
||||
/* 0 */ { 2, s_5_0, -1, -1, 0},
|
||||
/* 1 */ { 2, s_5_1, -1, -1, 0},
|
||||
/* 2 */ { 2, s_5_2, -1, -1, 0},
|
||||
/* 3 */ { 2, s_5_3, -1, -1, 0},
|
||||
/* 4 */ { 2, s_5_4, -1, -1, 0},
|
||||
/* 5 */ { 4, s_5_5, -1, -1, 0},
|
||||
/* 6 */ { 4, s_5_6, -1, -1, 0}
|
||||
{ 2, s_5_0, -1, -1, 0},
|
||||
{ 2, s_5_1, -1, -1, 0},
|
||||
{ 2, s_5_2, -1, -1, 0},
|
||||
{ 2, s_5_3, -1, -1, 0},
|
||||
{ 2, s_5_4, -1, -1, 0},
|
||||
{ 4, s_5_5, -1, -1, 0},
|
||||
{ 4, s_5_6, -1, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_6_0[1] = { 'a' };
|
||||
@ -175,36 +175,36 @@ static const symbol s_6_29[4] = { 't', 't', 0xC3, 0xA4 };
|
||||
|
||||
static const struct among a_6[30] =
|
||||
{
|
||||
/* 0 */ { 1, s_6_0, -1, 8, 0},
|
||||
/* 1 */ { 3, s_6_1, 0, -1, 0},
|
||||
/* 2 */ { 2, s_6_2, 0, -1, 0},
|
||||
/* 3 */ { 3, s_6_3, 0, -1, 0},
|
||||
/* 4 */ { 2, s_6_4, 0, -1, 0},
|
||||
/* 5 */ { 3, s_6_5, 4, -1, 0},
|
||||
/* 6 */ { 3, s_6_6, 4, -1, 0},
|
||||
/* 7 */ { 3, s_6_7, 4, 2, 0},
|
||||
/* 8 */ { 3, s_6_8, -1, -1, 0},
|
||||
/* 9 */ { 3, s_6_9, -1, -1, 0},
|
||||
/* 10 */ { 3, s_6_10, -1, -1, 0},
|
||||
/* 11 */ { 1, s_6_11, -1, 7, 0},
|
||||
/* 12 */ { 3, s_6_12, 11, 1, 0},
|
||||
/* 13 */ { 3, s_6_13, 11, -1, r_VI},
|
||||
/* 14 */ { 4, s_6_14, 11, -1, r_LONG},
|
||||
/* 15 */ { 3, s_6_15, 11, 2, 0},
|
||||
/* 16 */ { 4, s_6_16, 11, -1, r_VI},
|
||||
/* 17 */ { 3, s_6_17, 11, 3, 0},
|
||||
/* 18 */ { 4, s_6_18, 11, -1, r_VI},
|
||||
/* 19 */ { 3, s_6_19, 11, 4, 0},
|
||||
/* 20 */ { 4, s_6_20, 11, 5, 0},
|
||||
/* 21 */ { 4, s_6_21, 11, 6, 0},
|
||||
/* 22 */ { 2, s_6_22, -1, 8, 0},
|
||||
/* 23 */ { 4, s_6_23, 22, -1, 0},
|
||||
/* 24 */ { 3, s_6_24, 22, -1, 0},
|
||||
/* 25 */ { 4, s_6_25, 22, -1, 0},
|
||||
/* 26 */ { 3, s_6_26, 22, -1, 0},
|
||||
/* 27 */ { 4, s_6_27, 26, -1, 0},
|
||||
/* 28 */ { 4, s_6_28, 26, -1, 0},
|
||||
/* 29 */ { 4, s_6_29, 26, 2, 0}
|
||||
{ 1, s_6_0, -1, 8, 0},
|
||||
{ 3, s_6_1, 0, -1, 0},
|
||||
{ 2, s_6_2, 0, -1, 0},
|
||||
{ 3, s_6_3, 0, -1, 0},
|
||||
{ 2, s_6_4, 0, -1, 0},
|
||||
{ 3, s_6_5, 4, -1, 0},
|
||||
{ 3, s_6_6, 4, -1, 0},
|
||||
{ 3, s_6_7, 4, 2, 0},
|
||||
{ 3, s_6_8, -1, -1, 0},
|
||||
{ 3, s_6_9, -1, -1, 0},
|
||||
{ 3, s_6_10, -1, -1, 0},
|
||||
{ 1, s_6_11, -1, 7, 0},
|
||||
{ 3, s_6_12, 11, 1, 0},
|
||||
{ 3, s_6_13, 11, -1, r_VI},
|
||||
{ 4, s_6_14, 11, -1, r_LONG},
|
||||
{ 3, s_6_15, 11, 2, 0},
|
||||
{ 4, s_6_16, 11, -1, r_VI},
|
||||
{ 3, s_6_17, 11, 3, 0},
|
||||
{ 4, s_6_18, 11, -1, r_VI},
|
||||
{ 3, s_6_19, 11, 4, 0},
|
||||
{ 4, s_6_20, 11, 5, 0},
|
||||
{ 4, s_6_21, 11, 6, 0},
|
||||
{ 2, s_6_22, -1, 8, 0},
|
||||
{ 4, s_6_23, 22, -1, 0},
|
||||
{ 3, s_6_24, 22, -1, 0},
|
||||
{ 4, s_6_25, 22, -1, 0},
|
||||
{ 3, s_6_26, 22, -1, 0},
|
||||
{ 4, s_6_27, 26, -1, 0},
|
||||
{ 4, s_6_28, 26, -1, 0},
|
||||
{ 4, s_6_29, 26, 2, 0}
|
||||
};
|
||||
|
||||
static const symbol s_7_0[3] = { 'e', 'j', 'a' };
|
||||
@ -224,20 +224,20 @@ static const symbol s_7_13[5] = { 'i', 'm', 'p', 0xC3, 0xA4 };
|
||||
|
||||
static const struct among a_7[14] =
|
||||
{
|
||||
/* 0 */ { 3, s_7_0, -1, -1, 0},
|
||||
/* 1 */ { 3, s_7_1, -1, 1, 0},
|
||||
/* 2 */ { 4, s_7_2, 1, -1, 0},
|
||||
/* 3 */ { 3, s_7_3, -1, 1, 0},
|
||||
/* 4 */ { 4, s_7_4, 3, -1, 0},
|
||||
/* 5 */ { 3, s_7_5, -1, 1, 0},
|
||||
/* 6 */ { 4, s_7_6, 5, -1, 0},
|
||||
/* 7 */ { 3, s_7_7, -1, 1, 0},
|
||||
/* 8 */ { 4, s_7_8, 7, -1, 0},
|
||||
/* 9 */ { 4, s_7_9, -1, -1, 0},
|
||||
/* 10 */ { 4, s_7_10, -1, 1, 0},
|
||||
/* 11 */ { 5, s_7_11, 10, -1, 0},
|
||||
/* 12 */ { 4, s_7_12, -1, 1, 0},
|
||||
/* 13 */ { 5, s_7_13, 12, -1, 0}
|
||||
{ 3, s_7_0, -1, -1, 0},
|
||||
{ 3, s_7_1, -1, 1, 0},
|
||||
{ 4, s_7_2, 1, -1, 0},
|
||||
{ 3, s_7_3, -1, 1, 0},
|
||||
{ 4, s_7_4, 3, -1, 0},
|
||||
{ 3, s_7_5, -1, 1, 0},
|
||||
{ 4, s_7_6, 5, -1, 0},
|
||||
{ 3, s_7_7, -1, 1, 0},
|
||||
{ 4, s_7_8, 7, -1, 0},
|
||||
{ 4, s_7_9, -1, -1, 0},
|
||||
{ 4, s_7_10, -1, 1, 0},
|
||||
{ 5, s_7_11, 10, -1, 0},
|
||||
{ 4, s_7_12, -1, 1, 0},
|
||||
{ 5, s_7_13, 12, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_8_0[1] = { 'i' };
|
||||
@ -245,8 +245,8 @@ static const symbol s_8_1[1] = { 'j' };
|
||||
|
||||
static const struct among a_8[2] =
|
||||
{
|
||||
/* 0 */ { 1, s_8_0, -1, -1, 0},
|
||||
/* 1 */ { 1, s_8_1, -1, -1, 0}
|
||||
{ 1, s_8_0, -1, -1, 0},
|
||||
{ 1, s_8_1, -1, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_9_0[3] = { 'm', 'm', 'a' };
|
||||
@ -254,8 +254,8 @@ static const symbol s_9_1[4] = { 'i', 'm', 'm', 'a' };
|
||||
|
||||
static const struct among a_9[2] =
|
||||
{
|
||||
/* 0 */ { 3, s_9_0, -1, 1, 0},
|
||||
/* 1 */ { 4, s_9_1, 0, -1, 0}
|
||||
{ 3, s_9_0, -1, 1, 0},
|
||||
{ 4, s_9_1, 0, -1, 0}
|
||||
};
|
||||
|
||||
static const unsigned char g_AEI[] = { 17, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8 };
|
||||
@ -276,118 +276,118 @@ static const symbol s_4[] = { 'i', 'e' };
|
||||
static const symbol s_5[] = { 'p', 'o' };
|
||||
static const symbol s_6[] = { 'p', 'o' };
|
||||
|
||||
static int r_mark_regions(struct SN_env * z) { /* forwardmode */
|
||||
z->I[0] = z->l; /* $p1 = <integer expression>, line 44 */
|
||||
z->I[1] = z->l; /* $p2 = <integer expression>, line 45 */
|
||||
if (out_grouping_U(z, g_V1, 97, 246, 1) < 0) return 0; /* goto */ /* grouping V1, line 47 */
|
||||
{ /* gopast */ /* non V1, line 47 */
|
||||
static int r_mark_regions(struct SN_env * z) {
|
||||
z->I[1] = z->l;
|
||||
z->I[0] = z->l;
|
||||
if (out_grouping_U(z, g_V1, 97, 246, 1) < 0) return 0;
|
||||
{
|
||||
int ret = in_grouping_U(z, g_V1, 97, 246, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[0] = z->c; /* setmark p1, line 47 */
|
||||
if (out_grouping_U(z, g_V1, 97, 246, 1) < 0) return 0; /* goto */ /* grouping V1, line 48 */
|
||||
{ /* gopast */ /* non V1, line 48 */
|
||||
z->I[1] = z->c;
|
||||
if (out_grouping_U(z, g_V1, 97, 246, 1) < 0) return 0;
|
||||
{
|
||||
int ret = in_grouping_U(z, g_V1, 97, 246, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[1] = z->c; /* setmark p2, line 48 */
|
||||
z->I[0] = z->c;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_R2(struct SN_env * z) { /* backwardmode */
|
||||
if (!(z->I[1] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 53 */
|
||||
static int r_R2(struct SN_env * z) {
|
||||
if (!(z->I[0] <= z->c)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_particle_etc(struct SN_env * z) { /* backwardmode */
|
||||
static int r_particle_etc(struct SN_env * z) {
|
||||
int among_var;
|
||||
|
||||
{ int mlimit1; /* setlimit, line 56 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 56 */
|
||||
among_var = find_among_b(z, a_0, 10); /* substring, line 56 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
among_var = find_among_b(z, a_0, 10);
|
||||
if (!(among_var)) { z->lb = mlimit1; return 0; }
|
||||
z->bra = z->c; /* ], line 56 */
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit1;
|
||||
}
|
||||
switch (among_var) { /* among, line 57 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
if (in_grouping_b_U(z, g_particle_end, 97, 246, 0)) return 0; /* grouping particle_end, line 63 */
|
||||
if (in_grouping_b_U(z, g_particle_end, 97, 246, 0)) return 0;
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = r_R2(z); /* call R2, line 65 */
|
||||
{ int ret = r_R2(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
break;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 67 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_possessive(struct SN_env * z) { /* backwardmode */
|
||||
static int r_possessive(struct SN_env * z) {
|
||||
int among_var;
|
||||
|
||||
{ int mlimit1; /* setlimit, line 70 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 70 */
|
||||
among_var = find_among_b(z, a_4, 9); /* substring, line 70 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
among_var = find_among_b(z, a_4, 9);
|
||||
if (!(among_var)) { z->lb = mlimit1; return 0; }
|
||||
z->bra = z->c; /* ], line 70 */
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit1;
|
||||
}
|
||||
switch (among_var) { /* among, line 71 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int m2 = z->l - z->c; (void)m2; /* not, line 73 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'k') goto lab0; /* literal, line 73 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'k') goto lab0;
|
||||
z->c--;
|
||||
return 0;
|
||||
lab0:
|
||||
z->c = z->l - m2;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 73 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_del(z); /* delete, line 75 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->ket = z->c; /* [, line 75 */
|
||||
if (!(eq_s_b(z, 3, s_0))) return 0; /* literal, line 75 */
|
||||
z->bra = z->c; /* ], line 75 */
|
||||
{ int ret = slice_from_s(z, 3, s_1); /* <-, line 75 */
|
||||
z->ket = z->c;
|
||||
if (!(eq_s_b(z, 3, s_0))) return 0;
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_from_s(z, 3, s_1);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_del(z); /* delete, line 79 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] != 97) return 0; /* among, line 82 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] != 97) return 0;
|
||||
if (!(find_among_b(z, a_1, 6))) return 0;
|
||||
{ int ret = slice_del(z); /* delete, line 82 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
if (z->c - 2 <= z->lb || z->p[z->c - 1] != 164) return 0; /* among, line 84 */
|
||||
if (z->c - 2 <= z->lb || z->p[z->c - 1] != 164) return 0;
|
||||
if (!(find_among_b(z, a_2, 6))) return 0;
|
||||
{ int ret = slice_del(z); /* delete, line 85 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 6:
|
||||
if (z->c - 2 <= z->lb || z->p[z->c - 1] != 101) return 0; /* among, line 87 */
|
||||
if (z->c - 2 <= z->lb || z->p[z->c - 1] != 101) return 0;
|
||||
if (!(find_among_b(z, a_3, 2))) return 0;
|
||||
{ int ret = slice_del(z); /* delete, line 87 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -395,246 +395,246 @@ static int r_possessive(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_LONG(struct SN_env * z) { /* backwardmode */
|
||||
if (!(find_among_b(z, a_5, 7))) return 0; /* among, line 92 */
|
||||
static int r_LONG(struct SN_env * z) {
|
||||
if (!(find_among_b(z, a_5, 7))) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_VI(struct SN_env * z) { /* backwardmode */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'i') return 0; /* literal, line 94 */
|
||||
static int r_VI(struct SN_env * z) {
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'i') return 0;
|
||||
z->c--;
|
||||
if (in_grouping_b_U(z, g_V2, 97, 246, 0)) return 0; /* grouping V2, line 94 */
|
||||
if (in_grouping_b_U(z, g_V2, 97, 246, 0)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_case_ending(struct SN_env * z) { /* backwardmode */
|
||||
static int r_case_ending(struct SN_env * z) {
|
||||
int among_var;
|
||||
|
||||
{ int mlimit1; /* setlimit, line 97 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 97 */
|
||||
among_var = find_among_b(z, a_6, 30); /* substring, line 97 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
among_var = find_among_b(z, a_6, 30);
|
||||
if (!(among_var)) { z->lb = mlimit1; return 0; }
|
||||
z->bra = z->c; /* ], line 97 */
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit1;
|
||||
}
|
||||
switch (among_var) { /* among, line 98 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'a') return 0; /* literal, line 99 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'a') return 0;
|
||||
z->c--;
|
||||
break;
|
||||
case 2:
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') return 0; /* literal, line 100 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') return 0;
|
||||
z->c--;
|
||||
break;
|
||||
case 3:
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'i') return 0; /* literal, line 101 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'i') return 0;
|
||||
z->c--;
|
||||
break;
|
||||
case 4:
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'o') return 0; /* literal, line 102 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'o') return 0;
|
||||
z->c--;
|
||||
break;
|
||||
case 5:
|
||||
if (!(eq_s_b(z, 2, s_2))) return 0; /* literal, line 103 */
|
||||
if (!(eq_s_b(z, 2, s_2))) return 0;
|
||||
break;
|
||||
case 6:
|
||||
if (!(eq_s_b(z, 2, s_3))) return 0; /* literal, line 104 */
|
||||
if (!(eq_s_b(z, 2, s_3))) return 0;
|
||||
break;
|
||||
case 7:
|
||||
{ int m2 = z->l - z->c; (void)m2; /* try, line 112 */
|
||||
{ int m3 = z->l - z->c; (void)m3; /* and, line 114 */
|
||||
{ int m4 = z->l - z->c; (void)m4; /* or, line 113 */
|
||||
{ int ret = r_LONG(z); /* call LONG, line 112 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
{ int m3 = z->l - z->c; (void)m3;
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
{ int ret = r_LONG(z);
|
||||
if (ret == 0) goto lab2;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
goto lab1;
|
||||
lab2:
|
||||
z->c = z->l - m4;
|
||||
if (!(eq_s_b(z, 2, s_4))) { z->c = z->l - m2; goto lab0; } /* literal, line 113 */
|
||||
if (!(eq_s_b(z, 2, s_4))) { z->c = z->l - m2; goto lab0; }
|
||||
}
|
||||
lab1:
|
||||
z->c = z->l - m3;
|
||||
{ int ret = skip_utf8(z->p, z->c, z->lb, 0, -1);
|
||||
{ int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
|
||||
if (ret < 0) { z->c = z->l - m2; goto lab0; }
|
||||
z->c = ret; /* next, line 114 */
|
||||
z->c = ret;
|
||||
}
|
||||
}
|
||||
z->bra = z->c; /* ], line 114 */
|
||||
z->bra = z->c;
|
||||
lab0:
|
||||
;
|
||||
}
|
||||
break;
|
||||
case 8:
|
||||
if (in_grouping_b_U(z, g_V1, 97, 246, 0)) return 0; /* grouping V1, line 120 */
|
||||
if (in_grouping_b_U(z, g_C, 98, 122, 0)) return 0; /* grouping C, line 120 */
|
||||
if (in_grouping_b_U(z, g_V1, 97, 246, 0)) return 0;
|
||||
if (in_grouping_b_U(z, g_C, 98, 122, 0)) return 0;
|
||||
break;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 139 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->B[0] = 1; /* set ending_removed, line 140 */
|
||||
z->I[2] = 1;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_other_endings(struct SN_env * z) { /* backwardmode */
|
||||
static int r_other_endings(struct SN_env * z) {
|
||||
int among_var;
|
||||
|
||||
{ int mlimit1; /* setlimit, line 143 */
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c; /* [, line 143 */
|
||||
among_var = find_among_b(z, a_7, 14); /* substring, line 143 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c;
|
||||
among_var = find_among_b(z, a_7, 14);
|
||||
if (!(among_var)) { z->lb = mlimit1; return 0; }
|
||||
z->bra = z->c; /* ], line 143 */
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit1;
|
||||
}
|
||||
switch (among_var) { /* among, line 144 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int m2 = z->l - z->c; (void)m2; /* not, line 147 */
|
||||
if (!(eq_s_b(z, 2, s_5))) goto lab0; /* literal, line 147 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
if (!(eq_s_b(z, 2, s_5))) goto lab0;
|
||||
return 0;
|
||||
lab0:
|
||||
z->c = z->l - m2;
|
||||
}
|
||||
break;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 152 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_i_plural(struct SN_env * z) { /* backwardmode */
|
||||
static int r_i_plural(struct SN_env * z) {
|
||||
|
||||
{ int mlimit1; /* setlimit, line 155 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 155 */
|
||||
if (z->c <= z->lb || (z->p[z->c - 1] != 105 && z->p[z->c - 1] != 106)) { z->lb = mlimit1; return 0; } /* substring, line 155 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || (z->p[z->c - 1] != 105 && z->p[z->c - 1] != 106)) { z->lb = mlimit1; return 0; }
|
||||
if (!(find_among_b(z, a_8, 2))) { z->lb = mlimit1; return 0; }
|
||||
z->bra = z->c; /* ], line 155 */
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit1;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 159 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_t_plural(struct SN_env * z) { /* backwardmode */
|
||||
static int r_t_plural(struct SN_env * z) {
|
||||
int among_var;
|
||||
|
||||
{ int mlimit1; /* setlimit, line 162 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 163 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 't') { z->lb = mlimit1; return 0; } /* literal, line 163 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 't') { z->lb = mlimit1; return 0; }
|
||||
z->c--;
|
||||
z->bra = z->c; /* ], line 163 */
|
||||
{ int m_test2 = z->l - z->c; /* test, line 163 */
|
||||
if (in_grouping_b_U(z, g_V1, 97, 246, 0)) { z->lb = mlimit1; return 0; } /* grouping V1, line 163 */
|
||||
z->bra = z->c;
|
||||
{ int m_test2 = z->l - z->c;
|
||||
if (in_grouping_b_U(z, g_V1, 97, 246, 0)) { z->lb = mlimit1; return 0; }
|
||||
z->c = z->l - m_test2;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 164 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->lb = mlimit1;
|
||||
}
|
||||
|
||||
{ int mlimit3; /* setlimit, line 166 */
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit3 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c; /* [, line 166 */
|
||||
if (z->c - 2 <= z->lb || z->p[z->c - 1] != 97) { z->lb = mlimit3; return 0; } /* substring, line 166 */
|
||||
{ int mlimit3;
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit3 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c;
|
||||
if (z->c - 2 <= z->lb || z->p[z->c - 1] != 97) { z->lb = mlimit3; return 0; }
|
||||
among_var = find_among_b(z, a_9, 2);
|
||||
if (!(among_var)) { z->lb = mlimit3; return 0; }
|
||||
z->bra = z->c; /* ], line 166 */
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit3;
|
||||
}
|
||||
switch (among_var) { /* among, line 167 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int m4 = z->l - z->c; (void)m4; /* not, line 168 */
|
||||
if (!(eq_s_b(z, 2, s_6))) goto lab0; /* literal, line 168 */
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
if (!(eq_s_b(z, 2, s_6))) goto lab0;
|
||||
return 0;
|
||||
lab0:
|
||||
z->c = z->l - m4;
|
||||
}
|
||||
break;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 171 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_tidy(struct SN_env * z) { /* backwardmode */
|
||||
static int r_tidy(struct SN_env * z) {
|
||||
|
||||
{ int mlimit1; /* setlimit, line 174 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
{ int m2 = z->l - z->c; (void)m2; /* do, line 175 */
|
||||
{ int m3 = z->l - z->c; (void)m3; /* and, line 175 */
|
||||
{ int ret = r_LONG(z); /* call LONG, line 175 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
{ int m3 = z->l - z->c; (void)m3;
|
||||
{ int ret = r_LONG(z);
|
||||
if (ret == 0) goto lab0;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m3;
|
||||
z->ket = z->c; /* [, line 175 */
|
||||
{ int ret = skip_utf8(z->p, z->c, z->lb, 0, -1);
|
||||
z->ket = z->c;
|
||||
{ int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
|
||||
if (ret < 0) goto lab0;
|
||||
z->c = ret; /* next, line 175 */
|
||||
z->c = ret;
|
||||
}
|
||||
z->bra = z->c; /* ], line 175 */
|
||||
{ int ret = slice_del(z); /* delete, line 175 */
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
}
|
||||
lab0:
|
||||
z->c = z->l - m2;
|
||||
}
|
||||
{ int m4 = z->l - z->c; (void)m4; /* do, line 176 */
|
||||
z->ket = z->c; /* [, line 176 */
|
||||
if (in_grouping_b_U(z, g_AEI, 97, 228, 0)) goto lab1; /* grouping AEI, line 176 */
|
||||
z->bra = z->c; /* ], line 176 */
|
||||
if (in_grouping_b_U(z, g_C, 98, 122, 0)) goto lab1; /* grouping C, line 176 */
|
||||
{ int ret = slice_del(z); /* delete, line 176 */
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
z->ket = z->c;
|
||||
if (in_grouping_b_U(z, g_AEI, 97, 228, 0)) goto lab1;
|
||||
z->bra = z->c;
|
||||
if (in_grouping_b_U(z, g_C, 98, 122, 0)) goto lab1;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
lab1:
|
||||
z->c = z->l - m4;
|
||||
}
|
||||
{ int m5 = z->l - z->c; (void)m5; /* do, line 177 */
|
||||
z->ket = z->c; /* [, line 177 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'j') goto lab2; /* literal, line 177 */
|
||||
{ int m5 = z->l - z->c; (void)m5;
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'j') goto lab2;
|
||||
z->c--;
|
||||
z->bra = z->c; /* ], line 177 */
|
||||
{ int m6 = z->l - z->c; (void)m6; /* or, line 177 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'o') goto lab4; /* literal, line 177 */
|
||||
z->bra = z->c;
|
||||
{ int m6 = z->l - z->c; (void)m6;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'o') goto lab4;
|
||||
z->c--;
|
||||
goto lab3;
|
||||
lab4:
|
||||
z->c = z->l - m6;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'u') goto lab2; /* literal, line 177 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'u') goto lab2;
|
||||
z->c--;
|
||||
}
|
||||
lab3:
|
||||
{ int ret = slice_del(z); /* delete, line 177 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
lab2:
|
||||
z->c = z->l - m5;
|
||||
}
|
||||
{ int m7 = z->l - z->c; (void)m7; /* do, line 178 */
|
||||
z->ket = z->c; /* [, line 178 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'o') goto lab5; /* literal, line 178 */
|
||||
{ int m7 = z->l - z->c; (void)m7;
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'o') goto lab5;
|
||||
z->c--;
|
||||
z->bra = z->c; /* ], line 178 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'j') goto lab5; /* literal, line 178 */
|
||||
z->bra = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'j') goto lab5;
|
||||
z->c--;
|
||||
{ int ret = slice_del(z); /* delete, line 178 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
lab5:
|
||||
@ -642,72 +642,72 @@ static int r_tidy(struct SN_env * z) { /* backwardmode */
|
||||
}
|
||||
z->lb = mlimit1;
|
||||
}
|
||||
if (in_grouping_b_U(z, g_V1, 97, 246, 1) < 0) return 0; /* goto */ /* non V1, line 180 */
|
||||
z->ket = z->c; /* [, line 180 */
|
||||
if (in_grouping_b_U(z, g_C, 98, 122, 0)) return 0; /* grouping C, line 180 */
|
||||
z->bra = z->c; /* ], line 180 */
|
||||
z->S[0] = slice_to(z, z->S[0]); /* -> x, line 180 */
|
||||
if (z->S[0] == 0) return -1; /* -> x, line 180 */
|
||||
if (!(eq_v_b(z, z->S[0]))) return 0; /* name x, line 180 */
|
||||
{ int ret = slice_del(z); /* delete, line 180 */
|
||||
if (in_grouping_b_U(z, g_V1, 97, 246, 1) < 0) return 0;
|
||||
z->ket = z->c;
|
||||
if (in_grouping_b_U(z, g_C, 98, 122, 0)) return 0;
|
||||
z->bra = z->c;
|
||||
z->S[0] = slice_to(z, z->S[0]);
|
||||
if (z->S[0] == 0) return -1;
|
||||
if (!(eq_v_b(z, z->S[0]))) return 0;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern int finnish_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
{ int c1 = z->c; /* do, line 186 */
|
||||
{ int ret = r_mark_regions(z); /* call mark_regions, line 186 */
|
||||
extern int finnish_UTF_8_stem(struct SN_env * z) {
|
||||
{ int c1 = z->c;
|
||||
{ int ret = r_mark_regions(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = c1;
|
||||
}
|
||||
z->B[0] = 0; /* unset ending_removed, line 187 */
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 188 */
|
||||
z->I[2] = 0;
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
{ int m2 = z->l - z->c; (void)m2; /* do, line 189 */
|
||||
{ int ret = r_particle_etc(z); /* call particle_etc, line 189 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
{ int ret = r_particle_etc(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m2;
|
||||
}
|
||||
{ int m3 = z->l - z->c; (void)m3; /* do, line 190 */
|
||||
{ int ret = r_possessive(z); /* call possessive, line 190 */
|
||||
{ int m3 = z->l - z->c; (void)m3;
|
||||
{ int ret = r_possessive(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m3;
|
||||
}
|
||||
{ int m4 = z->l - z->c; (void)m4; /* do, line 191 */
|
||||
{ int ret = r_case_ending(z); /* call case_ending, line 191 */
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
{ int ret = r_case_ending(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m4;
|
||||
}
|
||||
{ int m5 = z->l - z->c; (void)m5; /* do, line 192 */
|
||||
{ int ret = r_other_endings(z); /* call other_endings, line 192 */
|
||||
{ int m5 = z->l - z->c; (void)m5;
|
||||
{ int ret = r_other_endings(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m5;
|
||||
}
|
||||
/* or, line 193 */
|
||||
if (!(z->B[0])) goto lab1; /* Boolean test ending_removed, line 193 */
|
||||
{ int m6 = z->l - z->c; (void)m6; /* do, line 193 */
|
||||
{ int ret = r_i_plural(z); /* call i_plural, line 193 */
|
||||
|
||||
if (!(z->I[2])) goto lab1;
|
||||
{ int m6 = z->l - z->c; (void)m6;
|
||||
{ int ret = r_i_plural(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m6;
|
||||
}
|
||||
goto lab0;
|
||||
lab1:
|
||||
{ int m7 = z->l - z->c; (void)m7; /* do, line 193 */
|
||||
{ int ret = r_t_plural(z); /* call t_plural, line 193 */
|
||||
{ int m7 = z->l - z->c; (void)m7;
|
||||
{ int ret = r_t_plural(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m7;
|
||||
}
|
||||
lab0:
|
||||
{ int m8 = z->l - z->c; (void)m8; /* do, line 194 */
|
||||
{ int ret = r_tidy(z); /* call tidy, line 194 */
|
||||
{ int m8 = z->l - z->c; (void)m8;
|
||||
{ int ret = r_tidy(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m8;
|
||||
@ -716,7 +716,7 @@ lab0:
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern struct SN_env * finnish_UTF_8_create_env(void) { return SN_create_env(1, 2, 1); }
|
||||
extern struct SN_env * finnish_UTF_8_create_env(void) { return SN_create_env(1, 3); }
|
||||
|
||||
extern void finnish_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 1); }
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#include "header.h"
|
||||
|
||||
@ -35,12 +35,12 @@ static const symbol s_0_5[2] = { 0xC3, 0xBC };
|
||||
|
||||
static const struct among a_0[6] =
|
||||
{
|
||||
/* 0 */ { 0, 0, -1, 5, 0},
|
||||
/* 1 */ { 1, s_0_1, 0, 2, 0},
|
||||
/* 2 */ { 1, s_0_2, 0, 1, 0},
|
||||
/* 3 */ { 2, s_0_3, 0, 3, 0},
|
||||
/* 4 */ { 2, s_0_4, 0, 4, 0},
|
||||
/* 5 */ { 2, s_0_5, 0, 2, 0}
|
||||
{ 0, 0, -1, 5, 0},
|
||||
{ 1, s_0_1, 0, 2, 0},
|
||||
{ 1, s_0_2, 0, 1, 0},
|
||||
{ 2, s_0_3, 0, 3, 0},
|
||||
{ 2, s_0_4, 0, 4, 0},
|
||||
{ 2, s_0_5, 0, 2, 0}
|
||||
};
|
||||
|
||||
static const symbol s_1_0[1] = { 'e' };
|
||||
@ -53,13 +53,13 @@ static const symbol s_1_6[2] = { 'e', 's' };
|
||||
|
||||
static const struct among a_1[7] =
|
||||
{
|
||||
/* 0 */ { 1, s_1_0, -1, 2, 0},
|
||||
/* 1 */ { 2, s_1_1, -1, 1, 0},
|
||||
/* 2 */ { 2, s_1_2, -1, 2, 0},
|
||||
/* 3 */ { 3, s_1_3, -1, 1, 0},
|
||||
/* 4 */ { 2, s_1_4, -1, 1, 0},
|
||||
/* 5 */ { 1, s_1_5, -1, 3, 0},
|
||||
/* 6 */ { 2, s_1_6, 5, 2, 0}
|
||||
{ 1, s_1_0, -1, 2, 0},
|
||||
{ 2, s_1_1, -1, 1, 0},
|
||||
{ 2, s_1_2, -1, 2, 0},
|
||||
{ 3, s_1_3, -1, 1, 0},
|
||||
{ 2, s_1_4, -1, 1, 0},
|
||||
{ 1, s_1_5, -1, 3, 0},
|
||||
{ 2, s_1_6, 5, 2, 0}
|
||||
};
|
||||
|
||||
static const symbol s_2_0[2] = { 'e', 'n' };
|
||||
@ -69,10 +69,10 @@ static const symbol s_2_3[3] = { 'e', 's', 't' };
|
||||
|
||||
static const struct among a_2[4] =
|
||||
{
|
||||
/* 0 */ { 2, s_2_0, -1, 1, 0},
|
||||
/* 1 */ { 2, s_2_1, -1, 1, 0},
|
||||
/* 2 */ { 2, s_2_2, -1, 2, 0},
|
||||
/* 3 */ { 3, s_2_3, 2, 1, 0}
|
||||
{ 2, s_2_0, -1, 1, 0},
|
||||
{ 2, s_2_1, -1, 1, 0},
|
||||
{ 2, s_2_2, -1, 2, 0},
|
||||
{ 3, s_2_3, 2, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_3_0[2] = { 'i', 'g' };
|
||||
@ -80,8 +80,8 @@ static const symbol s_3_1[4] = { 'l', 'i', 'c', 'h' };
|
||||
|
||||
static const struct among a_3[2] =
|
||||
{
|
||||
/* 0 */ { 2, s_3_0, -1, 1, 0},
|
||||
/* 1 */ { 4, s_3_1, -1, 1, 0}
|
||||
{ 2, s_3_0, -1, 1, 0},
|
||||
{ 4, s_3_1, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_4_0[3] = { 'e', 'n', 'd' };
|
||||
@ -95,14 +95,14 @@ static const symbol s_4_7[4] = { 'k', 'e', 'i', 't' };
|
||||
|
||||
static const struct among a_4[8] =
|
||||
{
|
||||
/* 0 */ { 3, s_4_0, -1, 1, 0},
|
||||
/* 1 */ { 2, s_4_1, -1, 2, 0},
|
||||
/* 2 */ { 3, s_4_2, -1, 1, 0},
|
||||
/* 3 */ { 4, s_4_3, -1, 3, 0},
|
||||
/* 4 */ { 4, s_4_4, -1, 2, 0},
|
||||
/* 5 */ { 2, s_4_5, -1, 2, 0},
|
||||
/* 6 */ { 4, s_4_6, -1, 3, 0},
|
||||
/* 7 */ { 4, s_4_7, -1, 4, 0}
|
||||
{ 3, s_4_0, -1, 1, 0},
|
||||
{ 2, s_4_1, -1, 2, 0},
|
||||
{ 3, s_4_2, -1, 1, 0},
|
||||
{ 4, s_4_3, -1, 3, 0},
|
||||
{ 4, s_4_4, -1, 2, 0},
|
||||
{ 2, s_4_5, -1, 2, 0},
|
||||
{ 4, s_4_6, -1, 3, 0},
|
||||
{ 4, s_4_7, -1, 4, 0}
|
||||
};
|
||||
|
||||
static const unsigned char g_v[] = { 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 32, 8 };
|
||||
@ -124,24 +124,23 @@ static const symbol s_9[] = { 'i', 'g' };
|
||||
static const symbol s_10[] = { 'e', 'r' };
|
||||
static const symbol s_11[] = { 'e', 'n' };
|
||||
|
||||
static int r_prelude(struct SN_env * z) { /* forwardmode */
|
||||
{ int c_test1 = z->c; /* test, line 35 */
|
||||
/* repeat, line 35 */
|
||||
|
||||
while(1) { int c2 = z->c;
|
||||
{ int c3 = z->c; /* or, line 38 */
|
||||
z->bra = z->c; /* [, line 37 */
|
||||
if (!(eq_s(z, 2, s_0))) goto lab2; /* literal, line 37 */
|
||||
z->ket = z->c; /* ], line 37 */
|
||||
{ int ret = slice_from_s(z, 2, s_1); /* <-, line 37 */
|
||||
static int r_prelude(struct SN_env * z) {
|
||||
{ int c_test1 = z->c;
|
||||
while(1) {
|
||||
int c2 = z->c;
|
||||
{ int c3 = z->c;
|
||||
z->bra = z->c;
|
||||
if (!(eq_s(z, 2, s_0))) goto lab2;
|
||||
z->ket = z->c;
|
||||
{ int ret = slice_from_s(z, 2, s_1);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
goto lab1;
|
||||
lab2:
|
||||
z->c = c3;
|
||||
{ int ret = skip_utf8(z->p, z->c, 0, z->l, 1);
|
||||
{ int ret = skip_utf8(z->p, z->c, z->l, 1);
|
||||
if (ret < 0) goto lab0;
|
||||
z->c = ret; /* next, line 38 */
|
||||
z->c = ret;
|
||||
}
|
||||
}
|
||||
lab1:
|
||||
@ -152,29 +151,28 @@ static int r_prelude(struct SN_env * z) { /* forwardmode */
|
||||
}
|
||||
z->c = c_test1;
|
||||
}
|
||||
/* repeat, line 41 */
|
||||
|
||||
while(1) { int c4 = z->c;
|
||||
while(1) { /* goto, line 41 */
|
||||
while(1) {
|
||||
int c4 = z->c;
|
||||
while(1) {
|
||||
int c5 = z->c;
|
||||
if (in_grouping_U(z, g_v, 97, 252, 0)) goto lab4; /* grouping v, line 42 */
|
||||
z->bra = z->c; /* [, line 42 */
|
||||
{ int c6 = z->c; /* or, line 42 */
|
||||
if (z->c == z->l || z->p[z->c] != 'u') goto lab6; /* literal, line 42 */
|
||||
if (in_grouping_U(z, g_v, 97, 252, 0)) goto lab4;
|
||||
z->bra = z->c;
|
||||
{ int c6 = z->c;
|
||||
if (z->c == z->l || z->p[z->c] != 'u') goto lab6;
|
||||
z->c++;
|
||||
z->ket = z->c; /* ], line 42 */
|
||||
if (in_grouping_U(z, g_v, 97, 252, 0)) goto lab6; /* grouping v, line 42 */
|
||||
{ int ret = slice_from_s(z, 1, s_2); /* <-, line 42 */
|
||||
z->ket = z->c;
|
||||
if (in_grouping_U(z, g_v, 97, 252, 0)) goto lab6;
|
||||
{ int ret = slice_from_s(z, 1, s_2);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
goto lab5;
|
||||
lab6:
|
||||
z->c = c6;
|
||||
if (z->c == z->l || z->p[z->c] != 'y') goto lab4; /* literal, line 43 */
|
||||
if (z->c == z->l || z->p[z->c] != 'y') goto lab4;
|
||||
z->c++;
|
||||
z->ket = z->c; /* ], line 43 */
|
||||
if (in_grouping_U(z, g_v, 97, 252, 0)) goto lab4; /* grouping v, line 43 */
|
||||
{ int ret = slice_from_s(z, 1, s_3); /* <-, line 43 */
|
||||
z->ket = z->c;
|
||||
if (in_grouping_U(z, g_v, 97, 252, 0)) goto lab4;
|
||||
{ int ret = slice_from_s(z, 1, s_3);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
}
|
||||
@ -183,9 +181,9 @@ static int r_prelude(struct SN_env * z) { /* forwardmode */
|
||||
break;
|
||||
lab4:
|
||||
z->c = c5;
|
||||
{ int ret = skip_utf8(z->p, z->c, 0, z->l, 1);
|
||||
{ int ret = skip_utf8(z->p, z->c, z->l, 1);
|
||||
if (ret < 0) goto lab3;
|
||||
z->c = ret; /* goto, line 41 */
|
||||
z->c = ret;
|
||||
}
|
||||
}
|
||||
continue;
|
||||
@ -196,80 +194,79 @@ static int r_prelude(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_mark_regions(struct SN_env * z) { /* forwardmode */
|
||||
z->I[0] = z->l; /* $p1 = <integer expression>, line 49 */
|
||||
z->I[1] = z->l; /* $p2 = <integer expression>, line 50 */
|
||||
{ int c_test1 = z->c; /* test, line 52 */
|
||||
{ int ret = skip_utf8(z->p, z->c, 0, z->l, + 3); /* hop, line 52 */
|
||||
static int r_mark_regions(struct SN_env * z) {
|
||||
z->I[2] = z->l;
|
||||
z->I[1] = z->l;
|
||||
{ int c_test1 = z->c;
|
||||
{ int ret = skip_utf8(z->p, z->c, z->l, 3);
|
||||
if (ret < 0) return 0;
|
||||
z->c = ret;
|
||||
}
|
||||
z->I[2] = z->c; /* setmark x, line 52 */
|
||||
z->I[0] = z->c;
|
||||
z->c = c_test1;
|
||||
}
|
||||
{ /* gopast */ /* grouping v, line 54 */
|
||||
{
|
||||
int ret = out_grouping_U(z, g_v, 97, 252, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
{ /* gopast */ /* non v, line 54 */
|
||||
{
|
||||
int ret = in_grouping_U(z, g_v, 97, 252, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[0] = z->c; /* setmark p1, line 54 */
|
||||
/* try, line 55 */
|
||||
if (!(z->I[0] < z->I[2])) goto lab0; /* $(<integer expression> < <integer expression>), line 55 */
|
||||
z->I[0] = z->I[2]; /* $p1 = <integer expression>, line 55 */
|
||||
z->I[2] = z->c;
|
||||
|
||||
if (!(z->I[2] < z->I[0])) goto lab0;
|
||||
z->I[2] = z->I[0];
|
||||
lab0:
|
||||
{ /* gopast */ /* grouping v, line 56 */
|
||||
{
|
||||
int ret = out_grouping_U(z, g_v, 97, 252, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
{ /* gopast */ /* non v, line 56 */
|
||||
{
|
||||
int ret = in_grouping_U(z, g_v, 97, 252, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[1] = z->c; /* setmark p2, line 56 */
|
||||
z->I[1] = z->c;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_postlude(struct SN_env * z) { /* forwardmode */
|
||||
static int r_postlude(struct SN_env * z) {
|
||||
int among_var;
|
||||
/* repeat, line 60 */
|
||||
|
||||
while(1) { int c1 = z->c;
|
||||
z->bra = z->c; /* [, line 62 */
|
||||
among_var = find_among(z, a_0, 6); /* substring, line 62 */
|
||||
while(1) {
|
||||
int c1 = z->c;
|
||||
z->bra = z->c;
|
||||
among_var = find_among(z, a_0, 6);
|
||||
if (!(among_var)) goto lab0;
|
||||
z->ket = z->c; /* ], line 62 */
|
||||
switch (among_var) { /* among, line 62 */
|
||||
z->ket = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_from_s(z, 1, s_4); /* <-, line 63 */
|
||||
{ int ret = slice_from_s(z, 1, s_4);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 1, s_5); /* <-, line 64 */
|
||||
{ int ret = slice_from_s(z, 1, s_5);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_from_s(z, 1, s_6); /* <-, line 65 */
|
||||
{ int ret = slice_from_s(z, 1, s_6);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
{ int ret = slice_from_s(z, 1, s_7); /* <-, line 66 */
|
||||
{ int ret = slice_from_s(z, 1, s_7);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
{ int ret = skip_utf8(z->p, z->c, 0, z->l, 1);
|
||||
{ int ret = skip_utf8(z->p, z->c, z->l, 1);
|
||||
if (ret < 0) goto lab0;
|
||||
z->c = ret; /* next, line 68 */
|
||||
z->c = ret;
|
||||
}
|
||||
break;
|
||||
}
|
||||
@ -281,45 +278,45 @@ static int r_postlude(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_R1(struct SN_env * z) { /* backwardmode */
|
||||
if (!(z->I[0] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 75 */
|
||||
static int r_R1(struct SN_env * z) {
|
||||
if (!(z->I[2] <= z->c)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_R2(struct SN_env * z) { /* backwardmode */
|
||||
if (!(z->I[1] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 76 */
|
||||
static int r_R2(struct SN_env * z) {
|
||||
if (!(z->I[1] <= z->c)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
|
||||
static int r_standard_suffix(struct SN_env * z) {
|
||||
int among_var;
|
||||
{ int m1 = z->l - z->c; (void)m1; /* do, line 79 */
|
||||
z->ket = z->c; /* [, line 80 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((811040 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab0; /* substring, line 80 */
|
||||
{ int m1 = z->l - z->c; (void)m1;
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((811040 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab0;
|
||||
among_var = find_among_b(z, a_1, 7);
|
||||
if (!(among_var)) goto lab0;
|
||||
z->bra = z->c; /* ], line 80 */
|
||||
{ int ret = r_R1(z); /* call R1, line 80 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret == 0) goto lab0;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
switch (among_var) { /* among, line 80 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 82 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_del(z); /* delete, line 85 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int m2 = z->l - z->c; (void)m2; /* try, line 86 */
|
||||
z->ket = z->c; /* [, line 86 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 's') { z->c = z->l - m2; goto lab1; } /* literal, line 86 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 's') { z->c = z->l - m2; goto lab1; }
|
||||
z->c--;
|
||||
z->bra = z->c; /* ], line 86 */
|
||||
if (!(eq_s_b(z, 3, s_8))) { z->c = z->l - m2; goto lab1; } /* literal, line 86 */
|
||||
{ int ret = slice_del(z); /* delete, line 86 */
|
||||
z->bra = z->c;
|
||||
if (!(eq_s_b(z, 3, s_8))) { z->c = z->l - m2; goto lab1; }
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
lab1:
|
||||
@ -327,8 +324,8 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
if (in_grouping_b_U(z, g_s_ending, 98, 116, 0)) goto lab0; /* grouping s_ending, line 89 */
|
||||
{ int ret = slice_del(z); /* delete, line 89 */
|
||||
if (in_grouping_b_U(z, g_s_ending, 98, 116, 0)) goto lab0;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -336,29 +333,29 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
|
||||
lab0:
|
||||
z->c = z->l - m1;
|
||||
}
|
||||
{ int m3 = z->l - z->c; (void)m3; /* do, line 93 */
|
||||
z->ket = z->c; /* [, line 94 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1327104 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab2; /* substring, line 94 */
|
||||
{ int m3 = z->l - z->c; (void)m3;
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1327104 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab2;
|
||||
among_var = find_among_b(z, a_2, 4);
|
||||
if (!(among_var)) goto lab2;
|
||||
z->bra = z->c; /* ], line 94 */
|
||||
{ int ret = r_R1(z); /* call R1, line 94 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret == 0) goto lab2;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
switch (among_var) { /* among, line 94 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 96 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (in_grouping_b_U(z, g_st_ending, 98, 116, 0)) goto lab2; /* grouping st_ending, line 99 */
|
||||
{ int ret = skip_utf8(z->p, z->c, z->lb, z->l, - 3); /* hop, line 99 */
|
||||
if (in_grouping_b_U(z, g_st_ending, 98, 116, 0)) goto lab2;
|
||||
{ int ret = skip_b_utf8(z->p, z->c, z->lb, 3);
|
||||
if (ret < 0) goto lab2;
|
||||
z->c = ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 99 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -366,37 +363,37 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
|
||||
lab2:
|
||||
z->c = z->l - m3;
|
||||
}
|
||||
{ int m4 = z->l - z->c; (void)m4; /* do, line 103 */
|
||||
z->ket = z->c; /* [, line 104 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1051024 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab3; /* substring, line 104 */
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1051024 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab3;
|
||||
among_var = find_among_b(z, a_4, 8);
|
||||
if (!(among_var)) goto lab3;
|
||||
z->bra = z->c; /* ], line 104 */
|
||||
{ int ret = r_R2(z); /* call R2, line 104 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R2(z);
|
||||
if (ret == 0) goto lab3;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
switch (among_var) { /* among, line 104 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 106 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int m5 = z->l - z->c; (void)m5; /* try, line 107 */
|
||||
z->ket = z->c; /* [, line 107 */
|
||||
if (!(eq_s_b(z, 2, s_9))) { z->c = z->l - m5; goto lab4; } /* literal, line 107 */
|
||||
z->bra = z->c; /* ], line 107 */
|
||||
{ int m6 = z->l - z->c; (void)m6; /* not, line 107 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab5; /* literal, line 107 */
|
||||
{ int m5 = z->l - z->c; (void)m5;
|
||||
z->ket = z->c;
|
||||
if (!(eq_s_b(z, 2, s_9))) { z->c = z->l - m5; goto lab4; }
|
||||
z->bra = z->c;
|
||||
{ int m6 = z->l - z->c; (void)m6;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab5;
|
||||
z->c--;
|
||||
{ z->c = z->l - m5; goto lab4; }
|
||||
lab5:
|
||||
z->c = z->l - m6;
|
||||
}
|
||||
{ int ret = r_R2(z); /* call R2, line 107 */
|
||||
{ int ret = r_R2(z);
|
||||
if (ret == 0) { z->c = z->l - m5; goto lab4; }
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 107 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
lab4:
|
||||
@ -404,37 +401,37 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int m7 = z->l - z->c; (void)m7; /* not, line 110 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab6; /* literal, line 110 */
|
||||
{ int m7 = z->l - z->c; (void)m7;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab6;
|
||||
z->c--;
|
||||
goto lab3;
|
||||
lab6:
|
||||
z->c = z->l - m7;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 110 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_del(z); /* delete, line 113 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int m8 = z->l - z->c; (void)m8; /* try, line 114 */
|
||||
z->ket = z->c; /* [, line 115 */
|
||||
{ int m9 = z->l - z->c; (void)m9; /* or, line 115 */
|
||||
if (!(eq_s_b(z, 2, s_10))) goto lab9; /* literal, line 115 */
|
||||
{ int m8 = z->l - z->c; (void)m8;
|
||||
z->ket = z->c;
|
||||
{ int m9 = z->l - z->c; (void)m9;
|
||||
if (!(eq_s_b(z, 2, s_10))) goto lab9;
|
||||
goto lab8;
|
||||
lab9:
|
||||
z->c = z->l - m9;
|
||||
if (!(eq_s_b(z, 2, s_11))) { z->c = z->l - m8; goto lab7; } /* literal, line 115 */
|
||||
if (!(eq_s_b(z, 2, s_11))) { z->c = z->l - m8; goto lab7; }
|
||||
}
|
||||
lab8:
|
||||
z->bra = z->c; /* ], line 115 */
|
||||
{ int ret = r_R1(z); /* call R1, line 115 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret == 0) { z->c = z->l - m8; goto lab7; }
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 115 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
lab7:
|
||||
@ -442,19 +439,19 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
{ int ret = slice_del(z); /* delete, line 119 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int m10 = z->l - z->c; (void)m10; /* try, line 120 */
|
||||
z->ket = z->c; /* [, line 121 */
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 103 && z->p[z->c - 1] != 104)) { z->c = z->l - m10; goto lab10; } /* substring, line 121 */
|
||||
{ int m10 = z->l - z->c; (void)m10;
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 103 && z->p[z->c - 1] != 104)) { z->c = z->l - m10; goto lab10; }
|
||||
if (!(find_among_b(z, a_3, 2))) { z->c = z->l - m10; goto lab10; }
|
||||
z->bra = z->c; /* ], line 121 */
|
||||
{ int ret = r_R2(z); /* call R2, line 121 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R2(z);
|
||||
if (ret == 0) { z->c = z->l - m10; goto lab10; }
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 123 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
lab10:
|
||||
@ -468,28 +465,28 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern int german_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
{ int c1 = z->c; /* do, line 134 */
|
||||
{ int ret = r_prelude(z); /* call prelude, line 134 */
|
||||
extern int german_UTF_8_stem(struct SN_env * z) {
|
||||
{ int c1 = z->c;
|
||||
{ int ret = r_prelude(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = c1;
|
||||
}
|
||||
{ int c2 = z->c; /* do, line 135 */
|
||||
{ int ret = r_mark_regions(z); /* call mark_regions, line 135 */
|
||||
{ int c2 = z->c;
|
||||
{ int ret = r_mark_regions(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = c2;
|
||||
}
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 136 */
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
/* do, line 137 */
|
||||
{ int ret = r_standard_suffix(z); /* call standard_suffix, line 137 */
|
||||
|
||||
{ int ret = r_standard_suffix(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->lb;
|
||||
{ int c3 = z->c; /* do, line 138 */
|
||||
{ int ret = r_postlude(z); /* call postlude, line 138 */
|
||||
{ int c3 = z->c;
|
||||
{ int ret = r_postlude(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = c3;
|
||||
@ -497,7 +494,7 @@ extern int german_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern struct SN_env * german_UTF_8_create_env(void) { return SN_create_env(0, 3, 0); }
|
||||
extern struct SN_env * german_UTF_8_create_env(void) { return SN_create_env(0, 3); }
|
||||
|
||||
extern void german_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#include "header.h"
|
||||
|
||||
@ -157,176 +157,176 @@ static const symbol s_0_131[3] = { 0xE0, 0xA4, 0xBF };
|
||||
|
||||
static const struct among a_0[132] =
|
||||
{
|
||||
/* 0 */ { 3, s_0_0, -1, -1, 0},
|
||||
/* 1 */ { 12, s_0_1, 0, -1, 0},
|
||||
/* 2 */ { 12, s_0_2, 0, -1, 0},
|
||||
/* 3 */ { 12, s_0_3, 0, -1, 0},
|
||||
/* 4 */ { 15, s_0_4, 3, -1, 0},
|
||||
/* 5 */ { 15, s_0_5, 3, -1, 0},
|
||||
/* 6 */ { 12, s_0_6, 0, -1, 0},
|
||||
/* 7 */ { 15, s_0_7, 6, -1, 0},
|
||||
/* 8 */ { 15, s_0_8, 6, -1, 0},
|
||||
/* 9 */ { 9, s_0_9, 0, -1, 0},
|
||||
/* 10 */ { 9, s_0_10, 0, -1, 0},
|
||||
/* 11 */ { 9, s_0_11, 0, -1, 0},
|
||||
/* 12 */ { 12, s_0_12, 11, -1, 0},
|
||||
/* 13 */ { 12, s_0_13, 11, -1, 0},
|
||||
/* 14 */ { 9, s_0_14, 0, -1, 0},
|
||||
/* 15 */ { 12, s_0_15, 14, -1, 0},
|
||||
/* 16 */ { 12, s_0_16, 14, -1, 0},
|
||||
/* 17 */ { 6, s_0_17, 0, -1, r_CONSONANT},
|
||||
/* 18 */ { 9, s_0_18, 17, -1, 0},
|
||||
/* 19 */ { 9, s_0_19, 17, -1, 0},
|
||||
/* 20 */ { 9, s_0_20, 17, -1, 0},
|
||||
/* 21 */ { 6, s_0_21, 0, -1, r_CONSONANT},
|
||||
/* 22 */ { 9, s_0_22, 21, -1, 0},
|
||||
/* 23 */ { 6, s_0_23, -1, -1, 0},
|
||||
/* 24 */ { 6, s_0_24, -1, -1, 0},
|
||||
/* 25 */ { 12, s_0_25, 24, -1, 0},
|
||||
/* 26 */ { 15, s_0_26, 25, -1, 0},
|
||||
/* 27 */ { 15, s_0_27, 25, -1, 0},
|
||||
/* 28 */ { 12, s_0_28, 24, -1, 0},
|
||||
/* 29 */ { 3, s_0_29, -1, -1, 0},
|
||||
/* 30 */ { 6, s_0_30, -1, -1, 0},
|
||||
/* 31 */ { 9, s_0_31, 30, -1, r_CONSONANT},
|
||||
/* 32 */ { 12, s_0_32, 31, -1, 0},
|
||||
/* 33 */ { 12, s_0_33, 31, -1, 0},
|
||||
/* 34 */ { 12, s_0_34, 31, -1, 0},
|
||||
/* 35 */ { 6, s_0_35, -1, -1, 0},
|
||||
/* 36 */ { 9, s_0_36, 35, -1, 0},
|
||||
/* 37 */ { 9, s_0_37, 35, -1, 0},
|
||||
/* 38 */ { 6, s_0_38, -1, -1, 0},
|
||||
/* 39 */ { 6, s_0_39, -1, -1, 0},
|
||||
/* 40 */ { 9, s_0_40, 39, -1, 0},
|
||||
/* 41 */ { 9, s_0_41, 39, -1, 0},
|
||||
/* 42 */ { 6, s_0_42, -1, -1, 0},
|
||||
/* 43 */ { 12, s_0_43, 42, -1, 0},
|
||||
/* 44 */ { 15, s_0_44, 43, -1, 0},
|
||||
/* 45 */ { 15, s_0_45, 43, -1, 0},
|
||||
/* 46 */ { 12, s_0_46, 42, -1, 0},
|
||||
/* 47 */ { 6, s_0_47, -1, -1, 0},
|
||||
/* 48 */ { 9, s_0_48, 47, -1, 0},
|
||||
/* 49 */ { 9, s_0_49, 47, -1, 0},
|
||||
/* 50 */ { 9, s_0_50, 47, -1, 0},
|
||||
/* 51 */ { 9, s_0_51, 47, -1, 0},
|
||||
/* 52 */ { 12, s_0_52, 51, -1, r_CONSONANT},
|
||||
/* 53 */ { 15, s_0_53, 52, -1, 0},
|
||||
/* 54 */ { 12, s_0_54, 51, -1, r_CONSONANT},
|
||||
/* 55 */ { 15, s_0_55, 54, -1, 0},
|
||||
/* 56 */ { 6, s_0_56, -1, -1, 0},
|
||||
/* 57 */ { 9, s_0_57, 56, -1, 0},
|
||||
/* 58 */ { 9, s_0_58, 56, -1, 0},
|
||||
/* 59 */ { 9, s_0_59, 56, -1, 0},
|
||||
/* 60 */ { 9, s_0_60, 56, -1, 0},
|
||||
/* 61 */ { 12, s_0_61, 60, -1, r_CONSONANT},
|
||||
/* 62 */ { 15, s_0_62, 61, -1, 0},
|
||||
/* 63 */ { 12, s_0_63, 60, -1, r_CONSONANT},
|
||||
/* 64 */ { 15, s_0_64, 63, -1, 0},
|
||||
/* 65 */ { 6, s_0_65, -1, -1, 0},
|
||||
/* 66 */ { 12, s_0_66, 65, -1, 0},
|
||||
/* 67 */ { 15, s_0_67, 66, -1, 0},
|
||||
/* 68 */ { 15, s_0_68, 66, -1, 0},
|
||||
/* 69 */ { 12, s_0_69, 65, -1, 0},
|
||||
/* 70 */ { 3, s_0_70, -1, -1, 0},
|
||||
/* 71 */ { 3, s_0_71, -1, -1, 0},
|
||||
/* 72 */ { 3, s_0_72, -1, -1, 0},
|
||||
/* 73 */ { 3, s_0_73, -1, -1, 0},
|
||||
/* 74 */ { 3, s_0_74, -1, -1, 0},
|
||||
/* 75 */ { 12, s_0_75, 74, -1, 0},
|
||||
/* 76 */ { 12, s_0_76, 74, -1, 0},
|
||||
/* 77 */ { 15, s_0_77, 76, -1, 0},
|
||||
/* 78 */ { 15, s_0_78, 76, -1, 0},
|
||||
/* 79 */ { 9, s_0_79, 74, -1, 0},
|
||||
/* 80 */ { 9, s_0_80, 74, -1, 0},
|
||||
/* 81 */ { 12, s_0_81, 80, -1, 0},
|
||||
/* 82 */ { 12, s_0_82, 80, -1, 0},
|
||||
/* 83 */ { 6, s_0_83, 74, -1, r_CONSONANT},
|
||||
/* 84 */ { 9, s_0_84, 83, -1, 0},
|
||||
/* 85 */ { 9, s_0_85, 83, -1, 0},
|
||||
/* 86 */ { 9, s_0_86, 83, -1, 0},
|
||||
/* 87 */ { 6, s_0_87, 74, -1, r_CONSONANT},
|
||||
/* 88 */ { 9, s_0_88, 87, -1, 0},
|
||||
/* 89 */ { 9, s_0_89, 87, -1, 0},
|
||||
/* 90 */ { 9, s_0_90, 87, -1, 0},
|
||||
/* 91 */ { 3, s_0_91, -1, -1, 0},
|
||||
/* 92 */ { 6, s_0_92, 91, -1, 0},
|
||||
/* 93 */ { 6, s_0_93, 91, -1, 0},
|
||||
/* 94 */ { 3, s_0_94, -1, -1, 0},
|
||||
/* 95 */ { 3, s_0_95, -1, -1, 0},
|
||||
/* 96 */ { 3, s_0_96, -1, -1, 0},
|
||||
/* 97 */ { 3, s_0_97, -1, -1, 0},
|
||||
/* 98 */ { 3, s_0_98, -1, -1, 0},
|
||||
/* 99 */ { 6, s_0_99, 98, -1, 0},
|
||||
/*100 */ { 6, s_0_100, 98, -1, 0},
|
||||
/*101 */ { 9, s_0_101, 100, -1, 0},
|
||||
/*102 */ { 9, s_0_102, 100, -1, 0},
|
||||
/*103 */ { 6, s_0_103, 98, -1, 0},
|
||||
/*104 */ { 6, s_0_104, 98, -1, 0},
|
||||
/*105 */ { 3, s_0_105, -1, -1, 0},
|
||||
/*106 */ { 6, s_0_106, 105, -1, 0},
|
||||
/*107 */ { 6, s_0_107, 105, -1, 0},
|
||||
/*108 */ { 6, s_0_108, -1, -1, r_CONSONANT},
|
||||
/*109 */ { 9, s_0_109, 108, -1, 0},
|
||||
/*110 */ { 9, s_0_110, 108, -1, 0},
|
||||
/*111 */ { 9, s_0_111, 108, -1, 0},
|
||||
/*112 */ { 3, s_0_112, -1, -1, 0},
|
||||
/*113 */ { 12, s_0_113, 112, -1, 0},
|
||||
/*114 */ { 12, s_0_114, 112, -1, 0},
|
||||
/*115 */ { 15, s_0_115, 114, -1, 0},
|
||||
/*116 */ { 15, s_0_116, 114, -1, 0},
|
||||
/*117 */ { 9, s_0_117, 112, -1, 0},
|
||||
/*118 */ { 9, s_0_118, 112, -1, 0},
|
||||
/*119 */ { 12, s_0_119, 118, -1, 0},
|
||||
/*120 */ { 12, s_0_120, 118, -1, 0},
|
||||
/*121 */ { 6, s_0_121, 112, -1, r_CONSONANT},
|
||||
/*122 */ { 9, s_0_122, 121, -1, 0},
|
||||
/*123 */ { 9, s_0_123, 121, -1, 0},
|
||||
/*124 */ { 9, s_0_124, 121, -1, 0},
|
||||
/*125 */ { 6, s_0_125, 112, -1, r_CONSONANT},
|
||||
/*126 */ { 9, s_0_126, 125, -1, 0},
|
||||
/*127 */ { 9, s_0_127, 125, -1, 0},
|
||||
/*128 */ { 9, s_0_128, 125, -1, 0},
|
||||
/*129 */ { 9, s_0_129, 112, -1, 0},
|
||||
/*130 */ { 9, s_0_130, 112, -1, 0},
|
||||
/*131 */ { 3, s_0_131, -1, -1, 0}
|
||||
{ 3, s_0_0, -1, -1, 0},
|
||||
{ 12, s_0_1, 0, -1, 0},
|
||||
{ 12, s_0_2, 0, -1, 0},
|
||||
{ 12, s_0_3, 0, -1, 0},
|
||||
{ 15, s_0_4, 3, -1, 0},
|
||||
{ 15, s_0_5, 3, -1, 0},
|
||||
{ 12, s_0_6, 0, -1, 0},
|
||||
{ 15, s_0_7, 6, -1, 0},
|
||||
{ 15, s_0_8, 6, -1, 0},
|
||||
{ 9, s_0_9, 0, -1, 0},
|
||||
{ 9, s_0_10, 0, -1, 0},
|
||||
{ 9, s_0_11, 0, -1, 0},
|
||||
{ 12, s_0_12, 11, -1, 0},
|
||||
{ 12, s_0_13, 11, -1, 0},
|
||||
{ 9, s_0_14, 0, -1, 0},
|
||||
{ 12, s_0_15, 14, -1, 0},
|
||||
{ 12, s_0_16, 14, -1, 0},
|
||||
{ 6, s_0_17, 0, -1, r_CONSONANT},
|
||||
{ 9, s_0_18, 17, -1, 0},
|
||||
{ 9, s_0_19, 17, -1, 0},
|
||||
{ 9, s_0_20, 17, -1, 0},
|
||||
{ 6, s_0_21, 0, -1, r_CONSONANT},
|
||||
{ 9, s_0_22, 21, -1, 0},
|
||||
{ 6, s_0_23, -1, -1, 0},
|
||||
{ 6, s_0_24, -1, -1, 0},
|
||||
{ 12, s_0_25, 24, -1, 0},
|
||||
{ 15, s_0_26, 25, -1, 0},
|
||||
{ 15, s_0_27, 25, -1, 0},
|
||||
{ 12, s_0_28, 24, -1, 0},
|
||||
{ 3, s_0_29, -1, -1, 0},
|
||||
{ 6, s_0_30, -1, -1, 0},
|
||||
{ 9, s_0_31, 30, -1, r_CONSONANT},
|
||||
{ 12, s_0_32, 31, -1, 0},
|
||||
{ 12, s_0_33, 31, -1, 0},
|
||||
{ 12, s_0_34, 31, -1, 0},
|
||||
{ 6, s_0_35, -1, -1, 0},
|
||||
{ 9, s_0_36, 35, -1, 0},
|
||||
{ 9, s_0_37, 35, -1, 0},
|
||||
{ 6, s_0_38, -1, -1, 0},
|
||||
{ 6, s_0_39, -1, -1, 0},
|
||||
{ 9, s_0_40, 39, -1, 0},
|
||||
{ 9, s_0_41, 39, -1, 0},
|
||||
{ 6, s_0_42, -1, -1, 0},
|
||||
{ 12, s_0_43, 42, -1, 0},
|
||||
{ 15, s_0_44, 43, -1, 0},
|
||||
{ 15, s_0_45, 43, -1, 0},
|
||||
{ 12, s_0_46, 42, -1, 0},
|
||||
{ 6, s_0_47, -1, -1, 0},
|
||||
{ 9, s_0_48, 47, -1, 0},
|
||||
{ 9, s_0_49, 47, -1, 0},
|
||||
{ 9, s_0_50, 47, -1, 0},
|
||||
{ 9, s_0_51, 47, -1, 0},
|
||||
{ 12, s_0_52, 51, -1, r_CONSONANT},
|
||||
{ 15, s_0_53, 52, -1, 0},
|
||||
{ 12, s_0_54, 51, -1, r_CONSONANT},
|
||||
{ 15, s_0_55, 54, -1, 0},
|
||||
{ 6, s_0_56, -1, -1, 0},
|
||||
{ 9, s_0_57, 56, -1, 0},
|
||||
{ 9, s_0_58, 56, -1, 0},
|
||||
{ 9, s_0_59, 56, -1, 0},
|
||||
{ 9, s_0_60, 56, -1, 0},
|
||||
{ 12, s_0_61, 60, -1, r_CONSONANT},
|
||||
{ 15, s_0_62, 61, -1, 0},
|
||||
{ 12, s_0_63, 60, -1, r_CONSONANT},
|
||||
{ 15, s_0_64, 63, -1, 0},
|
||||
{ 6, s_0_65, -1, -1, 0},
|
||||
{ 12, s_0_66, 65, -1, 0},
|
||||
{ 15, s_0_67, 66, -1, 0},
|
||||
{ 15, s_0_68, 66, -1, 0},
|
||||
{ 12, s_0_69, 65, -1, 0},
|
||||
{ 3, s_0_70, -1, -1, 0},
|
||||
{ 3, s_0_71, -1, -1, 0},
|
||||
{ 3, s_0_72, -1, -1, 0},
|
||||
{ 3, s_0_73, -1, -1, 0},
|
||||
{ 3, s_0_74, -1, -1, 0},
|
||||
{ 12, s_0_75, 74, -1, 0},
|
||||
{ 12, s_0_76, 74, -1, 0},
|
||||
{ 15, s_0_77, 76, -1, 0},
|
||||
{ 15, s_0_78, 76, -1, 0},
|
||||
{ 9, s_0_79, 74, -1, 0},
|
||||
{ 9, s_0_80, 74, -1, 0},
|
||||
{ 12, s_0_81, 80, -1, 0},
|
||||
{ 12, s_0_82, 80, -1, 0},
|
||||
{ 6, s_0_83, 74, -1, r_CONSONANT},
|
||||
{ 9, s_0_84, 83, -1, 0},
|
||||
{ 9, s_0_85, 83, -1, 0},
|
||||
{ 9, s_0_86, 83, -1, 0},
|
||||
{ 6, s_0_87, 74, -1, r_CONSONANT},
|
||||
{ 9, s_0_88, 87, -1, 0},
|
||||
{ 9, s_0_89, 87, -1, 0},
|
||||
{ 9, s_0_90, 87, -1, 0},
|
||||
{ 3, s_0_91, -1, -1, 0},
|
||||
{ 6, s_0_92, 91, -1, 0},
|
||||
{ 6, s_0_93, 91, -1, 0},
|
||||
{ 3, s_0_94, -1, -1, 0},
|
||||
{ 3, s_0_95, -1, -1, 0},
|
||||
{ 3, s_0_96, -1, -1, 0},
|
||||
{ 3, s_0_97, -1, -1, 0},
|
||||
{ 3, s_0_98, -1, -1, 0},
|
||||
{ 6, s_0_99, 98, -1, 0},
|
||||
{ 6, s_0_100, 98, -1, 0},
|
||||
{ 9, s_0_101, 100, -1, 0},
|
||||
{ 9, s_0_102, 100, -1, 0},
|
||||
{ 6, s_0_103, 98, -1, 0},
|
||||
{ 6, s_0_104, 98, -1, 0},
|
||||
{ 3, s_0_105, -1, -1, 0},
|
||||
{ 6, s_0_106, 105, -1, 0},
|
||||
{ 6, s_0_107, 105, -1, 0},
|
||||
{ 6, s_0_108, -1, -1, r_CONSONANT},
|
||||
{ 9, s_0_109, 108, -1, 0},
|
||||
{ 9, s_0_110, 108, -1, 0},
|
||||
{ 9, s_0_111, 108, -1, 0},
|
||||
{ 3, s_0_112, -1, -1, 0},
|
||||
{ 12, s_0_113, 112, -1, 0},
|
||||
{ 12, s_0_114, 112, -1, 0},
|
||||
{ 15, s_0_115, 114, -1, 0},
|
||||
{ 15, s_0_116, 114, -1, 0},
|
||||
{ 9, s_0_117, 112, -1, 0},
|
||||
{ 9, s_0_118, 112, -1, 0},
|
||||
{ 12, s_0_119, 118, -1, 0},
|
||||
{ 12, s_0_120, 118, -1, 0},
|
||||
{ 6, s_0_121, 112, -1, r_CONSONANT},
|
||||
{ 9, s_0_122, 121, -1, 0},
|
||||
{ 9, s_0_123, 121, -1, 0},
|
||||
{ 9, s_0_124, 121, -1, 0},
|
||||
{ 6, s_0_125, 112, -1, r_CONSONANT},
|
||||
{ 9, s_0_126, 125, -1, 0},
|
||||
{ 9, s_0_127, 125, -1, 0},
|
||||
{ 9, s_0_128, 125, -1, 0},
|
||||
{ 9, s_0_129, 112, -1, 0},
|
||||
{ 9, s_0_130, 112, -1, 0},
|
||||
{ 3, s_0_131, -1, -1, 0}
|
||||
};
|
||||
|
||||
static const unsigned char g_consonant[] = { 255, 255, 255, 255, 159, 0, 0, 0, 248, 7 };
|
||||
|
||||
|
||||
static int r_CONSONANT(struct SN_env * z) { /* backwardmode */
|
||||
if (in_grouping_b_U(z, g_consonant, 2325, 2399, 0)) return 0; /* grouping consonant, line 129 */
|
||||
static int r_CONSONANT(struct SN_env * z) {
|
||||
if (in_grouping_b_U(z, g_consonant, 2325, 2399, 0)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern int hindi_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
{ int c_test1 = z->c; /* test, line 132 */
|
||||
{ int ret = skip_utf8(z->p, z->c, 0, z->l, 1);
|
||||
extern int hindi_UTF_8_stem(struct SN_env * z) {
|
||||
{ int c_test1 = z->c;
|
||||
{ int ret = skip_utf8(z->p, z->c, z->l, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c = ret; /* next, line 132 */
|
||||
z->c = ret;
|
||||
}
|
||||
z->I[0] = z->c; /* setmark p, line 132 */
|
||||
z->I[0] = z->c;
|
||||
z->c = c_test1;
|
||||
}
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 133 */
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
|
||||
{ int mlimit2; /* setlimit, line 139 */
|
||||
{ int mlimit2;
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit2 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 139 */
|
||||
if (!(find_among_b(z, a_0, 132))) { z->lb = mlimit2; return 0; } /* substring, line 139 */
|
||||
z->bra = z->c; /* ], line 139 */
|
||||
z->ket = z->c;
|
||||
if (!(find_among_b(z, a_0, 132))) { z->lb = mlimit2; return 0; }
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit2;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 321 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->lb;
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern struct SN_env * hindi_UTF_8_create_env(void) { return SN_create_env(0, 1, 0); }
|
||||
extern struct SN_env * hindi_UTF_8_create_env(void) { return SN_create_env(0, 1); }
|
||||
|
||||
extern void hindi_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#include "header.h"
|
||||
|
||||
@ -46,14 +46,14 @@ static const symbol s_0_7[2] = { 'z', 's' };
|
||||
|
||||
static const struct among a_0[8] =
|
||||
{
|
||||
/* 0 */ { 2, s_0_0, -1, -1, 0},
|
||||
/* 1 */ { 3, s_0_1, -1, -1, 0},
|
||||
/* 2 */ { 2, s_0_2, -1, -1, 0},
|
||||
/* 3 */ { 2, s_0_3, -1, -1, 0},
|
||||
/* 4 */ { 2, s_0_4, -1, -1, 0},
|
||||
/* 5 */ { 2, s_0_5, -1, -1, 0},
|
||||
/* 6 */ { 2, s_0_6, -1, -1, 0},
|
||||
/* 7 */ { 2, s_0_7, -1, -1, 0}
|
||||
{ 2, s_0_0, -1, -1, 0},
|
||||
{ 3, s_0_1, -1, -1, 0},
|
||||
{ 2, s_0_2, -1, -1, 0},
|
||||
{ 2, s_0_3, -1, -1, 0},
|
||||
{ 2, s_0_4, -1, -1, 0},
|
||||
{ 2, s_0_5, -1, -1, 0},
|
||||
{ 2, s_0_6, -1, -1, 0},
|
||||
{ 2, s_0_7, -1, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_1_0[2] = { 0xC3, 0xA1 };
|
||||
@ -61,8 +61,8 @@ static const symbol s_1_1[2] = { 0xC3, 0xA9 };
|
||||
|
||||
static const struct among a_1[2] =
|
||||
{
|
||||
/* 0 */ { 2, s_1_0, -1, 1, 0},
|
||||
/* 1 */ { 2, s_1_1, -1, 2, 0}
|
||||
{ 2, s_1_0, -1, 1, 0},
|
||||
{ 2, s_1_1, -1, 2, 0}
|
||||
};
|
||||
|
||||
static const symbol s_2_0[2] = { 'b', 'b' };
|
||||
@ -91,29 +91,29 @@ static const symbol s_2_22[2] = { 'z', 'z' };
|
||||
|
||||
static const struct among a_2[23] =
|
||||
{
|
||||
/* 0 */ { 2, s_2_0, -1, -1, 0},
|
||||
/* 1 */ { 2, s_2_1, -1, -1, 0},
|
||||
/* 2 */ { 2, s_2_2, -1, -1, 0},
|
||||
/* 3 */ { 2, s_2_3, -1, -1, 0},
|
||||
/* 4 */ { 2, s_2_4, -1, -1, 0},
|
||||
/* 5 */ { 2, s_2_5, -1, -1, 0},
|
||||
/* 6 */ { 2, s_2_6, -1, -1, 0},
|
||||
/* 7 */ { 2, s_2_7, -1, -1, 0},
|
||||
/* 8 */ { 2, s_2_8, -1, -1, 0},
|
||||
/* 9 */ { 2, s_2_9, -1, -1, 0},
|
||||
/* 10 */ { 2, s_2_10, -1, -1, 0},
|
||||
/* 11 */ { 2, s_2_11, -1, -1, 0},
|
||||
/* 12 */ { 3, s_2_12, -1, -1, 0},
|
||||
/* 13 */ { 2, s_2_13, -1, -1, 0},
|
||||
/* 14 */ { 3, s_2_14, -1, -1, 0},
|
||||
/* 15 */ { 2, s_2_15, -1, -1, 0},
|
||||
/* 16 */ { 2, s_2_16, -1, -1, 0},
|
||||
/* 17 */ { 3, s_2_17, -1, -1, 0},
|
||||
/* 18 */ { 3, s_2_18, -1, -1, 0},
|
||||
/* 19 */ { 3, s_2_19, -1, -1, 0},
|
||||
/* 20 */ { 3, s_2_20, -1, -1, 0},
|
||||
/* 21 */ { 3, s_2_21, -1, -1, 0},
|
||||
/* 22 */ { 2, s_2_22, -1, -1, 0}
|
||||
{ 2, s_2_0, -1, -1, 0},
|
||||
{ 2, s_2_1, -1, -1, 0},
|
||||
{ 2, s_2_2, -1, -1, 0},
|
||||
{ 2, s_2_3, -1, -1, 0},
|
||||
{ 2, s_2_4, -1, -1, 0},
|
||||
{ 2, s_2_5, -1, -1, 0},
|
||||
{ 2, s_2_6, -1, -1, 0},
|
||||
{ 2, s_2_7, -1, -1, 0},
|
||||
{ 2, s_2_8, -1, -1, 0},
|
||||
{ 2, s_2_9, -1, -1, 0},
|
||||
{ 2, s_2_10, -1, -1, 0},
|
||||
{ 2, s_2_11, -1, -1, 0},
|
||||
{ 3, s_2_12, -1, -1, 0},
|
||||
{ 2, s_2_13, -1, -1, 0},
|
||||
{ 3, s_2_14, -1, -1, 0},
|
||||
{ 2, s_2_15, -1, -1, 0},
|
||||
{ 2, s_2_16, -1, -1, 0},
|
||||
{ 3, s_2_17, -1, -1, 0},
|
||||
{ 3, s_2_18, -1, -1, 0},
|
||||
{ 3, s_2_19, -1, -1, 0},
|
||||
{ 3, s_2_20, -1, -1, 0},
|
||||
{ 3, s_2_21, -1, -1, 0},
|
||||
{ 2, s_2_22, -1, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_3_0[2] = { 'a', 'l' };
|
||||
@ -121,8 +121,8 @@ static const symbol s_3_1[2] = { 'e', 'l' };
|
||||
|
||||
static const struct among a_3[2] =
|
||||
{
|
||||
/* 0 */ { 2, s_3_0, -1, 1, 0},
|
||||
/* 1 */ { 2, s_3_1, -1, 1, 0}
|
||||
{ 2, s_3_0, -1, 1, 0},
|
||||
{ 2, s_3_1, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_4_0[2] = { 'b', 'a' };
|
||||
@ -172,50 +172,50 @@ static const symbol s_4_43[3] = { 'v', 0xC3, 0xA9 };
|
||||
|
||||
static const struct among a_4[44] =
|
||||
{
|
||||
/* 0 */ { 2, s_4_0, -1, -1, 0},
|
||||
/* 1 */ { 2, s_4_1, -1, -1, 0},
|
||||
/* 2 */ { 2, s_4_2, -1, -1, 0},
|
||||
/* 3 */ { 2, s_4_3, -1, -1, 0},
|
||||
/* 4 */ { 2, s_4_4, -1, -1, 0},
|
||||
/* 5 */ { 3, s_4_5, -1, -1, 0},
|
||||
/* 6 */ { 3, s_4_6, -1, -1, 0},
|
||||
/* 7 */ { 3, s_4_7, -1, -1, 0},
|
||||
/* 8 */ { 3, s_4_8, -1, -1, 0},
|
||||
/* 9 */ { 2, s_4_9, -1, -1, 0},
|
||||
/* 10 */ { 4, s_4_10, -1, -1, 0},
|
||||
/* 11 */ { 4, s_4_11, -1, -1, 0},
|
||||
/* 12 */ { 4, s_4_12, -1, -1, 0},
|
||||
/* 13 */ { 4, s_4_13, -1, -1, 0},
|
||||
/* 14 */ { 4, s_4_14, -1, -1, 0},
|
||||
/* 15 */ { 4, s_4_15, -1, -1, 0},
|
||||
/* 16 */ { 4, s_4_16, -1, -1, 0},
|
||||
/* 17 */ { 4, s_4_17, -1, -1, 0},
|
||||
/* 18 */ { 3, s_4_18, -1, -1, 0},
|
||||
/* 19 */ { 1, s_4_19, -1, -1, 0},
|
||||
/* 20 */ { 2, s_4_20, 19, -1, 0},
|
||||
/* 21 */ { 3, s_4_21, 20, -1, 0},
|
||||
/* 22 */ { 2, s_4_22, 19, -1, 0},
|
||||
/* 23 */ { 3, s_4_23, 22, -1, 0},
|
||||
/* 24 */ { 7, s_4_24, 22, -1, 0},
|
||||
/* 25 */ { 2, s_4_25, 19, -1, 0},
|
||||
/* 26 */ { 3, s_4_26, 19, -1, 0},
|
||||
/* 27 */ { 5, s_4_27, -1, -1, 0},
|
||||
/* 28 */ { 3, s_4_28, -1, -1, 0},
|
||||
/* 29 */ { 1, s_4_29, -1, -1, 0},
|
||||
/* 30 */ { 2, s_4_30, 29, -1, 0},
|
||||
/* 31 */ { 2, s_4_31, 29, -1, 0},
|
||||
/* 32 */ { 5, s_4_32, 29, -1, 0},
|
||||
/* 33 */ { 7, s_4_33, 32, -1, 0},
|
||||
/* 34 */ { 7, s_4_34, 32, -1, 0},
|
||||
/* 35 */ { 7, s_4_35, 32, -1, 0},
|
||||
/* 36 */ { 2, s_4_36, 29, -1, 0},
|
||||
/* 37 */ { 4, s_4_37, 29, -1, 0},
|
||||
/* 38 */ { 3, s_4_38, 29, -1, 0},
|
||||
/* 39 */ { 3, s_4_39, -1, -1, 0},
|
||||
/* 40 */ { 3, s_4_40, -1, -1, 0},
|
||||
/* 41 */ { 4, s_4_41, -1, -1, 0},
|
||||
/* 42 */ { 3, s_4_42, -1, -1, 0},
|
||||
/* 43 */ { 3, s_4_43, -1, -1, 0}
|
||||
{ 2, s_4_0, -1, -1, 0},
|
||||
{ 2, s_4_1, -1, -1, 0},
|
||||
{ 2, s_4_2, -1, -1, 0},
|
||||
{ 2, s_4_3, -1, -1, 0},
|
||||
{ 2, s_4_4, -1, -1, 0},
|
||||
{ 3, s_4_5, -1, -1, 0},
|
||||
{ 3, s_4_6, -1, -1, 0},
|
||||
{ 3, s_4_7, -1, -1, 0},
|
||||
{ 3, s_4_8, -1, -1, 0},
|
||||
{ 2, s_4_9, -1, -1, 0},
|
||||
{ 4, s_4_10, -1, -1, 0},
|
||||
{ 4, s_4_11, -1, -1, 0},
|
||||
{ 4, s_4_12, -1, -1, 0},
|
||||
{ 4, s_4_13, -1, -1, 0},
|
||||
{ 4, s_4_14, -1, -1, 0},
|
||||
{ 4, s_4_15, -1, -1, 0},
|
||||
{ 4, s_4_16, -1, -1, 0},
|
||||
{ 4, s_4_17, -1, -1, 0},
|
||||
{ 3, s_4_18, -1, -1, 0},
|
||||
{ 1, s_4_19, -1, -1, 0},
|
||||
{ 2, s_4_20, 19, -1, 0},
|
||||
{ 3, s_4_21, 20, -1, 0},
|
||||
{ 2, s_4_22, 19, -1, 0},
|
||||
{ 3, s_4_23, 22, -1, 0},
|
||||
{ 7, s_4_24, 22, -1, 0},
|
||||
{ 2, s_4_25, 19, -1, 0},
|
||||
{ 3, s_4_26, 19, -1, 0},
|
||||
{ 5, s_4_27, -1, -1, 0},
|
||||
{ 3, s_4_28, -1, -1, 0},
|
||||
{ 1, s_4_29, -1, -1, 0},
|
||||
{ 2, s_4_30, 29, -1, 0},
|
||||
{ 2, s_4_31, 29, -1, 0},
|
||||
{ 5, s_4_32, 29, -1, 0},
|
||||
{ 7, s_4_33, 32, -1, 0},
|
||||
{ 7, s_4_34, 32, -1, 0},
|
||||
{ 7, s_4_35, 32, -1, 0},
|
||||
{ 2, s_4_36, 29, -1, 0},
|
||||
{ 4, s_4_37, 29, -1, 0},
|
||||
{ 3, s_4_38, 29, -1, 0},
|
||||
{ 3, s_4_39, -1, -1, 0},
|
||||
{ 3, s_4_40, -1, -1, 0},
|
||||
{ 4, s_4_41, -1, -1, 0},
|
||||
{ 3, s_4_42, -1, -1, 0},
|
||||
{ 3, s_4_43, -1, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_5_0[3] = { 0xC3, 0xA1, 'n' };
|
||||
@ -224,9 +224,9 @@ static const symbol s_5_2[8] = { 0xC3, 0xA1, 'n', 'k', 0xC3, 0xA9, 'n', 't' };
|
||||
|
||||
static const struct among a_5[3] =
|
||||
{
|
||||
/* 0 */ { 3, s_5_0, -1, 2, 0},
|
||||
/* 1 */ { 3, s_5_1, -1, 1, 0},
|
||||
/* 2 */ { 8, s_5_2, -1, 2, 0}
|
||||
{ 3, s_5_0, -1, 2, 0},
|
||||
{ 3, s_5_1, -1, 1, 0},
|
||||
{ 8, s_5_2, -1, 2, 0}
|
||||
};
|
||||
|
||||
static const symbol s_6_0[4] = { 's', 't', 'u', 'l' };
|
||||
@ -238,12 +238,12 @@ static const symbol s_6_5[7] = { 0xC3, 0xA9, 's', 't', 0xC3, 0xBC, 'l' };
|
||||
|
||||
static const struct among a_6[6] =
|
||||
{
|
||||
/* 0 */ { 4, s_6_0, -1, 1, 0},
|
||||
/* 1 */ { 5, s_6_1, 0, 1, 0},
|
||||
/* 2 */ { 6, s_6_2, 0, 2, 0},
|
||||
/* 3 */ { 5, s_6_3, -1, 1, 0},
|
||||
/* 4 */ { 6, s_6_4, 3, 1, 0},
|
||||
/* 5 */ { 7, s_6_5, 3, 3, 0}
|
||||
{ 4, s_6_0, -1, 1, 0},
|
||||
{ 5, s_6_1, 0, 1, 0},
|
||||
{ 6, s_6_2, 0, 2, 0},
|
||||
{ 5, s_6_3, -1, 1, 0},
|
||||
{ 6, s_6_4, 3, 1, 0},
|
||||
{ 7, s_6_5, 3, 3, 0}
|
||||
};
|
||||
|
||||
static const symbol s_7_0[2] = { 0xC3, 0xA1 };
|
||||
@ -251,8 +251,8 @@ static const symbol s_7_1[2] = { 0xC3, 0xA9 };
|
||||
|
||||
static const struct among a_7[2] =
|
||||
{
|
||||
/* 0 */ { 2, s_7_0, -1, 1, 0},
|
||||
/* 1 */ { 2, s_7_1, -1, 1, 0}
|
||||
{ 2, s_7_0, -1, 1, 0},
|
||||
{ 2, s_7_1, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_8_0[1] = { 'k' };
|
||||
@ -265,13 +265,13 @@ static const symbol s_8_6[3] = { 0xC3, 0xB6, 'k' };
|
||||
|
||||
static const struct among a_8[7] =
|
||||
{
|
||||
/* 0 */ { 1, s_8_0, -1, 3, 0},
|
||||
/* 1 */ { 2, s_8_1, 0, 3, 0},
|
||||
/* 2 */ { 2, s_8_2, 0, 3, 0},
|
||||
/* 3 */ { 2, s_8_3, 0, 3, 0},
|
||||
/* 4 */ { 3, s_8_4, 0, 1, 0},
|
||||
/* 5 */ { 3, s_8_5, 0, 2, 0},
|
||||
/* 6 */ { 3, s_8_6, 0, 3, 0}
|
||||
{ 1, s_8_0, -1, 3, 0},
|
||||
{ 2, s_8_1, 0, 3, 0},
|
||||
{ 2, s_8_2, 0, 3, 0},
|
||||
{ 2, s_8_3, 0, 3, 0},
|
||||
{ 3, s_8_4, 0, 1, 0},
|
||||
{ 3, s_8_5, 0, 2, 0},
|
||||
{ 3, s_8_6, 0, 3, 0}
|
||||
};
|
||||
|
||||
static const symbol s_9_0[3] = { 0xC3, 0xA9, 'i' };
|
||||
@ -289,18 +289,18 @@ static const symbol s_9_11[4] = { 0xC3, 0xA9, 0xC3, 0xA9 };
|
||||
|
||||
static const struct among a_9[12] =
|
||||
{
|
||||
/* 0 */ { 3, s_9_0, -1, 1, 0},
|
||||
/* 1 */ { 5, s_9_1, 0, 3, 0},
|
||||
/* 2 */ { 5, s_9_2, 0, 2, 0},
|
||||
/* 3 */ { 2, s_9_3, -1, 1, 0},
|
||||
/* 4 */ { 3, s_9_4, 3, 1, 0},
|
||||
/* 5 */ { 4, s_9_5, 4, 1, 0},
|
||||
/* 6 */ { 4, s_9_6, 4, 1, 0},
|
||||
/* 7 */ { 4, s_9_7, 4, 1, 0},
|
||||
/* 8 */ { 5, s_9_8, 4, 3, 0},
|
||||
/* 9 */ { 5, s_9_9, 4, 2, 0},
|
||||
/* 10 */ { 5, s_9_10, 4, 1, 0},
|
||||
/* 11 */ { 4, s_9_11, 3, 2, 0}
|
||||
{ 3, s_9_0, -1, 1, 0},
|
||||
{ 5, s_9_1, 0, 3, 0},
|
||||
{ 5, s_9_2, 0, 2, 0},
|
||||
{ 2, s_9_3, -1, 1, 0},
|
||||
{ 3, s_9_4, 3, 1, 0},
|
||||
{ 4, s_9_5, 4, 1, 0},
|
||||
{ 4, s_9_6, 4, 1, 0},
|
||||
{ 4, s_9_7, 4, 1, 0},
|
||||
{ 5, s_9_8, 4, 3, 0},
|
||||
{ 5, s_9_9, 4, 2, 0},
|
||||
{ 5, s_9_10, 4, 1, 0},
|
||||
{ 4, s_9_11, 3, 2, 0}
|
||||
};
|
||||
|
||||
static const symbol s_10_0[1] = { 'a' };
|
||||
@ -337,37 +337,37 @@ static const symbol s_10_30[2] = { 0xC3, 0xA9 };
|
||||
|
||||
static const struct among a_10[31] =
|
||||
{
|
||||
/* 0 */ { 1, s_10_0, -1, 1, 0},
|
||||
/* 1 */ { 2, s_10_1, 0, 1, 0},
|
||||
/* 2 */ { 1, s_10_2, -1, 1, 0},
|
||||
/* 3 */ { 2, s_10_3, 2, 1, 0},
|
||||
/* 4 */ { 2, s_10_4, 2, 1, 0},
|
||||
/* 5 */ { 2, s_10_5, 2, 1, 0},
|
||||
/* 6 */ { 3, s_10_6, 2, 2, 0},
|
||||
/* 7 */ { 3, s_10_7, 2, 3, 0},
|
||||
/* 8 */ { 3, s_10_8, 2, 1, 0},
|
||||
/* 9 */ { 1, s_10_9, -1, 1, 0},
|
||||
/* 10 */ { 2, s_10_10, 9, 1, 0},
|
||||
/* 11 */ { 2, s_10_11, -1, 1, 0},
|
||||
/* 12 */ { 3, s_10_12, 11, 1, 0},
|
||||
/* 13 */ { 4, s_10_13, 11, 2, 0},
|
||||
/* 14 */ { 4, s_10_14, 11, 3, 0},
|
||||
/* 15 */ { 4, s_10_15, 11, 1, 0},
|
||||
/* 16 */ { 2, s_10_16, -1, 1, 0},
|
||||
/* 17 */ { 3, s_10_17, 16, 1, 0},
|
||||
/* 18 */ { 5, s_10_18, 17, 2, 0},
|
||||
/* 19 */ { 3, s_10_19, -1, 1, 0},
|
||||
/* 20 */ { 4, s_10_20, 19, 1, 0},
|
||||
/* 21 */ { 6, s_10_21, 20, 3, 0},
|
||||
/* 22 */ { 1, s_10_22, -1, 1, 0},
|
||||
/* 23 */ { 2, s_10_23, 22, 1, 0},
|
||||
/* 24 */ { 2, s_10_24, 22, 1, 0},
|
||||
/* 25 */ { 2, s_10_25, 22, 1, 0},
|
||||
/* 26 */ { 3, s_10_26, 22, 2, 0},
|
||||
/* 27 */ { 3, s_10_27, 22, 3, 0},
|
||||
/* 28 */ { 1, s_10_28, -1, 1, 0},
|
||||
/* 29 */ { 2, s_10_29, -1, 2, 0},
|
||||
/* 30 */ { 2, s_10_30, -1, 3, 0}
|
||||
{ 1, s_10_0, -1, 1, 0},
|
||||
{ 2, s_10_1, 0, 1, 0},
|
||||
{ 1, s_10_2, -1, 1, 0},
|
||||
{ 2, s_10_3, 2, 1, 0},
|
||||
{ 2, s_10_4, 2, 1, 0},
|
||||
{ 2, s_10_5, 2, 1, 0},
|
||||
{ 3, s_10_6, 2, 2, 0},
|
||||
{ 3, s_10_7, 2, 3, 0},
|
||||
{ 3, s_10_8, 2, 1, 0},
|
||||
{ 1, s_10_9, -1, 1, 0},
|
||||
{ 2, s_10_10, 9, 1, 0},
|
||||
{ 2, s_10_11, -1, 1, 0},
|
||||
{ 3, s_10_12, 11, 1, 0},
|
||||
{ 4, s_10_13, 11, 2, 0},
|
||||
{ 4, s_10_14, 11, 3, 0},
|
||||
{ 4, s_10_15, 11, 1, 0},
|
||||
{ 2, s_10_16, -1, 1, 0},
|
||||
{ 3, s_10_17, 16, 1, 0},
|
||||
{ 5, s_10_18, 17, 2, 0},
|
||||
{ 3, s_10_19, -1, 1, 0},
|
||||
{ 4, s_10_20, 19, 1, 0},
|
||||
{ 6, s_10_21, 20, 3, 0},
|
||||
{ 1, s_10_22, -1, 1, 0},
|
||||
{ 2, s_10_23, 22, 1, 0},
|
||||
{ 2, s_10_24, 22, 1, 0},
|
||||
{ 2, s_10_25, 22, 1, 0},
|
||||
{ 3, s_10_26, 22, 2, 0},
|
||||
{ 3, s_10_27, 22, 3, 0},
|
||||
{ 1, s_10_28, -1, 1, 0},
|
||||
{ 2, s_10_29, -1, 2, 0},
|
||||
{ 2, s_10_30, -1, 3, 0}
|
||||
};
|
||||
|
||||
static const symbol s_11_0[2] = { 'i', 'd' };
|
||||
@ -415,48 +415,48 @@ static const symbol s_11_41[4] = { 0xC3, 0xA9, 'i', 'm' };
|
||||
|
||||
static const struct among a_11[42] =
|
||||
{
|
||||
/* 0 */ { 2, s_11_0, -1, 1, 0},
|
||||
/* 1 */ { 3, s_11_1, 0, 1, 0},
|
||||
/* 2 */ { 4, s_11_2, 1, 1, 0},
|
||||
/* 3 */ { 3, s_11_3, 0, 1, 0},
|
||||
/* 4 */ { 4, s_11_4, 3, 1, 0},
|
||||
/* 5 */ { 4, s_11_5, 0, 2, 0},
|
||||
/* 6 */ { 4, s_11_6, 0, 3, 0},
|
||||
/* 7 */ { 1, s_11_7, -1, 1, 0},
|
||||
/* 8 */ { 2, s_11_8, 7, 1, 0},
|
||||
/* 9 */ { 3, s_11_9, 8, 1, 0},
|
||||
/* 10 */ { 2, s_11_10, 7, 1, 0},
|
||||
/* 11 */ { 3, s_11_11, 10, 1, 0},
|
||||
/* 12 */ { 3, s_11_12, 7, 2, 0},
|
||||
/* 13 */ { 3, s_11_13, 7, 3, 0},
|
||||
/* 14 */ { 4, s_11_14, -1, 1, 0},
|
||||
/* 15 */ { 5, s_11_15, 14, 1, 0},
|
||||
/* 16 */ { 6, s_11_16, 15, 1, 0},
|
||||
/* 17 */ { 6, s_11_17, 14, 3, 0},
|
||||
/* 18 */ { 2, s_11_18, -1, 1, 0},
|
||||
/* 19 */ { 3, s_11_19, 18, 1, 0},
|
||||
/* 20 */ { 4, s_11_20, 19, 1, 0},
|
||||
/* 21 */ { 3, s_11_21, 18, 1, 0},
|
||||
/* 22 */ { 4, s_11_22, 21, 1, 0},
|
||||
/* 23 */ { 4, s_11_23, 18, 2, 0},
|
||||
/* 24 */ { 4, s_11_24, 18, 3, 0},
|
||||
/* 25 */ { 3, s_11_25, -1, 1, 0},
|
||||
/* 26 */ { 4, s_11_26, 25, 1, 0},
|
||||
/* 27 */ { 5, s_11_27, 26, 1, 0},
|
||||
/* 28 */ { 4, s_11_28, 25, 1, 0},
|
||||
/* 29 */ { 5, s_11_29, 28, 1, 0},
|
||||
/* 30 */ { 5, s_11_30, 25, 2, 0},
|
||||
/* 31 */ { 5, s_11_31, 25, 3, 0},
|
||||
/* 32 */ { 5, s_11_32, -1, 1, 0},
|
||||
/* 33 */ { 6, s_11_33, 32, 1, 0},
|
||||
/* 34 */ { 6, s_11_34, -1, 2, 0},
|
||||
/* 35 */ { 2, s_11_35, -1, 1, 0},
|
||||
/* 36 */ { 3, s_11_36, 35, 1, 0},
|
||||
/* 37 */ { 4, s_11_37, 36, 1, 0},
|
||||
/* 38 */ { 3, s_11_38, 35, 1, 0},
|
||||
/* 39 */ { 4, s_11_39, 38, 1, 0},
|
||||
/* 40 */ { 4, s_11_40, 35, 2, 0},
|
||||
/* 41 */ { 4, s_11_41, 35, 3, 0}
|
||||
{ 2, s_11_0, -1, 1, 0},
|
||||
{ 3, s_11_1, 0, 1, 0},
|
||||
{ 4, s_11_2, 1, 1, 0},
|
||||
{ 3, s_11_3, 0, 1, 0},
|
||||
{ 4, s_11_4, 3, 1, 0},
|
||||
{ 4, s_11_5, 0, 2, 0},
|
||||
{ 4, s_11_6, 0, 3, 0},
|
||||
{ 1, s_11_7, -1, 1, 0},
|
||||
{ 2, s_11_8, 7, 1, 0},
|
||||
{ 3, s_11_9, 8, 1, 0},
|
||||
{ 2, s_11_10, 7, 1, 0},
|
||||
{ 3, s_11_11, 10, 1, 0},
|
||||
{ 3, s_11_12, 7, 2, 0},
|
||||
{ 3, s_11_13, 7, 3, 0},
|
||||
{ 4, s_11_14, -1, 1, 0},
|
||||
{ 5, s_11_15, 14, 1, 0},
|
||||
{ 6, s_11_16, 15, 1, 0},
|
||||
{ 6, s_11_17, 14, 3, 0},
|
||||
{ 2, s_11_18, -1, 1, 0},
|
||||
{ 3, s_11_19, 18, 1, 0},
|
||||
{ 4, s_11_20, 19, 1, 0},
|
||||
{ 3, s_11_21, 18, 1, 0},
|
||||
{ 4, s_11_22, 21, 1, 0},
|
||||
{ 4, s_11_23, 18, 2, 0},
|
||||
{ 4, s_11_24, 18, 3, 0},
|
||||
{ 3, s_11_25, -1, 1, 0},
|
||||
{ 4, s_11_26, 25, 1, 0},
|
||||
{ 5, s_11_27, 26, 1, 0},
|
||||
{ 4, s_11_28, 25, 1, 0},
|
||||
{ 5, s_11_29, 28, 1, 0},
|
||||
{ 5, s_11_30, 25, 2, 0},
|
||||
{ 5, s_11_31, 25, 3, 0},
|
||||
{ 5, s_11_32, -1, 1, 0},
|
||||
{ 6, s_11_33, 32, 1, 0},
|
||||
{ 6, s_11_34, -1, 2, 0},
|
||||
{ 2, s_11_35, -1, 1, 0},
|
||||
{ 3, s_11_36, 35, 1, 0},
|
||||
{ 4, s_11_37, 36, 1, 0},
|
||||
{ 3, s_11_38, 35, 1, 0},
|
||||
{ 4, s_11_39, 38, 1, 0},
|
||||
{ 4, s_11_40, 35, 2, 0},
|
||||
{ 4, s_11_41, 35, 3, 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, 36, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1 };
|
||||
@ -476,62 +476,62 @@ static const symbol s_11[] = { 'e' };
|
||||
static const symbol s_12[] = { 'a' };
|
||||
static const symbol s_13[] = { 'e' };
|
||||
|
||||
static int r_mark_regions(struct SN_env * z) { /* forwardmode */
|
||||
z->I[0] = z->l; /* $p1 = <integer expression>, line 46 */
|
||||
{ int c1 = z->c; /* or, line 51 */
|
||||
if (in_grouping_U(z, g_v, 97, 369, 0)) goto lab1; /* grouping v, line 48 */
|
||||
if (in_grouping_U(z, g_v, 97, 369, 1) < 0) goto lab1; /* goto */ /* non v, line 48 */
|
||||
{ int c2 = z->c; /* or, line 49 */
|
||||
if (z->c + 1 >= z->l || z->p[z->c + 1] >> 5 != 3 || !((101187584 >> (z->p[z->c + 1] & 0x1f)) & 1)) goto lab3; /* among, line 49 */
|
||||
static int r_mark_regions(struct SN_env * z) {
|
||||
z->I[0] = z->l;
|
||||
{ int c1 = z->c;
|
||||
if (in_grouping_U(z, g_v, 97, 369, 0)) goto lab1;
|
||||
if (in_grouping_U(z, g_v, 97, 369, 1) < 0) goto lab1;
|
||||
{ int c2 = z->c;
|
||||
if (z->c + 1 >= z->l || z->p[z->c + 1] >> 5 != 3 || !((101187584 >> (z->p[z->c + 1] & 0x1f)) & 1)) goto lab3;
|
||||
if (!(find_among(z, a_0, 8))) goto lab3;
|
||||
goto lab2;
|
||||
lab3:
|
||||
z->c = c2;
|
||||
{ int ret = skip_utf8(z->p, z->c, 0, z->l, 1);
|
||||
{ int ret = skip_utf8(z->p, z->c, z->l, 1);
|
||||
if (ret < 0) goto lab1;
|
||||
z->c = ret; /* next, line 49 */
|
||||
z->c = ret;
|
||||
}
|
||||
}
|
||||
lab2:
|
||||
z->I[0] = z->c; /* setmark p1, line 50 */
|
||||
z->I[0] = z->c;
|
||||
goto lab0;
|
||||
lab1:
|
||||
z->c = c1;
|
||||
if (out_grouping_U(z, g_v, 97, 369, 0)) return 0; /* non v, line 53 */
|
||||
{ /* gopast */ /* grouping v, line 53 */
|
||||
if (out_grouping_U(z, g_v, 97, 369, 0)) return 0;
|
||||
{
|
||||
int ret = out_grouping_U(z, g_v, 97, 369, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[0] = z->c; /* setmark p1, line 53 */
|
||||
z->I[0] = z->c;
|
||||
}
|
||||
lab0:
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_R1(struct SN_env * z) { /* backwardmode */
|
||||
if (!(z->I[0] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 58 */
|
||||
static int r_R1(struct SN_env * z) {
|
||||
if (!(z->I[0] <= z->c)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_v_ending(struct SN_env * z) { /* backwardmode */
|
||||
static int r_v_ending(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 61 */
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 161 && z->p[z->c - 1] != 169)) return 0; /* substring, line 61 */
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 161 && z->p[z->c - 1] != 169)) return 0;
|
||||
among_var = find_among_b(z, a_1, 2);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 61 */
|
||||
{ int ret = r_R1(z); /* call R1, line 61 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
switch (among_var) { /* among, line 61 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_from_s(z, 1, s_0); /* <-, line 62 */
|
||||
{ int ret = slice_from_s(z, 1, s_0);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 1, s_1); /* <-, line 63 */
|
||||
{ int ret = slice_from_s(z, 1, s_1);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -539,86 +539,86 @@ static int r_v_ending(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_double(struct SN_env * z) { /* backwardmode */
|
||||
{ int m_test1 = z->l - z->c; /* test, line 68 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((106790108 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* among, line 68 */
|
||||
static int r_double(struct SN_env * z) {
|
||||
{ int m_test1 = z->l - z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((106790108 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
|
||||
if (!(find_among_b(z, a_2, 23))) return 0;
|
||||
z->c = z->l - m_test1;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_undouble(struct SN_env * z) { /* backwardmode */
|
||||
{ int ret = skip_utf8(z->p, z->c, z->lb, 0, -1);
|
||||
if (ret < 0) return 0;
|
||||
z->c = ret; /* next, line 73 */
|
||||
}
|
||||
z->ket = z->c; /* [, line 73 */
|
||||
{ int ret = skip_utf8(z->p, z->c, z->lb, z->l, - 1); /* hop, line 73 */
|
||||
static int r_undouble(struct SN_env * z) {
|
||||
{ int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c = ret;
|
||||
}
|
||||
z->bra = z->c; /* ], line 73 */
|
||||
{ int ret = slice_del(z); /* delete, line 73 */
|
||||
z->ket = z->c;
|
||||
{ int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c = ret;
|
||||
}
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_instrum(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 77 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] != 108) return 0; /* substring, line 77 */
|
||||
static int r_instrum(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] != 108) return 0;
|
||||
if (!(find_among_b(z, a_3, 2))) return 0;
|
||||
z->bra = z->c; /* ], line 77 */
|
||||
{ int ret = r_R1(z); /* call R1, line 77 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int ret = r_double(z); /* call double, line 78 */
|
||||
{ int ret = r_double(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 81 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int ret = r_undouble(z); /* call undouble, line 82 */
|
||||
{ int ret = r_undouble(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_case(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 87 */
|
||||
if (!(find_among_b(z, a_4, 44))) return 0; /* substring, line 87 */
|
||||
z->bra = z->c; /* ], line 87 */
|
||||
{ int ret = r_R1(z); /* call R1, line 87 */
|
||||
static int r_case(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (!(find_among_b(z, a_4, 44))) return 0;
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 111 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int ret = r_v_ending(z); /* call v_ending, line 112 */
|
||||
{ int ret = r_v_ending(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_case_special(struct SN_env * z) { /* backwardmode */
|
||||
static int r_case_special(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 116 */
|
||||
if (z->c - 2 <= z->lb || (z->p[z->c - 1] != 110 && z->p[z->c - 1] != 116)) return 0; /* substring, line 116 */
|
||||
z->ket = z->c;
|
||||
if (z->c - 2 <= z->lb || (z->p[z->c - 1] != 110 && z->p[z->c - 1] != 116)) return 0;
|
||||
among_var = find_among_b(z, a_5, 3);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 116 */
|
||||
{ int ret = r_R1(z); /* call R1, line 116 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
switch (among_var) { /* among, line 116 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_from_s(z, 1, s_2); /* <-, line 117 */
|
||||
{ int ret = slice_from_s(z, 1, s_2);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 1, s_3); /* <-, line 118 */
|
||||
{ int ret = slice_from_s(z, 1, s_3);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -626,29 +626,29 @@ static int r_case_special(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_case_other(struct SN_env * z) { /* backwardmode */
|
||||
static int r_case_other(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 124 */
|
||||
if (z->c - 3 <= z->lb || z->p[z->c - 1] != 108) return 0; /* substring, line 124 */
|
||||
z->ket = z->c;
|
||||
if (z->c - 3 <= z->lb || z->p[z->c - 1] != 108) return 0;
|
||||
among_var = find_among_b(z, a_6, 6);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 124 */
|
||||
{ int ret = r_R1(z); /* call R1, line 124 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
switch (among_var) { /* among, line 124 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 125 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 1, s_4); /* <-, line 127 */
|
||||
{ int ret = slice_from_s(z, 1, s_4);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_from_s(z, 1, s_5); /* <-, line 128 */
|
||||
{ int ret = slice_from_s(z, 1, s_5);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -656,49 +656,49 @@ static int r_case_other(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_factive(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 133 */
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 161 && z->p[z->c - 1] != 169)) return 0; /* substring, line 133 */
|
||||
static int r_factive(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 161 && z->p[z->c - 1] != 169)) return 0;
|
||||
if (!(find_among_b(z, a_7, 2))) return 0;
|
||||
z->bra = z->c; /* ], line 133 */
|
||||
{ int ret = r_R1(z); /* call R1, line 133 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int ret = r_double(z); /* call double, line 134 */
|
||||
{ int ret = r_double(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 137 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int ret = r_undouble(z); /* call undouble, line 138 */
|
||||
{ int ret = r_undouble(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_plural(struct SN_env * z) { /* backwardmode */
|
||||
static int r_plural(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 142 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 107) return 0; /* substring, line 142 */
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 107) return 0;
|
||||
among_var = find_among_b(z, a_8, 7);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 142 */
|
||||
{ int ret = r_R1(z); /* call R1, line 142 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
switch (among_var) { /* among, line 142 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_from_s(z, 1, s_6); /* <-, line 143 */
|
||||
{ int ret = slice_from_s(z, 1, s_6);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 1, s_7); /* <-, line 144 */
|
||||
{ int ret = slice_from_s(z, 1, s_7);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_del(z); /* delete, line 145 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -706,29 +706,29 @@ static int r_plural(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_owned(struct SN_env * z) { /* backwardmode */
|
||||
static int r_owned(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 154 */
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 105 && z->p[z->c - 1] != 169)) return 0; /* substring, line 154 */
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 105 && z->p[z->c - 1] != 169)) return 0;
|
||||
among_var = find_among_b(z, a_9, 12);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 154 */
|
||||
{ int ret = r_R1(z); /* call R1, line 154 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
switch (among_var) { /* among, line 154 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 155 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 1, s_8); /* <-, line 156 */
|
||||
{ int ret = slice_from_s(z, 1, s_8);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_from_s(z, 1, s_9); /* <-, line 157 */
|
||||
{ int ret = slice_from_s(z, 1, s_9);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -736,28 +736,28 @@ static int r_owned(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_sing_owner(struct SN_env * z) { /* backwardmode */
|
||||
static int r_sing_owner(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 168 */
|
||||
among_var = find_among_b(z, a_10, 31); /* substring, line 168 */
|
||||
z->ket = z->c;
|
||||
among_var = find_among_b(z, a_10, 31);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 168 */
|
||||
{ int ret = r_R1(z); /* call R1, line 168 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
switch (among_var) { /* among, line 168 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 169 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 1, s_10); /* <-, line 170 */
|
||||
{ int ret = slice_from_s(z, 1, s_10);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_from_s(z, 1, s_11); /* <-, line 171 */
|
||||
{ int ret = slice_from_s(z, 1, s_11);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -765,29 +765,29 @@ static int r_sing_owner(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_plur_owner(struct SN_env * z) { /* backwardmode */
|
||||
static int r_plur_owner(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 193 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((10768 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 193 */
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((10768 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
|
||||
among_var = find_among_b(z, a_11, 42);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 193 */
|
||||
{ int ret = r_R1(z); /* call R1, line 193 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
switch (among_var) { /* among, line 193 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 194 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 1, s_12); /* <-, line 195 */
|
||||
{ int ret = slice_from_s(z, 1, s_12);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_from_s(z, 1, s_13); /* <-, line 196 */
|
||||
{ int ret = slice_from_s(z, 1, s_13);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -795,65 +795,65 @@ static int r_plur_owner(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern int hungarian_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
{ int c1 = z->c; /* do, line 229 */
|
||||
{ int ret = r_mark_regions(z); /* call mark_regions, line 229 */
|
||||
extern int hungarian_UTF_8_stem(struct SN_env * z) {
|
||||
{ int c1 = z->c;
|
||||
{ int ret = r_mark_regions(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = c1;
|
||||
}
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 230 */
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
{ int m2 = z->l - z->c; (void)m2; /* do, line 231 */
|
||||
{ int ret = r_instrum(z); /* call instrum, line 231 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
{ int ret = r_instrum(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m2;
|
||||
}
|
||||
{ int m3 = z->l - z->c; (void)m3; /* do, line 232 */
|
||||
{ int ret = r_case(z); /* call case, line 232 */
|
||||
{ int m3 = z->l - z->c; (void)m3;
|
||||
{ int ret = r_case(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m3;
|
||||
}
|
||||
{ int m4 = z->l - z->c; (void)m4; /* do, line 233 */
|
||||
{ int ret = r_case_special(z); /* call case_special, line 233 */
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
{ int ret = r_case_special(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m4;
|
||||
}
|
||||
{ int m5 = z->l - z->c; (void)m5; /* do, line 234 */
|
||||
{ int ret = r_case_other(z); /* call case_other, line 234 */
|
||||
{ int m5 = z->l - z->c; (void)m5;
|
||||
{ int ret = r_case_other(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m5;
|
||||
}
|
||||
{ int m6 = z->l - z->c; (void)m6; /* do, line 235 */
|
||||
{ int ret = r_factive(z); /* call factive, line 235 */
|
||||
{ int m6 = z->l - z->c; (void)m6;
|
||||
{ int ret = r_factive(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m6;
|
||||
}
|
||||
{ int m7 = z->l - z->c; (void)m7; /* do, line 236 */
|
||||
{ int ret = r_owned(z); /* call owned, line 236 */
|
||||
{ int m7 = z->l - z->c; (void)m7;
|
||||
{ int ret = r_owned(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m7;
|
||||
}
|
||||
{ int m8 = z->l - z->c; (void)m8; /* do, line 237 */
|
||||
{ int ret = r_sing_owner(z); /* call sing_owner, line 237 */
|
||||
{ int m8 = z->l - z->c; (void)m8;
|
||||
{ int ret = r_sing_owner(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m8;
|
||||
}
|
||||
{ int m9 = z->l - z->c; (void)m9; /* do, line 238 */
|
||||
{ int ret = r_plur_owner(z); /* call plur_owner, line 238 */
|
||||
{ int m9 = z->l - z->c; (void)m9;
|
||||
{ int ret = r_plur_owner(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m9;
|
||||
}
|
||||
{ int m10 = z->l - z->c; (void)m10; /* do, line 239 */
|
||||
{ int ret = r_plural(z); /* call plural, line 239 */
|
||||
{ int m10 = z->l - z->c; (void)m10;
|
||||
{ int ret = r_plural(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m10;
|
||||
@ -862,7 +862,7 @@ extern int hungarian_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern struct SN_env * hungarian_UTF_8_create_env(void) { return SN_create_env(0, 1, 0); }
|
||||
extern struct SN_env * hungarian_UTF_8_create_env(void) { return SN_create_env(0, 1); }
|
||||
|
||||
extern void hungarian_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#include "header.h"
|
||||
|
||||
@ -37,9 +37,9 @@ static const symbol s_0_2[3] = { 'p', 'u', 'n' };
|
||||
|
||||
static const struct among a_0[3] =
|
||||
{
|
||||
/* 0 */ { 3, s_0_0, -1, 1, 0},
|
||||
/* 1 */ { 3, s_0_1, -1, 1, 0},
|
||||
/* 2 */ { 3, s_0_2, -1, 1, 0}
|
||||
{ 3, s_0_0, -1, 1, 0},
|
||||
{ 3, s_0_1, -1, 1, 0},
|
||||
{ 3, s_0_2, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_1_0[3] = { 'n', 'y', 'a' };
|
||||
@ -48,9 +48,9 @@ static const symbol s_1_2[2] = { 'm', 'u' };
|
||||
|
||||
static const struct among a_1[3] =
|
||||
{
|
||||
/* 0 */ { 3, s_1_0, -1, 1, 0},
|
||||
/* 1 */ { 2, s_1_1, -1, 1, 0},
|
||||
/* 2 */ { 2, s_1_2, -1, 1, 0}
|
||||
{ 3, s_1_0, -1, 1, 0},
|
||||
{ 2, s_1_1, -1, 1, 0},
|
||||
{ 2, s_1_2, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_2_0[1] = { 'i' };
|
||||
@ -59,9 +59,9 @@ static const symbol s_2_2[3] = { 'k', 'a', 'n' };
|
||||
|
||||
static const struct among a_2[3] =
|
||||
{
|
||||
/* 0 */ { 1, s_2_0, -1, 1, r_SUFFIX_I_OK},
|
||||
/* 1 */ { 2, s_2_1, -1, 1, r_SUFFIX_AN_OK},
|
||||
/* 2 */ { 3, s_2_2, 1, 1, r_SUFFIX_KAN_OK}
|
||||
{ 1, s_2_0, -1, 1, r_SUFFIX_I_OK},
|
||||
{ 2, s_2_1, -1, 1, r_SUFFIX_AN_OK},
|
||||
{ 3, s_2_2, 1, 1, r_SUFFIX_KAN_OK}
|
||||
};
|
||||
|
||||
static const symbol s_3_0[2] = { 'd', 'i' };
|
||||
@ -79,18 +79,18 @@ static const symbol s_3_11[3] = { 't', 'e', 'r' };
|
||||
|
||||
static const struct among a_3[12] =
|
||||
{
|
||||
/* 0 */ { 2, s_3_0, -1, 1, 0},
|
||||
/* 1 */ { 2, s_3_1, -1, 2, 0},
|
||||
/* 2 */ { 2, s_3_2, -1, 1, 0},
|
||||
/* 3 */ { 3, s_3_3, 2, 5, 0},
|
||||
/* 4 */ { 3, s_3_4, 2, 1, 0},
|
||||
/* 5 */ { 4, s_3_5, 4, 1, 0},
|
||||
/* 6 */ { 4, s_3_6, 4, 3, r_VOWEL},
|
||||
/* 7 */ { 3, s_3_7, -1, 6, 0},
|
||||
/* 8 */ { 3, s_3_8, -1, 2, 0},
|
||||
/* 9 */ { 4, s_3_9, 8, 2, 0},
|
||||
/* 10 */ { 4, s_3_10, 8, 4, r_VOWEL},
|
||||
/* 11 */ { 3, s_3_11, -1, 1, 0}
|
||||
{ 2, s_3_0, -1, 1, 0},
|
||||
{ 2, s_3_1, -1, 2, 0},
|
||||
{ 2, s_3_2, -1, 1, 0},
|
||||
{ 3, s_3_3, 2, 5, 0},
|
||||
{ 3, s_3_4, 2, 1, 0},
|
||||
{ 4, s_3_5, 4, 1, 0},
|
||||
{ 4, s_3_6, 4, 3, r_VOWEL},
|
||||
{ 3, s_3_7, -1, 6, 0},
|
||||
{ 3, s_3_8, -1, 2, 0},
|
||||
{ 4, s_3_9, 8, 2, 0},
|
||||
{ 4, s_3_10, 8, 4, r_VOWEL},
|
||||
{ 3, s_3_11, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_4_0[2] = { 'b', 'e' };
|
||||
@ -102,12 +102,12 @@ static const symbol s_4_5[3] = { 'p', 'e', 'r' };
|
||||
|
||||
static const struct among a_4[6] =
|
||||
{
|
||||
/* 0 */ { 2, s_4_0, -1, 3, r_KER},
|
||||
/* 1 */ { 7, s_4_1, 0, 4, 0},
|
||||
/* 2 */ { 3, s_4_2, 0, 3, 0},
|
||||
/* 3 */ { 2, s_4_3, -1, 1, 0},
|
||||
/* 4 */ { 7, s_4_4, 3, 2, 0},
|
||||
/* 5 */ { 3, s_4_5, 3, 1, 0}
|
||||
{ 2, s_4_0, -1, 3, r_KER},
|
||||
{ 7, s_4_1, 0, 4, 0},
|
||||
{ 3, s_4_2, 0, 3, 0},
|
||||
{ 2, s_4_3, -1, 1, 0},
|
||||
{ 7, s_4_4, 3, 2, 0},
|
||||
{ 3, s_4_5, 3, 1, 0}
|
||||
};
|
||||
|
||||
static const unsigned char g_vowel[] = { 17, 65, 16 };
|
||||
@ -120,46 +120,46 @@ static const symbol s_4[] = { 'p' };
|
||||
static const symbol s_5[] = { 'a', 'j', 'a', 'r' };
|
||||
static const symbol s_6[] = { 'a', 'j', 'a', 'r' };
|
||||
|
||||
static int r_remove_particle(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 51 */
|
||||
if (z->c - 2 <= z->lb || (z->p[z->c - 1] != 104 && z->p[z->c - 1] != 110)) return 0; /* substring, line 51 */
|
||||
static int r_remove_particle(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (z->c - 2 <= z->lb || (z->p[z->c - 1] != 104 && z->p[z->c - 1] != 110)) return 0;
|
||||
if (!(find_among_b(z, a_0, 3))) return 0;
|
||||
z->bra = z->c; /* ], line 51 */
|
||||
{ int ret = slice_del(z); /* delete, line 52 */
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->I[0] -= 1; /* $measure -= <integer expression>, line 52 */
|
||||
z->I[1] -= 1;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_remove_possessive_pronoun(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 57 */
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 97 && z->p[z->c - 1] != 117)) return 0; /* substring, line 57 */
|
||||
static int r_remove_possessive_pronoun(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 97 && z->p[z->c - 1] != 117)) return 0;
|
||||
if (!(find_among_b(z, a_1, 3))) return 0;
|
||||
z->bra = z->c; /* ], line 57 */
|
||||
{ int ret = slice_del(z); /* delete, line 58 */
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->I[0] -= 1; /* $measure -= <integer expression>, line 58 */
|
||||
z->I[1] -= 1;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_SUFFIX_KAN_OK(struct SN_env * z) { /* backwardmode */
|
||||
/* and, line 85 */
|
||||
if (!(z->I[1] != 3)) return 0; /* $(<integer expression> != <integer expression>), line 85 */
|
||||
if (!(z->I[1] != 2)) return 0; /* $(<integer expression> != <integer expression>), line 85 */
|
||||
static int r_SUFFIX_KAN_OK(struct SN_env * z) {
|
||||
|
||||
if (!(z->I[0] != 3)) return 0;
|
||||
if (!(z->I[0] != 2)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_SUFFIX_AN_OK(struct SN_env * z) { /* backwardmode */
|
||||
if (!(z->I[1] != 1)) return 0; /* $(<integer expression> != <integer expression>), line 89 */
|
||||
static int r_SUFFIX_AN_OK(struct SN_env * z) {
|
||||
if (!(z->I[0] != 1)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_SUFFIX_I_OK(struct SN_env * z) { /* backwardmode */
|
||||
if (!(z->I[1] <= 2)) return 0; /* $(<integer expression> <= <integer expression>), line 93 */
|
||||
{ int m1 = z->l - z->c; (void)m1; /* not, line 128 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 's') goto lab0; /* literal, line 128 */
|
||||
static int r_SUFFIX_I_OK(struct SN_env * z) {
|
||||
if (!(z->I[0] <= 2)) return 0;
|
||||
{ int m1 = z->l - z->c; (void)m1;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 's') goto lab0;
|
||||
z->c--;
|
||||
return 0;
|
||||
lab0:
|
||||
@ -168,100 +168,100 @@ static int r_SUFFIX_I_OK(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_remove_suffix(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 132 */
|
||||
if (z->c <= z->lb || (z->p[z->c - 1] != 105 && z->p[z->c - 1] != 110)) return 0; /* substring, line 132 */
|
||||
static int r_remove_suffix(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || (z->p[z->c - 1] != 105 && z->p[z->c - 1] != 110)) return 0;
|
||||
if (!(find_among_b(z, a_2, 3))) return 0;
|
||||
z->bra = z->c; /* ], line 132 */
|
||||
{ int ret = slice_del(z); /* delete, line 134 */
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->I[0] -= 1; /* $measure -= <integer expression>, line 134 */
|
||||
z->I[1] -= 1;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_VOWEL(struct SN_env * z) { /* forwardmode */
|
||||
if (in_grouping_U(z, g_vowel, 97, 117, 0)) return 0; /* grouping vowel, line 141 */
|
||||
static int r_VOWEL(struct SN_env * z) {
|
||||
if (in_grouping_U(z, g_vowel, 97, 117, 0)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_KER(struct SN_env * z) { /* forwardmode */
|
||||
if (out_grouping_U(z, g_vowel, 97, 117, 0)) return 0; /* non vowel, line 143 */
|
||||
if (!(eq_s(z, 2, s_0))) return 0; /* literal, line 143 */
|
||||
static int r_KER(struct SN_env * z) {
|
||||
if (out_grouping_U(z, g_vowel, 97, 117, 0)) return 0;
|
||||
if (!(eq_s(z, 2, s_0))) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_remove_first_order_prefix(struct SN_env * z) { /* forwardmode */
|
||||
static int r_remove_first_order_prefix(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->bra = z->c; /* [, line 146 */
|
||||
if (z->c + 1 >= z->l || (z->p[z->c + 1] != 105 && z->p[z->c + 1] != 101)) return 0; /* substring, line 146 */
|
||||
z->bra = z->c;
|
||||
if (z->c + 1 >= z->l || (z->p[z->c + 1] != 105 && z->p[z->c + 1] != 101)) return 0;
|
||||
among_var = find_among(z, a_3, 12);
|
||||
if (!(among_var)) return 0;
|
||||
z->ket = z->c; /* ], line 146 */
|
||||
switch (among_var) { /* among, line 146 */
|
||||
z->ket = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 147 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->I[1] = 1; /* $prefix = <integer expression>, line 147 */
|
||||
z->I[0] -= 1; /* $measure -= <integer expression>, line 147 */
|
||||
z->I[0] = 1;
|
||||
z->I[1] -= 1;
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_del(z); /* delete, line 148 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->I[1] = 3; /* $prefix = <integer expression>, line 148 */
|
||||
z->I[0] -= 1; /* $measure -= <integer expression>, line 148 */
|
||||
z->I[0] = 3;
|
||||
z->I[1] -= 1;
|
||||
break;
|
||||
case 3:
|
||||
z->I[1] = 1; /* $prefix = <integer expression>, line 149 */
|
||||
{ int ret = slice_from_s(z, 1, s_1); /* <-, line 149 */
|
||||
z->I[0] = 1;
|
||||
{ int ret = slice_from_s(z, 1, s_1);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->I[0] -= 1; /* $measure -= <integer expression>, line 149 */
|
||||
z->I[1] -= 1;
|
||||
break;
|
||||
case 4:
|
||||
z->I[1] = 3; /* $prefix = <integer expression>, line 150 */
|
||||
{ int ret = slice_from_s(z, 1, s_2); /* <-, line 150 */
|
||||
z->I[0] = 3;
|
||||
{ int ret = slice_from_s(z, 1, s_2);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->I[0] -= 1; /* $measure -= <integer expression>, line 150 */
|
||||
z->I[1] -= 1;
|
||||
break;
|
||||
case 5:
|
||||
z->I[1] = 1; /* $prefix = <integer expression>, line 151 */
|
||||
z->I[0] -= 1; /* $measure -= <integer expression>, line 151 */
|
||||
{ int c1 = z->c; /* or, line 151 */
|
||||
{ int c2 = z->c; /* and, line 151 */
|
||||
if (in_grouping_U(z, g_vowel, 97, 117, 0)) goto lab1; /* grouping vowel, line 151 */
|
||||
z->I[0] = 1;
|
||||
z->I[1] -= 1;
|
||||
{ int c1 = z->c;
|
||||
{ int c2 = z->c;
|
||||
if (in_grouping_U(z, g_vowel, 97, 117, 0)) goto lab1;
|
||||
z->c = c2;
|
||||
{ int ret = slice_from_s(z, 1, s_3); /* <-, line 151 */
|
||||
{ int ret = slice_from_s(z, 1, s_3);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
}
|
||||
goto lab0;
|
||||
lab1:
|
||||
z->c = c1;
|
||||
{ int ret = slice_del(z); /* delete, line 151 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
}
|
||||
lab0:
|
||||
break;
|
||||
case 6:
|
||||
z->I[1] = 3; /* $prefix = <integer expression>, line 152 */
|
||||
z->I[0] -= 1; /* $measure -= <integer expression>, line 152 */
|
||||
{ int c3 = z->c; /* or, line 152 */
|
||||
{ int c4 = z->c; /* and, line 152 */
|
||||
if (in_grouping_U(z, g_vowel, 97, 117, 0)) goto lab3; /* grouping vowel, line 152 */
|
||||
z->I[0] = 3;
|
||||
z->I[1] -= 1;
|
||||
{ int c3 = z->c;
|
||||
{ int c4 = z->c;
|
||||
if (in_grouping_U(z, g_vowel, 97, 117, 0)) goto lab3;
|
||||
z->c = c4;
|
||||
{ int ret = slice_from_s(z, 1, s_4); /* <-, line 152 */
|
||||
{ int ret = slice_from_s(z, 1, s_4);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
}
|
||||
goto lab2;
|
||||
lab3:
|
||||
z->c = c3;
|
||||
{ int ret = slice_del(z); /* delete, line 152 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
}
|
||||
@ -271,57 +271,56 @@ static int r_remove_first_order_prefix(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_remove_second_order_prefix(struct SN_env * z) { /* forwardmode */
|
||||
static int r_remove_second_order_prefix(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->bra = z->c; /* [, line 162 */
|
||||
if (z->c + 1 >= z->l || z->p[z->c + 1] != 101) return 0; /* substring, line 162 */
|
||||
z->bra = z->c;
|
||||
if (z->c + 1 >= z->l || z->p[z->c + 1] != 101) return 0;
|
||||
among_var = find_among(z, a_4, 6);
|
||||
if (!(among_var)) return 0;
|
||||
z->ket = z->c; /* ], line 162 */
|
||||
switch (among_var) { /* among, line 162 */
|
||||
z->ket = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 163 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->I[1] = 2; /* $prefix = <integer expression>, line 163 */
|
||||
z->I[0] -= 1; /* $measure -= <integer expression>, line 163 */
|
||||
z->I[0] = 2;
|
||||
z->I[1] -= 1;
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 4, s_5); /* <-, line 164 */
|
||||
{ int ret = slice_from_s(z, 4, s_5);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->I[0] -= 1; /* $measure -= <integer expression>, line 164 */
|
||||
z->I[1] -= 1;
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_del(z); /* delete, line 165 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->I[1] = 4; /* $prefix = <integer expression>, line 165 */
|
||||
z->I[0] -= 1; /* $measure -= <integer expression>, line 165 */
|
||||
z->I[0] = 4;
|
||||
z->I[1] -= 1;
|
||||
break;
|
||||
case 4:
|
||||
{ int ret = slice_from_s(z, 4, s_6); /* <-, line 166 */
|
||||
{ int ret = slice_from_s(z, 4, s_6);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->I[1] = 4; /* $prefix = <integer expression>, line 166 */
|
||||
z->I[0] -= 1; /* $measure -= <integer expression>, line 166 */
|
||||
z->I[0] = 4;
|
||||
z->I[1] -= 1;
|
||||
break;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern int indonesian_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
z->I[0] = 0; /* $measure = <integer expression>, line 172 */
|
||||
{ int c1 = z->c; /* do, line 173 */
|
||||
/* repeat, line 173 */
|
||||
|
||||
while(1) { int c2 = z->c;
|
||||
{ /* gopast */ /* grouping vowel, line 173 */
|
||||
extern int indonesian_UTF_8_stem(struct SN_env * z) {
|
||||
z->I[1] = 0;
|
||||
{ int c1 = z->c;
|
||||
while(1) {
|
||||
int c2 = z->c;
|
||||
{
|
||||
int ret = out_grouping_U(z, g_vowel, 97, 117, 1);
|
||||
if (ret < 0) goto lab1;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[0] += 1; /* $measure += <integer expression>, line 173 */
|
||||
z->I[1] += 1;
|
||||
continue;
|
||||
lab1:
|
||||
z->c = c2;
|
||||
@ -329,45 +328,45 @@ extern int indonesian_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
}
|
||||
z->c = c1;
|
||||
}
|
||||
if (!(z->I[0] > 2)) return 0; /* $(<integer expression> > <integer expression>), line 174 */
|
||||
z->I[1] = 0; /* $prefix = <integer expression>, line 175 */
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 176 */
|
||||
if (!(z->I[1] > 2)) return 0;
|
||||
z->I[0] = 0;
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
{ int m3 = z->l - z->c; (void)m3; /* do, line 177 */
|
||||
{ int ret = r_remove_particle(z); /* call remove_particle, line 177 */
|
||||
{ int m3 = z->l - z->c; (void)m3;
|
||||
{ int ret = r_remove_particle(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m3;
|
||||
}
|
||||
if (!(z->I[0] > 2)) return 0; /* $(<integer expression> > <integer expression>), line 178 */
|
||||
{ int m4 = z->l - z->c; (void)m4; /* do, line 179 */
|
||||
{ int ret = r_remove_possessive_pronoun(z); /* call remove_possessive_pronoun, line 179 */
|
||||
if (!(z->I[1] > 2)) return 0;
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
{ int ret = r_remove_possessive_pronoun(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m4;
|
||||
}
|
||||
z->c = z->lb;
|
||||
if (!(z->I[0] > 2)) return 0; /* $(<integer expression> > <integer expression>), line 181 */
|
||||
{ int c5 = z->c; /* or, line 188 */
|
||||
{ int c_test6 = z->c; /* test, line 182 */
|
||||
{ int ret = r_remove_first_order_prefix(z); /* call remove_first_order_prefix, line 183 */
|
||||
if (!(z->I[1] > 2)) return 0;
|
||||
{ int c5 = z->c;
|
||||
{ int c_test6 = z->c;
|
||||
{ int ret = r_remove_first_order_prefix(z);
|
||||
if (ret == 0) goto lab3;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int c7 = z->c; /* do, line 184 */
|
||||
{ int c_test8 = z->c; /* test, line 185 */
|
||||
if (!(z->I[0] > 2)) goto lab4; /* $(<integer expression> > <integer expression>), line 185 */
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 185 */
|
||||
{ int c7 = z->c;
|
||||
{ int c_test8 = z->c;
|
||||
if (!(z->I[1] > 2)) goto lab4;
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
{ int ret = r_remove_suffix(z); /* call remove_suffix, line 185 */
|
||||
{ int ret = r_remove_suffix(z);
|
||||
if (ret == 0) goto lab4;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->lb;
|
||||
z->c = c_test8;
|
||||
}
|
||||
if (!(z->I[0] > 2)) goto lab4; /* $(<integer expression> > <integer expression>), line 186 */
|
||||
{ int ret = r_remove_second_order_prefix(z); /* call remove_second_order_prefix, line 186 */
|
||||
if (!(z->I[1] > 2)) goto lab4;
|
||||
{ int ret = r_remove_second_order_prefix(z);
|
||||
if (ret == 0) goto lab4;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
@ -379,17 +378,17 @@ extern int indonesian_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
goto lab2;
|
||||
lab3:
|
||||
z->c = c5;
|
||||
{ int c9 = z->c; /* do, line 189 */
|
||||
{ int ret = r_remove_second_order_prefix(z); /* call remove_second_order_prefix, line 189 */
|
||||
{ int c9 = z->c;
|
||||
{ int ret = r_remove_second_order_prefix(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = c9;
|
||||
}
|
||||
{ int c10 = z->c; /* do, line 190 */
|
||||
if (!(z->I[0] > 2)) goto lab5; /* $(<integer expression> > <integer expression>), line 190 */
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 190 */
|
||||
{ int c10 = z->c;
|
||||
if (!(z->I[1] > 2)) goto lab5;
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
{ int ret = r_remove_suffix(z); /* call remove_suffix, line 190 */
|
||||
{ int ret = r_remove_suffix(z);
|
||||
if (ret == 0) goto lab5;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
@ -402,7 +401,7 @@ lab2:
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern struct SN_env * indonesian_UTF_8_create_env(void) { return SN_create_env(0, 2, 0); }
|
||||
extern struct SN_env * indonesian_UTF_8_create_env(void) { return SN_create_env(0, 2); }
|
||||
|
||||
extern void indonesian_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#include "header.h"
|
||||
|
||||
@ -56,30 +56,30 @@ static const symbol s_0_23[2] = { 't', 's' };
|
||||
|
||||
static const struct among a_0[24] =
|
||||
{
|
||||
/* 0 */ { 2, s_0_0, -1, 1, 0},
|
||||
/* 1 */ { 2, s_0_1, -1, 4, 0},
|
||||
/* 2 */ { 3, s_0_2, 1, 2, 0},
|
||||
/* 3 */ { 2, s_0_3, -1, 8, 0},
|
||||
/* 4 */ { 2, s_0_4, -1, 5, 0},
|
||||
/* 5 */ { 2, s_0_5, -1, 1, 0},
|
||||
/* 6 */ { 4, s_0_6, 5, 2, 0},
|
||||
/* 7 */ { 2, s_0_7, -1, 6, 0},
|
||||
/* 8 */ { 2, s_0_8, -1, 9, 0},
|
||||
/* 9 */ { 2, s_0_9, -1, 2, 0},
|
||||
/* 10 */ { 2, s_0_10, -1, 5, 0},
|
||||
/* 11 */ { 2, s_0_11, -1, 7, 0},
|
||||
/* 12 */ { 2, s_0_12, -1, 1, 0},
|
||||
/* 13 */ { 2, s_0_13, -1, 1, 0},
|
||||
/* 14 */ { 2, s_0_14, -1, 4, 0},
|
||||
/* 15 */ { 2, s_0_15, -1, 10, 0},
|
||||
/* 16 */ { 2, s_0_16, -1, 1, 0},
|
||||
/* 17 */ { 2, s_0_17, -1, 6, 0},
|
||||
/* 18 */ { 2, s_0_18, -1, 7, 0},
|
||||
/* 19 */ { 2, s_0_19, -1, 8, 0},
|
||||
/* 20 */ { 2, s_0_20, -1, 3, 0},
|
||||
/* 21 */ { 2, s_0_21, -1, 1, 0},
|
||||
/* 22 */ { 2, s_0_22, -1, 9, 0},
|
||||
/* 23 */ { 2, s_0_23, -1, 3, 0}
|
||||
{ 2, s_0_0, -1, 1, 0},
|
||||
{ 2, s_0_1, -1, 4, 0},
|
||||
{ 3, s_0_2, 1, 2, 0},
|
||||
{ 2, s_0_3, -1, 8, 0},
|
||||
{ 2, s_0_4, -1, 5, 0},
|
||||
{ 2, s_0_5, -1, 1, 0},
|
||||
{ 4, s_0_6, 5, 2, 0},
|
||||
{ 2, s_0_7, -1, 6, 0},
|
||||
{ 2, s_0_8, -1, 9, 0},
|
||||
{ 2, s_0_9, -1, 2, 0},
|
||||
{ 2, s_0_10, -1, 5, 0},
|
||||
{ 2, s_0_11, -1, 7, 0},
|
||||
{ 2, s_0_12, -1, 1, 0},
|
||||
{ 2, s_0_13, -1, 1, 0},
|
||||
{ 2, s_0_14, -1, 4, 0},
|
||||
{ 2, s_0_15, -1, 10, 0},
|
||||
{ 2, s_0_16, -1, 1, 0},
|
||||
{ 2, s_0_17, -1, 6, 0},
|
||||
{ 2, s_0_18, -1, 7, 0},
|
||||
{ 2, s_0_19, -1, 8, 0},
|
||||
{ 2, s_0_20, -1, 3, 0},
|
||||
{ 2, s_0_21, -1, 1, 0},
|
||||
{ 2, s_0_22, -1, 9, 0},
|
||||
{ 2, s_0_23, -1, 3, 0}
|
||||
};
|
||||
|
||||
static const symbol s_1_0[7] = { 0xC3, 0xAD, 'o', 'c', 'h', 't', 'a' };
|
||||
@ -101,22 +101,22 @@ static const symbol s_1_15[5] = { 'a', 'i', 'r', 0xC3, 0xAD };
|
||||
|
||||
static const struct among a_1[16] =
|
||||
{
|
||||
/* 0 */ { 7, s_1_0, -1, 1, 0},
|
||||
/* 1 */ { 8, s_1_1, 0, 1, 0},
|
||||
/* 2 */ { 3, s_1_2, -1, 2, 0},
|
||||
/* 3 */ { 4, s_1_3, 2, 2, 0},
|
||||
/* 4 */ { 3, s_1_4, -1, 1, 0},
|
||||
/* 5 */ { 4, s_1_5, 4, 1, 0},
|
||||
/* 6 */ { 3, s_1_6, -1, 1, 0},
|
||||
/* 7 */ { 4, s_1_7, 6, 1, 0},
|
||||
/* 8 */ { 3, s_1_8, -1, 1, 0},
|
||||
/* 9 */ { 4, s_1_9, 8, 1, 0},
|
||||
/* 10 */ { 3, s_1_10, -1, 1, 0},
|
||||
/* 11 */ { 4, s_1_11, 10, 1, 0},
|
||||
/* 12 */ { 6, s_1_12, -1, 1, 0},
|
||||
/* 13 */ { 7, s_1_13, 12, 1, 0},
|
||||
/* 14 */ { 4, s_1_14, -1, 2, 0},
|
||||
/* 15 */ { 5, s_1_15, 14, 2, 0}
|
||||
{ 7, s_1_0, -1, 1, 0},
|
||||
{ 8, s_1_1, 0, 1, 0},
|
||||
{ 3, s_1_2, -1, 2, 0},
|
||||
{ 4, s_1_3, 2, 2, 0},
|
||||
{ 3, s_1_4, -1, 1, 0},
|
||||
{ 4, s_1_5, 4, 1, 0},
|
||||
{ 3, s_1_6, -1, 1, 0},
|
||||
{ 4, s_1_7, 6, 1, 0},
|
||||
{ 3, s_1_8, -1, 1, 0},
|
||||
{ 4, s_1_9, 8, 1, 0},
|
||||
{ 3, s_1_10, -1, 1, 0},
|
||||
{ 4, s_1_11, 10, 1, 0},
|
||||
{ 6, s_1_12, -1, 1, 0},
|
||||
{ 7, s_1_13, 12, 1, 0},
|
||||
{ 4, s_1_14, -1, 2, 0},
|
||||
{ 5, s_1_15, 14, 2, 0}
|
||||
};
|
||||
|
||||
static const symbol s_2_0[9] = { 0xC3, 0xB3, 'i', 'd', 'e', 'a', 'c', 'h', 'a' };
|
||||
@ -147,31 +147,31 @@ static const symbol s_2_24[14] = { 'g', 'r', 'a', 'f', 'a', 0xC3, 0xAD, 'o', 'c'
|
||||
|
||||
static const struct among a_2[25] =
|
||||
{
|
||||
/* 0 */ { 9, s_2_0, -1, 6, 0},
|
||||
/* 1 */ { 7, s_2_1, -1, 5, 0},
|
||||
/* 2 */ { 5, s_2_2, -1, 1, 0},
|
||||
/* 3 */ { 8, s_2_3, 2, 2, 0},
|
||||
/* 4 */ { 6, s_2_4, 2, 1, 0},
|
||||
/* 5 */ { 12, s_2_5, -1, 4, 0},
|
||||
/* 6 */ { 5, s_2_6, -1, 5, 0},
|
||||
/* 7 */ { 3, s_2_7, -1, 1, 0},
|
||||
/* 8 */ { 4, s_2_8, 7, 1, 0},
|
||||
/* 9 */ { 8, s_2_9, 8, 6, 0},
|
||||
/* 10 */ { 7, s_2_10, 8, 3, 0},
|
||||
/* 11 */ { 6, s_2_11, 7, 5, 0},
|
||||
/* 12 */ { 10, s_2_12, -1, 4, 0},
|
||||
/* 13 */ { 7, s_2_13, -1, 5, 0},
|
||||
/* 14 */ { 7, s_2_14, -1, 6, 0},
|
||||
/* 15 */ { 8, s_2_15, -1, 1, 0},
|
||||
/* 16 */ { 9, s_2_16, 15, 1, 0},
|
||||
/* 17 */ { 6, s_2_17, -1, 3, 0},
|
||||
/* 18 */ { 5, s_2_18, -1, 3, 0},
|
||||
/* 19 */ { 4, s_2_19, -1, 1, 0},
|
||||
/* 20 */ { 7, s_2_20, 19, 2, 0},
|
||||
/* 21 */ { 5, s_2_21, 19, 1, 0},
|
||||
/* 22 */ { 11, s_2_22, -1, 4, 0},
|
||||
/* 23 */ { 10, s_2_23, -1, 2, 0},
|
||||
/* 24 */ { 14, s_2_24, -1, 4, 0}
|
||||
{ 9, s_2_0, -1, 6, 0},
|
||||
{ 7, s_2_1, -1, 5, 0},
|
||||
{ 5, s_2_2, -1, 1, 0},
|
||||
{ 8, s_2_3, 2, 2, 0},
|
||||
{ 6, s_2_4, 2, 1, 0},
|
||||
{ 12, s_2_5, -1, 4, 0},
|
||||
{ 5, s_2_6, -1, 5, 0},
|
||||
{ 3, s_2_7, -1, 1, 0},
|
||||
{ 4, s_2_8, 7, 1, 0},
|
||||
{ 8, s_2_9, 8, 6, 0},
|
||||
{ 7, s_2_10, 8, 3, 0},
|
||||
{ 6, s_2_11, 7, 5, 0},
|
||||
{ 10, s_2_12, -1, 4, 0},
|
||||
{ 7, s_2_13, -1, 5, 0},
|
||||
{ 7, s_2_14, -1, 6, 0},
|
||||
{ 8, s_2_15, -1, 1, 0},
|
||||
{ 9, s_2_16, 15, 1, 0},
|
||||
{ 6, s_2_17, -1, 3, 0},
|
||||
{ 5, s_2_18, -1, 3, 0},
|
||||
{ 4, s_2_19, -1, 1, 0},
|
||||
{ 7, s_2_20, 19, 2, 0},
|
||||
{ 5, s_2_21, 19, 1, 0},
|
||||
{ 11, s_2_22, -1, 4, 0},
|
||||
{ 10, s_2_23, -1, 2, 0},
|
||||
{ 14, s_2_24, -1, 4, 0}
|
||||
};
|
||||
|
||||
static const symbol s_3_0[4] = { 'i', 'm', 'i', 'd' };
|
||||
@ -189,18 +189,18 @@ static const symbol s_3_11[3] = { 't', 'a', 'r' };
|
||||
|
||||
static const struct among a_3[12] =
|
||||
{
|
||||
/* 0 */ { 4, s_3_0, -1, 1, 0},
|
||||
/* 1 */ { 5, s_3_1, 0, 1, 0},
|
||||
/* 2 */ { 5, s_3_2, -1, 1, 0},
|
||||
/* 3 */ { 6, s_3_3, 2, 1, 0},
|
||||
/* 4 */ { 3, s_3_4, -1, 2, 0},
|
||||
/* 5 */ { 4, s_3_5, 4, 2, 0},
|
||||
/* 6 */ { 5, s_3_6, -1, 1, 0},
|
||||
/* 7 */ { 4, s_3_7, -1, 1, 0},
|
||||
/* 8 */ { 4, s_3_8, -1, 2, 0},
|
||||
/* 9 */ { 3, s_3_9, -1, 2, 0},
|
||||
/* 10 */ { 4, s_3_10, -1, 2, 0},
|
||||
/* 11 */ { 3, s_3_11, -1, 2, 0}
|
||||
{ 4, s_3_0, -1, 1, 0},
|
||||
{ 5, s_3_1, 0, 1, 0},
|
||||
{ 5, s_3_2, -1, 1, 0},
|
||||
{ 6, s_3_3, 2, 1, 0},
|
||||
{ 3, s_3_4, -1, 2, 0},
|
||||
{ 4, s_3_5, 4, 2, 0},
|
||||
{ 5, s_3_6, -1, 1, 0},
|
||||
{ 4, s_3_7, -1, 1, 0},
|
||||
{ 4, s_3_8, -1, 2, 0},
|
||||
{ 3, s_3_9, -1, 2, 0},
|
||||
{ 4, s_3_10, -1, 2, 0},
|
||||
{ 3, s_3_11, -1, 2, 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, 2 };
|
||||
@ -220,103 +220,103 @@ static const symbol s_11[] = { 'g', 'r', 'a', 'f' };
|
||||
static const symbol s_12[] = { 'p', 'a', 'i', 't', 'e' };
|
||||
static const symbol s_13[] = { 0xC3, 0xB3, 'i', 'd' };
|
||||
|
||||
static int r_mark_regions(struct SN_env * z) { /* forwardmode */
|
||||
z->I[0] = z->l; /* $pV = <integer expression>, line 30 */
|
||||
z->I[1] = z->l; /* $p1 = <integer expression>, line 31 */
|
||||
z->I[2] = z->l; /* $p2 = <integer expression>, line 32 */
|
||||
{ int c1 = z->c; /* do, line 34 */
|
||||
{ /* gopast */ /* grouping v, line 35 */
|
||||
static int r_mark_regions(struct SN_env * z) {
|
||||
z->I[2] = z->l;
|
||||
z->I[1] = z->l;
|
||||
z->I[0] = z->l;
|
||||
{ int c1 = z->c;
|
||||
{
|
||||
int ret = out_grouping_U(z, g_v, 97, 250, 1);
|
||||
if (ret < 0) goto lab0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[0] = z->c; /* setmark pV, line 35 */
|
||||
z->I[2] = z->c;
|
||||
lab0:
|
||||
z->c = c1;
|
||||
}
|
||||
{ int c2 = z->c; /* do, line 37 */
|
||||
{ /* gopast */ /* grouping v, line 38 */
|
||||
{ int c2 = z->c;
|
||||
{
|
||||
int ret = out_grouping_U(z, g_v, 97, 250, 1);
|
||||
if (ret < 0) goto lab1;
|
||||
z->c += ret;
|
||||
}
|
||||
{ /* gopast */ /* non v, line 38 */
|
||||
{
|
||||
int ret = in_grouping_U(z, g_v, 97, 250, 1);
|
||||
if (ret < 0) goto lab1;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[1] = z->c; /* setmark p1, line 38 */
|
||||
{ /* gopast */ /* grouping v, line 39 */
|
||||
z->I[1] = z->c;
|
||||
{
|
||||
int ret = out_grouping_U(z, g_v, 97, 250, 1);
|
||||
if (ret < 0) goto lab1;
|
||||
z->c += ret;
|
||||
}
|
||||
{ /* gopast */ /* non v, line 39 */
|
||||
{
|
||||
int ret = in_grouping_U(z, g_v, 97, 250, 1);
|
||||
if (ret < 0) goto lab1;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[2] = z->c; /* setmark p2, line 39 */
|
||||
z->I[0] = z->c;
|
||||
lab1:
|
||||
z->c = c2;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_initial_morph(struct SN_env * z) { /* forwardmode */
|
||||
static int r_initial_morph(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->bra = z->c; /* [, line 44 */
|
||||
among_var = find_among(z, a_0, 24); /* substring, line 44 */
|
||||
z->bra = z->c;
|
||||
among_var = find_among(z, a_0, 24);
|
||||
if (!(among_var)) return 0;
|
||||
z->ket = z->c; /* ], line 44 */
|
||||
switch (among_var) { /* among, line 44 */
|
||||
z->ket = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 46 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 1, s_0); /* <-, line 52 */
|
||||
{ int ret = slice_from_s(z, 1, s_0);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_from_s(z, 1, s_1); /* <-, line 58 */
|
||||
{ int ret = slice_from_s(z, 1, s_1);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
{ int ret = slice_from_s(z, 1, s_2); /* <-, line 61 */
|
||||
{ int ret = slice_from_s(z, 1, s_2);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
{ int ret = slice_from_s(z, 1, s_3); /* <-, line 63 */
|
||||
{ int ret = slice_from_s(z, 1, s_3);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 6:
|
||||
{ int ret = slice_from_s(z, 1, s_4); /* <-, line 65 */
|
||||
{ int ret = slice_from_s(z, 1, s_4);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 7:
|
||||
{ int ret = slice_from_s(z, 1, s_5); /* <-, line 69 */
|
||||
{ int ret = slice_from_s(z, 1, s_5);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 8:
|
||||
{ int ret = slice_from_s(z, 1, s_6); /* <-, line 71 */
|
||||
{ int ret = slice_from_s(z, 1, s_6);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 9:
|
||||
{ int ret = slice_from_s(z, 1, s_7); /* <-, line 75 */
|
||||
{ int ret = slice_from_s(z, 1, s_7);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 10:
|
||||
{ int ret = slice_from_s(z, 1, s_8); /* <-, line 89 */
|
||||
{ int ret = slice_from_s(z, 1, s_8);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -324,41 +324,41 @@ static int r_initial_morph(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_RV(struct SN_env * z) { /* backwardmode */
|
||||
if (!(z->I[0] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 99 */
|
||||
static int r_RV(struct SN_env * z) {
|
||||
if (!(z->I[2] <= z->c)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_R1(struct SN_env * z) { /* backwardmode */
|
||||
if (!(z->I[1] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 100 */
|
||||
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) { /* backwardmode */
|
||||
if (!(z->I[2] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 101 */
|
||||
static int r_R2(struct SN_env * z) {
|
||||
if (!(z->I[0] <= z->c)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_noun_sfx(struct SN_env * z) { /* backwardmode */
|
||||
static int r_noun_sfx(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 104 */
|
||||
among_var = find_among_b(z, a_1, 16); /* substring, line 104 */
|
||||
z->ket = z->c;
|
||||
among_var = find_among_b(z, a_1, 16);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 104 */
|
||||
switch (among_var) { /* among, line 104 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = r_R1(z); /* call R1, line 108 */
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 108 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = r_R2(z); /* call R2, line 110 */
|
||||
{ int ret = r_R2(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 110 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -366,43 +366,43 @@ static int r_noun_sfx(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_deriv(struct SN_env * z) { /* backwardmode */
|
||||
static int r_deriv(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 114 */
|
||||
among_var = find_among_b(z, a_2, 25); /* substring, line 114 */
|
||||
z->ket = z->c;
|
||||
among_var = find_among_b(z, a_2, 25);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 114 */
|
||||
switch (among_var) { /* among, line 114 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = r_R2(z); /* call R2, line 116 */
|
||||
{ int ret = r_R2(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 116 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 3, s_9); /* <-, line 118 */
|
||||
{ int ret = slice_from_s(z, 3, s_9);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_from_s(z, 3, s_10); /* <-, line 120 */
|
||||
{ int ret = slice_from_s(z, 3, s_10);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
{ int ret = slice_from_s(z, 4, s_11); /* <-, line 122 */
|
||||
{ int ret = slice_from_s(z, 4, s_11);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
{ int ret = slice_from_s(z, 5, s_12); /* <-, line 124 */
|
||||
{ int ret = slice_from_s(z, 5, s_12);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 6:
|
||||
{ int ret = slice_from_s(z, 4, s_13); /* <-, line 126 */
|
||||
{ int ret = slice_from_s(z, 4, s_13);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -410,27 +410,27 @@ static int r_deriv(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_verb_sfx(struct SN_env * z) { /* backwardmode */
|
||||
static int r_verb_sfx(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 130 */
|
||||
if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((282896 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 130 */
|
||||
z->ket = z->c;
|
||||
if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((282896 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
|
||||
among_var = find_among_b(z, a_3, 12);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 130 */
|
||||
switch (among_var) { /* among, line 130 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = r_RV(z); /* call RV, line 133 */
|
||||
{ int ret = r_RV(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 133 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = r_R1(z); /* call R1, line 138 */
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 138 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -438,33 +438,33 @@ static int r_verb_sfx(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern int irish_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
{ int c1 = z->c; /* do, line 144 */
|
||||
{ int ret = r_initial_morph(z); /* call initial_morph, line 144 */
|
||||
extern int irish_UTF_8_stem(struct SN_env * z) {
|
||||
{ int c1 = z->c;
|
||||
{ int ret = r_initial_morph(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = c1;
|
||||
}
|
||||
/* do, line 145 */
|
||||
{ int ret = r_mark_regions(z); /* call mark_regions, line 145 */
|
||||
|
||||
{ int ret = r_mark_regions(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 146 */
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
{ int m2 = z->l - z->c; (void)m2; /* do, line 147 */
|
||||
{ int ret = r_noun_sfx(z); /* call noun_sfx, line 147 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
{ int ret = r_noun_sfx(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m2;
|
||||
}
|
||||
{ int m3 = z->l - z->c; (void)m3; /* do, line 148 */
|
||||
{ int ret = r_deriv(z); /* call deriv, line 148 */
|
||||
{ int m3 = z->l - z->c; (void)m3;
|
||||
{ int ret = r_deriv(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m3;
|
||||
}
|
||||
{ int m4 = z->l - z->c; (void)m4; /* do, line 149 */
|
||||
{ int ret = r_verb_sfx(z); /* call verb_sfx, line 149 */
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
{ int ret = r_verb_sfx(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m4;
|
||||
@ -473,7 +473,7 @@ extern int irish_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern struct SN_env * irish_UTF_8_create_env(void) { return SN_create_env(0, 3, 0); }
|
||||
extern struct SN_env * irish_UTF_8_create_env(void) { return SN_create_env(0, 3); }
|
||||
|
||||
extern void irish_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#include "header.h"
|
||||
|
||||
@ -234,210 +234,210 @@ static const symbol s_0_203[4] = { 'e', 'r', 0xC5, 0xB3 };
|
||||
|
||||
static const struct among a_0[204] =
|
||||
{
|
||||
/* 0 */ { 1, s_0_0, -1, -1, 0},
|
||||
/* 1 */ { 2, s_0_1, 0, -1, 0},
|
||||
/* 2 */ { 4, s_0_2, 1, -1, 0},
|
||||
/* 3 */ { 4, s_0_3, 0, -1, 0},
|
||||
/* 4 */ { 5, s_0_4, 3, -1, 0},
|
||||
/* 5 */ { 5, s_0_5, 3, -1, 0},
|
||||
/* 6 */ { 6, s_0_6, 5, -1, 0},
|
||||
/* 7 */ { 4, s_0_7, 0, -1, 0},
|
||||
/* 8 */ { 5, s_0_8, 0, -1, 0},
|
||||
/* 9 */ { 1, s_0_9, -1, -1, 0},
|
||||
/* 10 */ { 2, s_0_10, 9, -1, 0},
|
||||
/* 11 */ { 4, s_0_11, 10, -1, 0},
|
||||
/* 12 */ { 4, s_0_12, 10, -1, 0},
|
||||
/* 13 */ { 3, s_0_13, 9, -1, 0},
|
||||
/* 14 */ { 4, s_0_14, 13, -1, 0},
|
||||
/* 15 */ { 3, s_0_15, 9, -1, 0},
|
||||
/* 16 */ { 4, s_0_16, 15, -1, 0},
|
||||
/* 17 */ { 3, s_0_17, 9, -1, 0},
|
||||
/* 18 */ { 5, s_0_18, 17, -1, 0},
|
||||
/* 19 */ { 5, s_0_19, 17, -1, 0},
|
||||
/* 20 */ { 4, s_0_20, 9, -1, 0},
|
||||
/* 21 */ { 3, s_0_21, 9, -1, 0},
|
||||
/* 22 */ { 4, s_0_22, 21, -1, 0},
|
||||
/* 23 */ { 4, s_0_23, 9, -1, 0},
|
||||
/* 24 */ { 3, s_0_24, 9, -1, 0},
|
||||
/* 25 */ { 4, s_0_25, 9, -1, 0},
|
||||
/* 26 */ { 7, s_0_26, 25, -1, 0},
|
||||
/* 27 */ { 3, s_0_27, 9, -1, 0},
|
||||
/* 28 */ { 4, s_0_28, 27, -1, 0},
|
||||
/* 29 */ { 4, s_0_29, 27, -1, 0},
|
||||
/* 30 */ { 5, s_0_30, 29, -1, 0},
|
||||
/* 31 */ { 3, s_0_31, 9, -1, 0},
|
||||
/* 32 */ { 5, s_0_32, 31, -1, 0},
|
||||
/* 33 */ { 5, s_0_33, 31, -1, 0},
|
||||
/* 34 */ { 4, s_0_34, 9, -1, 0},
|
||||
/* 35 */ { 3, s_0_35, 9, -1, 0},
|
||||
/* 36 */ { 4, s_0_36, 35, -1, 0},
|
||||
/* 37 */ { 3, s_0_37, 9, -1, 0},
|
||||
/* 38 */ { 4, s_0_38, 37, -1, 0},
|
||||
/* 39 */ { 4, s_0_39, 37, -1, 0},
|
||||
/* 40 */ { 3, s_0_40, 9, -1, 0},
|
||||
/* 41 */ { 4, s_0_41, 9, -1, 0},
|
||||
/* 42 */ { 4, s_0_42, 9, -1, 0},
|
||||
/* 43 */ { 7, s_0_43, 42, -1, 0},
|
||||
/* 44 */ { 1, s_0_44, -1, -1, 0},
|
||||
/* 45 */ { 2, s_0_45, 44, -1, 0},
|
||||
/* 46 */ { 3, s_0_46, 45, -1, 0},
|
||||
/* 47 */ { 5, s_0_47, 46, -1, 0},
|
||||
/* 48 */ { 2, s_0_48, 44, -1, 0},
|
||||
/* 49 */ { 5, s_0_49, 48, -1, 0},
|
||||
/* 50 */ { 2, s_0_50, 44, -1, 0},
|
||||
/* 51 */ { 3, s_0_51, 44, -1, 0},
|
||||
/* 52 */ { 5, s_0_52, 51, -1, 0},
|
||||
/* 53 */ { 3, s_0_53, 44, -1, 0},
|
||||
/* 54 */ { 4, s_0_54, 53, -1, 0},
|
||||
/* 55 */ { 2, s_0_55, 44, -1, 0},
|
||||
/* 56 */ { 3, s_0_56, 55, -1, 0},
|
||||
/* 57 */ { 4, s_0_57, 56, -1, 0},
|
||||
/* 58 */ { 3, s_0_58, 55, -1, 0},
|
||||
/* 59 */ { 4, s_0_59, 58, -1, 0},
|
||||
/* 60 */ { 5, s_0_60, 59, -1, 0},
|
||||
/* 61 */ { 3, s_0_61, 55, -1, 0},
|
||||
/* 62 */ { 4, s_0_62, 61, -1, 0},
|
||||
/* 63 */ { 4, s_0_63, 61, -1, 0},
|
||||
/* 64 */ { 7, s_0_64, 63, -1, 0},
|
||||
/* 65 */ { 4, s_0_65, 61, -1, 0},
|
||||
/* 66 */ { 3, s_0_66, 55, -1, 0},
|
||||
/* 67 */ { 6, s_0_67, 66, -1, 0},
|
||||
/* 68 */ { 4, s_0_68, 66, -1, 0},
|
||||
/* 69 */ { 5, s_0_69, 68, -1, 0},
|
||||
/* 70 */ { 6, s_0_70, 69, -1, 0},
|
||||
/* 71 */ { 3, s_0_71, 55, -1, 0},
|
||||
/* 72 */ { 4, s_0_72, 71, -1, 0},
|
||||
/* 73 */ { 7, s_0_73, 72, -1, 0},
|
||||
/* 74 */ { 4, s_0_74, 55, -1, 0},
|
||||
/* 75 */ { 4, s_0_75, 55, -1, 0},
|
||||
/* 76 */ { 4, s_0_76, 55, -1, 0},
|
||||
/* 77 */ { 5, s_0_77, 76, -1, 0},
|
||||
/* 78 */ { 2, s_0_78, 44, -1, 0},
|
||||
/* 79 */ { 4, s_0_79, 78, -1, 0},
|
||||
/* 80 */ { 4, s_0_80, 78, -1, 0},
|
||||
/* 81 */ { 3, s_0_81, 78, -1, 0},
|
||||
/* 82 */ { 4, s_0_82, 81, -1, 0},
|
||||
/* 83 */ { 4, s_0_83, 81, -1, 0},
|
||||
/* 84 */ { 5, s_0_84, 83, -1, 0},
|
||||
/* 85 */ { 4, s_0_85, 78, -1, 0},
|
||||
/* 86 */ { 5, s_0_86, 85, -1, 0},
|
||||
/* 87 */ { 3, s_0_87, 78, -1, 0},
|
||||
/* 88 */ { 4, s_0_88, 78, -1, 0},
|
||||
/* 89 */ { 7, s_0_89, 88, -1, 0},
|
||||
/* 90 */ { 6, s_0_90, 88, -1, 0},
|
||||
/* 91 */ { 7, s_0_91, 88, -1, 0},
|
||||
/* 92 */ { 2, s_0_92, 44, -1, 0},
|
||||
/* 93 */ { 3, s_0_93, 92, -1, 0},
|
||||
/* 94 */ { 5, s_0_94, 93, -1, 0},
|
||||
/* 95 */ { 2, s_0_95, -1, -1, 0},
|
||||
/* 96 */ { 3, s_0_96, -1, -1, 0},
|
||||
/* 97 */ { 1, s_0_97, -1, -1, 0},
|
||||
/* 98 */ { 2, s_0_98, -1, -1, 0},
|
||||
/* 99 */ { 3, s_0_99, 98, -1, 0},
|
||||
/*100 */ { 3, s_0_100, -1, -1, 0},
|
||||
/*101 */ { 2, s_0_101, -1, -1, 0},
|
||||
/*102 */ { 3, s_0_102, 101, -1, 0},
|
||||
/*103 */ { 2, s_0_103, -1, -1, 0},
|
||||
/*104 */ { 3, s_0_104, -1, -1, 0},
|
||||
/*105 */ { 3, s_0_105, -1, -1, 0},
|
||||
/*106 */ { 6, s_0_106, 105, -1, 0},
|
||||
/*107 */ { 2, s_0_107, -1, -1, 0},
|
||||
/*108 */ { 2, s_0_108, -1, -1, 0},
|
||||
/*109 */ { 3, s_0_109, 108, -1, 0},
|
||||
/*110 */ { 2, s_0_110, -1, -1, 0},
|
||||
/*111 */ { 3, s_0_111, 110, -1, 0},
|
||||
/*112 */ { 3, s_0_112, -1, -1, 0},
|
||||
/*113 */ { 1, s_0_113, -1, -1, 0},
|
||||
/*114 */ { 2, s_0_114, 113, -1, 0},
|
||||
/*115 */ { 4, s_0_115, 114, -1, 0},
|
||||
/*116 */ { 4, s_0_116, 113, -1, 0},
|
||||
/*117 */ { 2, s_0_117, 113, -1, 0},
|
||||
/*118 */ { 1, s_0_118, -1, -1, 0},
|
||||
/*119 */ { 2, s_0_119, 118, -1, 0},
|
||||
/*120 */ { 3, s_0_120, 119, -1, 0},
|
||||
/*121 */ { 2, s_0_121, 118, -1, 0},
|
||||
/*122 */ { 3, s_0_122, 121, -1, 0},
|
||||
/*123 */ { 2, s_0_123, 118, -1, 0},
|
||||
/*124 */ { 3, s_0_124, 123, -1, 0},
|
||||
/*125 */ { 4, s_0_125, 124, -1, 0},
|
||||
/*126 */ { 6, s_0_126, 123, -1, 0},
|
||||
/*127 */ { 4, s_0_127, 123, -1, 0},
|
||||
/*128 */ { 6, s_0_128, 127, -1, 0},
|
||||
/*129 */ { 4, s_0_129, 123, -1, 0},
|
||||
/*130 */ { 5, s_0_130, 129, -1, 0},
|
||||
/*131 */ { 4, s_0_131, 123, -1, 0},
|
||||
/*132 */ { 5, s_0_132, 123, -1, 0},
|
||||
/*133 */ { 4, s_0_133, 123, -1, 0},
|
||||
/*134 */ { 4, s_0_134, 123, -1, 0},
|
||||
/*135 */ { 4, s_0_135, 123, -1, 0},
|
||||
/*136 */ { 3, s_0_136, 118, -1, 0},
|
||||
/*137 */ { 4, s_0_137, 136, -1, 0},
|
||||
/*138 */ { 4, s_0_138, 118, -1, 0},
|
||||
/*139 */ { 3, s_0_139, 118, -1, 0},
|
||||
/*140 */ { 5, s_0_140, 139, -1, 0},
|
||||
/*141 */ { 5, s_0_141, 139, -1, 0},
|
||||
/*142 */ { 3, s_0_142, 118, -1, 0},
|
||||
/*143 */ { 4, s_0_143, 142, -1, 0},
|
||||
/*144 */ { 3, s_0_144, 118, -1, 0},
|
||||
/*145 */ { 4, s_0_145, 118, -1, 0},
|
||||
/*146 */ { 3, s_0_146, 118, -1, 0},
|
||||
/*147 */ { 2, s_0_147, 118, -1, 0},
|
||||
/*148 */ { 3, s_0_148, 147, -1, 0},
|
||||
/*149 */ { 3, s_0_149, 147, -1, 0},
|
||||
/*150 */ { 4, s_0_150, 149, -1, 0},
|
||||
/*151 */ { 3, s_0_151, 118, -1, 0},
|
||||
/*152 */ { 2, s_0_152, 118, -1, 0},
|
||||
/*153 */ { 3, s_0_153, 152, -1, 0},
|
||||
/*154 */ { 4, s_0_154, 153, -1, 0},
|
||||
/*155 */ { 3, s_0_155, 152, -1, 0},
|
||||
/*156 */ { 2, s_0_156, 118, -1, 0},
|
||||
/*157 */ { 4, s_0_157, 156, -1, 0},
|
||||
/*158 */ { 4, s_0_158, 156, -1, 0},
|
||||
/*159 */ { 3, s_0_159, 118, -1, 0},
|
||||
/*160 */ { 4, s_0_160, 159, -1, 0},
|
||||
/*161 */ { 3, s_0_161, 118, -1, 0},
|
||||
/*162 */ { 5, s_0_162, 161, -1, 0},
|
||||
/*163 */ { 6, s_0_163, 162, -1, 0},
|
||||
/*164 */ { 5, s_0_164, 161, -1, 0},
|
||||
/*165 */ { 6, s_0_165, 164, -1, 0},
|
||||
/*166 */ { 6, s_0_166, 164, -1, 0},
|
||||
/*167 */ { 5, s_0_167, 161, -1, 0},
|
||||
/*168 */ { 6, s_0_168, 161, -1, 0},
|
||||
/*169 */ { 9, s_0_169, 168, -1, 0},
|
||||
/*170 */ { 5, s_0_170, 161, -1, 0},
|
||||
/*171 */ { 6, s_0_171, 170, -1, 0},
|
||||
/*172 */ { 6, s_0_172, 161, -1, 0},
|
||||
/*173 */ { 5, s_0_173, 161, -1, 0},
|
||||
/*174 */ { 6, s_0_174, 161, -1, 0},
|
||||
/*175 */ { 9, s_0_175, 174, -1, 0},
|
||||
/*176 */ { 3, s_0_176, 118, -1, 0},
|
||||
/*177 */ { 3, s_0_177, 118, -1, 0},
|
||||
/*178 */ { 4, s_0_178, 118, -1, 0},
|
||||
/*179 */ { 2, s_0_179, -1, -1, 0},
|
||||
/*180 */ { 3, s_0_180, 179, -1, 0},
|
||||
/*181 */ { 2, s_0_181, -1, -1, 0},
|
||||
/*182 */ { 3, s_0_182, 181, -1, 0},
|
||||
/*183 */ { 2, s_0_183, -1, -1, 0},
|
||||
/*184 */ { 3, s_0_184, -1, -1, 0},
|
||||
/*185 */ { 6, s_0_185, 184, -1, 0},
|
||||
/*186 */ { 1, s_0_186, -1, -1, 0},
|
||||
/*187 */ { 2, s_0_187, 186, -1, 0},
|
||||
/*188 */ { 3, s_0_188, 187, -1, 0},
|
||||
/*189 */ { 5, s_0_189, 188, -1, 0},
|
||||
/*190 */ { 2, s_0_190, 186, -1, 0},
|
||||
/*191 */ { 4, s_0_191, 190, -1, 0},
|
||||
/*192 */ { 3, s_0_192, 190, -1, 0},
|
||||
/*193 */ { 1, s_0_193, -1, -1, 0},
|
||||
/*194 */ { 2, s_0_194, -1, -1, 0},
|
||||
/*195 */ { 3, s_0_195, 194, -1, 0},
|
||||
/*196 */ { 2, s_0_196, -1, -1, 0},
|
||||
/*197 */ { 2, s_0_197, -1, -1, 0},
|
||||
/*198 */ { 2, s_0_198, -1, -1, 0},
|
||||
/*199 */ { 4, s_0_199, 198, -1, 0},
|
||||
/*200 */ { 4, s_0_200, 198, -1, 0},
|
||||
/*201 */ { 2, s_0_201, -1, -1, 0},
|
||||
/*202 */ { 3, s_0_202, 201, -1, 0},
|
||||
/*203 */ { 4, s_0_203, 201, -1, 0}
|
||||
{ 1, s_0_0, -1, -1, 0},
|
||||
{ 2, s_0_1, 0, -1, 0},
|
||||
{ 4, s_0_2, 1, -1, 0},
|
||||
{ 4, s_0_3, 0, -1, 0},
|
||||
{ 5, s_0_4, 3, -1, 0},
|
||||
{ 5, s_0_5, 3, -1, 0},
|
||||
{ 6, s_0_6, 5, -1, 0},
|
||||
{ 4, s_0_7, 0, -1, 0},
|
||||
{ 5, s_0_8, 0, -1, 0},
|
||||
{ 1, s_0_9, -1, -1, 0},
|
||||
{ 2, s_0_10, 9, -1, 0},
|
||||
{ 4, s_0_11, 10, -1, 0},
|
||||
{ 4, s_0_12, 10, -1, 0},
|
||||
{ 3, s_0_13, 9, -1, 0},
|
||||
{ 4, s_0_14, 13, -1, 0},
|
||||
{ 3, s_0_15, 9, -1, 0},
|
||||
{ 4, s_0_16, 15, -1, 0},
|
||||
{ 3, s_0_17, 9, -1, 0},
|
||||
{ 5, s_0_18, 17, -1, 0},
|
||||
{ 5, s_0_19, 17, -1, 0},
|
||||
{ 4, s_0_20, 9, -1, 0},
|
||||
{ 3, s_0_21, 9, -1, 0},
|
||||
{ 4, s_0_22, 21, -1, 0},
|
||||
{ 4, s_0_23, 9, -1, 0},
|
||||
{ 3, s_0_24, 9, -1, 0},
|
||||
{ 4, s_0_25, 9, -1, 0},
|
||||
{ 7, s_0_26, 25, -1, 0},
|
||||
{ 3, s_0_27, 9, -1, 0},
|
||||
{ 4, s_0_28, 27, -1, 0},
|
||||
{ 4, s_0_29, 27, -1, 0},
|
||||
{ 5, s_0_30, 29, -1, 0},
|
||||
{ 3, s_0_31, 9, -1, 0},
|
||||
{ 5, s_0_32, 31, -1, 0},
|
||||
{ 5, s_0_33, 31, -1, 0},
|
||||
{ 4, s_0_34, 9, -1, 0},
|
||||
{ 3, s_0_35, 9, -1, 0},
|
||||
{ 4, s_0_36, 35, -1, 0},
|
||||
{ 3, s_0_37, 9, -1, 0},
|
||||
{ 4, s_0_38, 37, -1, 0},
|
||||
{ 4, s_0_39, 37, -1, 0},
|
||||
{ 3, s_0_40, 9, -1, 0},
|
||||
{ 4, s_0_41, 9, -1, 0},
|
||||
{ 4, s_0_42, 9, -1, 0},
|
||||
{ 7, s_0_43, 42, -1, 0},
|
||||
{ 1, s_0_44, -1, -1, 0},
|
||||
{ 2, s_0_45, 44, -1, 0},
|
||||
{ 3, s_0_46, 45, -1, 0},
|
||||
{ 5, s_0_47, 46, -1, 0},
|
||||
{ 2, s_0_48, 44, -1, 0},
|
||||
{ 5, s_0_49, 48, -1, 0},
|
||||
{ 2, s_0_50, 44, -1, 0},
|
||||
{ 3, s_0_51, 44, -1, 0},
|
||||
{ 5, s_0_52, 51, -1, 0},
|
||||
{ 3, s_0_53, 44, -1, 0},
|
||||
{ 4, s_0_54, 53, -1, 0},
|
||||
{ 2, s_0_55, 44, -1, 0},
|
||||
{ 3, s_0_56, 55, -1, 0},
|
||||
{ 4, s_0_57, 56, -1, 0},
|
||||
{ 3, s_0_58, 55, -1, 0},
|
||||
{ 4, s_0_59, 58, -1, 0},
|
||||
{ 5, s_0_60, 59, -1, 0},
|
||||
{ 3, s_0_61, 55, -1, 0},
|
||||
{ 4, s_0_62, 61, -1, 0},
|
||||
{ 4, s_0_63, 61, -1, 0},
|
||||
{ 7, s_0_64, 63, -1, 0},
|
||||
{ 4, s_0_65, 61, -1, 0},
|
||||
{ 3, s_0_66, 55, -1, 0},
|
||||
{ 6, s_0_67, 66, -1, 0},
|
||||
{ 4, s_0_68, 66, -1, 0},
|
||||
{ 5, s_0_69, 68, -1, 0},
|
||||
{ 6, s_0_70, 69, -1, 0},
|
||||
{ 3, s_0_71, 55, -1, 0},
|
||||
{ 4, s_0_72, 71, -1, 0},
|
||||
{ 7, s_0_73, 72, -1, 0},
|
||||
{ 4, s_0_74, 55, -1, 0},
|
||||
{ 4, s_0_75, 55, -1, 0},
|
||||
{ 4, s_0_76, 55, -1, 0},
|
||||
{ 5, s_0_77, 76, -1, 0},
|
||||
{ 2, s_0_78, 44, -1, 0},
|
||||
{ 4, s_0_79, 78, -1, 0},
|
||||
{ 4, s_0_80, 78, -1, 0},
|
||||
{ 3, s_0_81, 78, -1, 0},
|
||||
{ 4, s_0_82, 81, -1, 0},
|
||||
{ 4, s_0_83, 81, -1, 0},
|
||||
{ 5, s_0_84, 83, -1, 0},
|
||||
{ 4, s_0_85, 78, -1, 0},
|
||||
{ 5, s_0_86, 85, -1, 0},
|
||||
{ 3, s_0_87, 78, -1, 0},
|
||||
{ 4, s_0_88, 78, -1, 0},
|
||||
{ 7, s_0_89, 88, -1, 0},
|
||||
{ 6, s_0_90, 88, -1, 0},
|
||||
{ 7, s_0_91, 88, -1, 0},
|
||||
{ 2, s_0_92, 44, -1, 0},
|
||||
{ 3, s_0_93, 92, -1, 0},
|
||||
{ 5, s_0_94, 93, -1, 0},
|
||||
{ 2, s_0_95, -1, -1, 0},
|
||||
{ 3, s_0_96, -1, -1, 0},
|
||||
{ 1, s_0_97, -1, -1, 0},
|
||||
{ 2, s_0_98, -1, -1, 0},
|
||||
{ 3, s_0_99, 98, -1, 0},
|
||||
{ 3, s_0_100, -1, -1, 0},
|
||||
{ 2, s_0_101, -1, -1, 0},
|
||||
{ 3, s_0_102, 101, -1, 0},
|
||||
{ 2, s_0_103, -1, -1, 0},
|
||||
{ 3, s_0_104, -1, -1, 0},
|
||||
{ 3, s_0_105, -1, -1, 0},
|
||||
{ 6, s_0_106, 105, -1, 0},
|
||||
{ 2, s_0_107, -1, -1, 0},
|
||||
{ 2, s_0_108, -1, -1, 0},
|
||||
{ 3, s_0_109, 108, -1, 0},
|
||||
{ 2, s_0_110, -1, -1, 0},
|
||||
{ 3, s_0_111, 110, -1, 0},
|
||||
{ 3, s_0_112, -1, -1, 0},
|
||||
{ 1, s_0_113, -1, -1, 0},
|
||||
{ 2, s_0_114, 113, -1, 0},
|
||||
{ 4, s_0_115, 114, -1, 0},
|
||||
{ 4, s_0_116, 113, -1, 0},
|
||||
{ 2, s_0_117, 113, -1, 0},
|
||||
{ 1, s_0_118, -1, -1, 0},
|
||||
{ 2, s_0_119, 118, -1, 0},
|
||||
{ 3, s_0_120, 119, -1, 0},
|
||||
{ 2, s_0_121, 118, -1, 0},
|
||||
{ 3, s_0_122, 121, -1, 0},
|
||||
{ 2, s_0_123, 118, -1, 0},
|
||||
{ 3, s_0_124, 123, -1, 0},
|
||||
{ 4, s_0_125, 124, -1, 0},
|
||||
{ 6, s_0_126, 123, -1, 0},
|
||||
{ 4, s_0_127, 123, -1, 0},
|
||||
{ 6, s_0_128, 127, -1, 0},
|
||||
{ 4, s_0_129, 123, -1, 0},
|
||||
{ 5, s_0_130, 129, -1, 0},
|
||||
{ 4, s_0_131, 123, -1, 0},
|
||||
{ 5, s_0_132, 123, -1, 0},
|
||||
{ 4, s_0_133, 123, -1, 0},
|
||||
{ 4, s_0_134, 123, -1, 0},
|
||||
{ 4, s_0_135, 123, -1, 0},
|
||||
{ 3, s_0_136, 118, -1, 0},
|
||||
{ 4, s_0_137, 136, -1, 0},
|
||||
{ 4, s_0_138, 118, -1, 0},
|
||||
{ 3, s_0_139, 118, -1, 0},
|
||||
{ 5, s_0_140, 139, -1, 0},
|
||||
{ 5, s_0_141, 139, -1, 0},
|
||||
{ 3, s_0_142, 118, -1, 0},
|
||||
{ 4, s_0_143, 142, -1, 0},
|
||||
{ 3, s_0_144, 118, -1, 0},
|
||||
{ 4, s_0_145, 118, -1, 0},
|
||||
{ 3, s_0_146, 118, -1, 0},
|
||||
{ 2, s_0_147, 118, -1, 0},
|
||||
{ 3, s_0_148, 147, -1, 0},
|
||||
{ 3, s_0_149, 147, -1, 0},
|
||||
{ 4, s_0_150, 149, -1, 0},
|
||||
{ 3, s_0_151, 118, -1, 0},
|
||||
{ 2, s_0_152, 118, -1, 0},
|
||||
{ 3, s_0_153, 152, -1, 0},
|
||||
{ 4, s_0_154, 153, -1, 0},
|
||||
{ 3, s_0_155, 152, -1, 0},
|
||||
{ 2, s_0_156, 118, -1, 0},
|
||||
{ 4, s_0_157, 156, -1, 0},
|
||||
{ 4, s_0_158, 156, -1, 0},
|
||||
{ 3, s_0_159, 118, -1, 0},
|
||||
{ 4, s_0_160, 159, -1, 0},
|
||||
{ 3, s_0_161, 118, -1, 0},
|
||||
{ 5, s_0_162, 161, -1, 0},
|
||||
{ 6, s_0_163, 162, -1, 0},
|
||||
{ 5, s_0_164, 161, -1, 0},
|
||||
{ 6, s_0_165, 164, -1, 0},
|
||||
{ 6, s_0_166, 164, -1, 0},
|
||||
{ 5, s_0_167, 161, -1, 0},
|
||||
{ 6, s_0_168, 161, -1, 0},
|
||||
{ 9, s_0_169, 168, -1, 0},
|
||||
{ 5, s_0_170, 161, -1, 0},
|
||||
{ 6, s_0_171, 170, -1, 0},
|
||||
{ 6, s_0_172, 161, -1, 0},
|
||||
{ 5, s_0_173, 161, -1, 0},
|
||||
{ 6, s_0_174, 161, -1, 0},
|
||||
{ 9, s_0_175, 174, -1, 0},
|
||||
{ 3, s_0_176, 118, -1, 0},
|
||||
{ 3, s_0_177, 118, -1, 0},
|
||||
{ 4, s_0_178, 118, -1, 0},
|
||||
{ 2, s_0_179, -1, -1, 0},
|
||||
{ 3, s_0_180, 179, -1, 0},
|
||||
{ 2, s_0_181, -1, -1, 0},
|
||||
{ 3, s_0_182, 181, -1, 0},
|
||||
{ 2, s_0_183, -1, -1, 0},
|
||||
{ 3, s_0_184, -1, -1, 0},
|
||||
{ 6, s_0_185, 184, -1, 0},
|
||||
{ 1, s_0_186, -1, -1, 0},
|
||||
{ 2, s_0_187, 186, -1, 0},
|
||||
{ 3, s_0_188, 187, -1, 0},
|
||||
{ 5, s_0_189, 188, -1, 0},
|
||||
{ 2, s_0_190, 186, -1, 0},
|
||||
{ 4, s_0_191, 190, -1, 0},
|
||||
{ 3, s_0_192, 190, -1, 0},
|
||||
{ 1, s_0_193, -1, -1, 0},
|
||||
{ 2, s_0_194, -1, -1, 0},
|
||||
{ 3, s_0_195, 194, -1, 0},
|
||||
{ 2, s_0_196, -1, -1, 0},
|
||||
{ 2, s_0_197, -1, -1, 0},
|
||||
{ 2, s_0_198, -1, -1, 0},
|
||||
{ 4, s_0_199, 198, -1, 0},
|
||||
{ 4, s_0_200, 198, -1, 0},
|
||||
{ 2, s_0_201, -1, -1, 0},
|
||||
{ 3, s_0_202, 201, -1, 0},
|
||||
{ 4, s_0_203, 201, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_1_0[3] = { 'i', 'n', 'g' };
|
||||
@ -505,68 +505,68 @@ static const symbol s_1_61[5] = { 0xC4, 0x97, 'j', 0xC4, 0x99 };
|
||||
|
||||
static const struct among a_1[62] =
|
||||
{
|
||||
/* 0 */ { 3, s_1_0, -1, -1, 0},
|
||||
/* 1 */ { 2, s_1_1, -1, -1, 0},
|
||||
/* 2 */ { 3, s_1_2, 1, -1, 0},
|
||||
/* 3 */ { 3, s_1_3, -1, -1, 0},
|
||||
/* 4 */ { 2, s_1_4, -1, -1, 0},
|
||||
/* 5 */ { 3, s_1_5, 4, -1, 0},
|
||||
/* 6 */ { 3, s_1_6, 4, -1, 0},
|
||||
/* 7 */ { 4, s_1_7, 6, -1, 0},
|
||||
/* 8 */ { 3, s_1_8, -1, -1, 0},
|
||||
/* 9 */ { 3, s_1_9, -1, -1, 0},
|
||||
/* 10 */ { 4, s_1_10, 9, -1, 0},
|
||||
/* 11 */ { 3, s_1_11, -1, -1, 0},
|
||||
/* 12 */ { 3, s_1_12, -1, -1, 0},
|
||||
/* 13 */ { 4, s_1_13, 12, -1, 0},
|
||||
/* 14 */ { 2, s_1_14, -1, -1, 0},
|
||||
/* 15 */ { 3, s_1_15, 14, -1, 0},
|
||||
/* 16 */ { 3, s_1_16, -1, -1, 0},
|
||||
/* 17 */ { 5, s_1_17, 16, -1, 0},
|
||||
/* 18 */ { 6, s_1_18, 16, -1, 0},
|
||||
/* 19 */ { 4, s_1_19, -1, -1, 0},
|
||||
/* 20 */ { 3, s_1_20, -1, -1, 0},
|
||||
/* 21 */ { 2, s_1_21, -1, -1, 0},
|
||||
/* 22 */ { 3, s_1_22, -1, -1, 0},
|
||||
/* 23 */ { 2, s_1_23, -1, -1, 0},
|
||||
/* 24 */ { 3, s_1_24, 23, -1, 0},
|
||||
/* 25 */ { 3, s_1_25, 23, -1, 0},
|
||||
/* 26 */ { 4, s_1_26, -1, -1, 0},
|
||||
/* 27 */ { 3, s_1_27, -1, -1, 0},
|
||||
/* 28 */ { 3, s_1_28, -1, -1, 0},
|
||||
/* 29 */ { 2, s_1_29, -1, -1, 0},
|
||||
/* 30 */ { 3, s_1_30, 29, -1, 0},
|
||||
/* 31 */ { 3, s_1_31, -1, -1, 0},
|
||||
/* 32 */ { 3, s_1_32, -1, -1, 0},
|
||||
/* 33 */ { 3, s_1_33, -1, -1, 0},
|
||||
/* 34 */ { 4, s_1_34, 33, -1, 0},
|
||||
/* 35 */ { 2, s_1_35, -1, -1, 0},
|
||||
/* 36 */ { 3, s_1_36, 35, -1, 0},
|
||||
/* 37 */ { 3, s_1_37, 35, -1, 0},
|
||||
/* 38 */ { 4, s_1_38, 37, -1, 0},
|
||||
/* 39 */ { 3, s_1_39, -1, -1, 0},
|
||||
/* 40 */ { 4, s_1_40, 39, -1, 0},
|
||||
/* 41 */ { 3, s_1_41, -1, -1, 0},
|
||||
/* 42 */ { 4, s_1_42, 41, -1, 0},
|
||||
/* 43 */ { 3, s_1_43, -1, -1, 0},
|
||||
/* 44 */ { 7, s_1_44, -1, -1, 0},
|
||||
/* 45 */ { 3, s_1_45, -1, -1, 0},
|
||||
/* 46 */ { 4, s_1_46, 45, -1, 0},
|
||||
/* 47 */ { 5, s_1_47, 46, -1, 0},
|
||||
/* 48 */ { 3, s_1_48, -1, -1, 0},
|
||||
/* 49 */ { 2, s_1_49, -1, -1, 0},
|
||||
/* 50 */ { 3, s_1_50, 49, -1, 0},
|
||||
/* 51 */ { 4, s_1_51, 50, -1, 0},
|
||||
/* 52 */ { 2, s_1_52, -1, -1, 0},
|
||||
/* 53 */ { 3, s_1_53, -1, -1, 0},
|
||||
/* 54 */ { 5, s_1_54, -1, -1, 0},
|
||||
/* 55 */ { 3, s_1_55, -1, -1, 0},
|
||||
/* 56 */ { 3, s_1_56, -1, -1, 0},
|
||||
/* 57 */ { 2, s_1_57, -1, -1, 0},
|
||||
/* 58 */ { 3, s_1_58, -1, -1, 0},
|
||||
/* 59 */ { 6, s_1_59, -1, -1, 0},
|
||||
/* 60 */ { 2, s_1_60, -1, -1, 0},
|
||||
/* 61 */ { 5, s_1_61, 60, -1, 0}
|
||||
{ 3, s_1_0, -1, -1, 0},
|
||||
{ 2, s_1_1, -1, -1, 0},
|
||||
{ 3, s_1_2, 1, -1, 0},
|
||||
{ 3, s_1_3, -1, -1, 0},
|
||||
{ 2, s_1_4, -1, -1, 0},
|
||||
{ 3, s_1_5, 4, -1, 0},
|
||||
{ 3, s_1_6, 4, -1, 0},
|
||||
{ 4, s_1_7, 6, -1, 0},
|
||||
{ 3, s_1_8, -1, -1, 0},
|
||||
{ 3, s_1_9, -1, -1, 0},
|
||||
{ 4, s_1_10, 9, -1, 0},
|
||||
{ 3, s_1_11, -1, -1, 0},
|
||||
{ 3, s_1_12, -1, -1, 0},
|
||||
{ 4, s_1_13, 12, -1, 0},
|
||||
{ 2, s_1_14, -1, -1, 0},
|
||||
{ 3, s_1_15, 14, -1, 0},
|
||||
{ 3, s_1_16, -1, -1, 0},
|
||||
{ 5, s_1_17, 16, -1, 0},
|
||||
{ 6, s_1_18, 16, -1, 0},
|
||||
{ 4, s_1_19, -1, -1, 0},
|
||||
{ 3, s_1_20, -1, -1, 0},
|
||||
{ 2, s_1_21, -1, -1, 0},
|
||||
{ 3, s_1_22, -1, -1, 0},
|
||||
{ 2, s_1_23, -1, -1, 0},
|
||||
{ 3, s_1_24, 23, -1, 0},
|
||||
{ 3, s_1_25, 23, -1, 0},
|
||||
{ 4, s_1_26, -1, -1, 0},
|
||||
{ 3, s_1_27, -1, -1, 0},
|
||||
{ 3, s_1_28, -1, -1, 0},
|
||||
{ 2, s_1_29, -1, -1, 0},
|
||||
{ 3, s_1_30, 29, -1, 0},
|
||||
{ 3, s_1_31, -1, -1, 0},
|
||||
{ 3, s_1_32, -1, -1, 0},
|
||||
{ 3, s_1_33, -1, -1, 0},
|
||||
{ 4, s_1_34, 33, -1, 0},
|
||||
{ 2, s_1_35, -1, -1, 0},
|
||||
{ 3, s_1_36, 35, -1, 0},
|
||||
{ 3, s_1_37, 35, -1, 0},
|
||||
{ 4, s_1_38, 37, -1, 0},
|
||||
{ 3, s_1_39, -1, -1, 0},
|
||||
{ 4, s_1_40, 39, -1, 0},
|
||||
{ 3, s_1_41, -1, -1, 0},
|
||||
{ 4, s_1_42, 41, -1, 0},
|
||||
{ 3, s_1_43, -1, -1, 0},
|
||||
{ 7, s_1_44, -1, -1, 0},
|
||||
{ 3, s_1_45, -1, -1, 0},
|
||||
{ 4, s_1_46, 45, -1, 0},
|
||||
{ 5, s_1_47, 46, -1, 0},
|
||||
{ 3, s_1_48, -1, -1, 0},
|
||||
{ 2, s_1_49, -1, -1, 0},
|
||||
{ 3, s_1_50, 49, -1, 0},
|
||||
{ 4, s_1_51, 50, -1, 0},
|
||||
{ 2, s_1_52, -1, -1, 0},
|
||||
{ 3, s_1_53, -1, -1, 0},
|
||||
{ 5, s_1_54, -1, -1, 0},
|
||||
{ 3, s_1_55, -1, -1, 0},
|
||||
{ 3, s_1_56, -1, -1, 0},
|
||||
{ 2, s_1_57, -1, -1, 0},
|
||||
{ 3, s_1_58, -1, -1, 0},
|
||||
{ 6, s_1_59, -1, -1, 0},
|
||||
{ 2, s_1_60, -1, -1, 0},
|
||||
{ 5, s_1_61, 60, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_2_0[5] = { 'o', 'j', 'i', 'm', 'e' };
|
||||
@ -583,17 +583,17 @@ static const symbol s_2_10[4] = { 'e', 's', 'i', 'u' };
|
||||
|
||||
static const struct among a_2[11] =
|
||||
{
|
||||
/* 0 */ { 5, s_2_0, -1, 7, 0},
|
||||
/* 1 */ { 6, s_2_1, -1, 3, 0},
|
||||
/* 2 */ { 5, s_2_2, -1, 6, 0},
|
||||
/* 3 */ { 5, s_2_3, -1, 8, 0},
|
||||
/* 4 */ { 4, s_2_4, -1, 1, 0},
|
||||
/* 5 */ { 4, s_2_5, -1, 2, 0},
|
||||
/* 6 */ { 5, s_2_6, -1, 5, 0},
|
||||
/* 7 */ { 7, s_2_7, -1, 8, 0},
|
||||
/* 8 */ { 6, s_2_8, -1, 1, 0},
|
||||
/* 9 */ { 6, s_2_9, -1, 2, 0},
|
||||
/* 10 */ { 4, s_2_10, -1, 4, 0}
|
||||
{ 5, s_2_0, -1, 7, 0},
|
||||
{ 6, s_2_1, -1, 3, 0},
|
||||
{ 5, s_2_2, -1, 6, 0},
|
||||
{ 5, s_2_3, -1, 8, 0},
|
||||
{ 4, s_2_4, -1, 1, 0},
|
||||
{ 4, s_2_5, -1, 2, 0},
|
||||
{ 5, s_2_6, -1, 5, 0},
|
||||
{ 7, s_2_7, -1, 8, 0},
|
||||
{ 6, s_2_8, -1, 1, 0},
|
||||
{ 6, s_2_9, -1, 2, 0},
|
||||
{ 4, s_2_10, -1, 4, 0}
|
||||
};
|
||||
|
||||
static const symbol s_3_0[2] = { 0xC4, 0x8D };
|
||||
@ -601,15 +601,15 @@ static const symbol s_3_1[3] = { 'd', 0xC5, 0xBE };
|
||||
|
||||
static const struct among a_3[2] =
|
||||
{
|
||||
/* 0 */ { 2, s_3_0, -1, 1, 0},
|
||||
/* 1 */ { 3, s_3_1, -1, 2, 0}
|
||||
{ 2, s_3_0, -1, 1, 0},
|
||||
{ 3, s_3_1, -1, 2, 0}
|
||||
};
|
||||
|
||||
static const symbol s_4_0[2] = { 'g', 'd' };
|
||||
|
||||
static const struct among a_4[1] =
|
||||
{
|
||||
/* 0 */ { 2, s_4_0, -1, 1, 0}
|
||||
{ 2, s_4_0, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const unsigned char g_v[] = { 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 64, 1, 0, 64, 0, 0, 0, 0, 0, 0, 0, 4, 4 };
|
||||
@ -626,44 +626,43 @@ static const symbol s_8[] = { 't' };
|
||||
static const symbol s_9[] = { 'd' };
|
||||
static const symbol s_10[] = { 'g' };
|
||||
|
||||
static int r_R1(struct SN_env * z) { /* backwardmode */
|
||||
if (!(z->I[0] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 43 */
|
||||
static int r_R1(struct SN_env * z) {
|
||||
if (!(z->I[0] <= z->c)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_step1(struct SN_env * z) { /* backwardmode */
|
||||
static int r_step1(struct SN_env * z) {
|
||||
|
||||
{ int mlimit1; /* setlimit, line 45 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 45 */
|
||||
if (!(find_among_b(z, a_0, 204))) { z->lb = mlimit1; return 0; } /* substring, line 45 */
|
||||
z->bra = z->c; /* ], line 45 */
|
||||
z->ket = z->c;
|
||||
if (!(find_among_b(z, a_0, 204))) { z->lb = mlimit1; return 0; }
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit1;
|
||||
}
|
||||
{ int ret = r_R1(z); /* call R1, line 45 */
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 229 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_step2(struct SN_env * z) { /* backwardmode */
|
||||
/* repeat, line 232 */
|
||||
static int r_step2(struct SN_env * z) {
|
||||
while(1) {
|
||||
int m1 = z->l - z->c; (void)m1;
|
||||
|
||||
while(1) { int m1 = z->l - z->c; (void)m1;
|
||||
|
||||
{ int mlimit2; /* setlimit, line 233 */
|
||||
{ int mlimit2;
|
||||
if (z->c < z->I[0]) goto lab0;
|
||||
mlimit2 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 233 */
|
||||
if (!(find_among_b(z, a_1, 62))) { z->lb = mlimit2; goto lab0; } /* substring, line 233 */
|
||||
z->bra = z->c; /* ], line 233 */
|
||||
z->ket = z->c;
|
||||
if (!(find_among_b(z, a_1, 62))) { z->lb = mlimit2; goto lab0; }
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit2;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 303 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
continue;
|
||||
@ -674,51 +673,51 @@ static int r_step2(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_fix_conflicts(struct SN_env * z) { /* backwardmode */
|
||||
static int r_fix_conflicts(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 307 */
|
||||
if (z->c - 3 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((2621472 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 307 */
|
||||
z->ket = z->c;
|
||||
if (z->c - 3 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((2621472 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
|
||||
among_var = find_among_b(z, a_2, 11);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 307 */
|
||||
switch (among_var) { /* among, line 307 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_from_s(z, 5, s_0); /* <-, line 309 */
|
||||
{ int ret = slice_from_s(z, 5, s_0);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 5, s_1); /* <-, line 314 */
|
||||
{ int ret = slice_from_s(z, 5, s_1);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_from_s(z, 7, s_2); /* <-, line 319 */
|
||||
{ int ret = slice_from_s(z, 7, s_2);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
{ int ret = slice_from_s(z, 4, s_3); /* <-, line 322 */
|
||||
{ int ret = slice_from_s(z, 4, s_3);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
{ int ret = slice_from_s(z, 4, s_4); /* <-, line 324 */
|
||||
{ int ret = slice_from_s(z, 4, s_4);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 6:
|
||||
{ int ret = slice_from_s(z, 6, s_5); /* <-, line 327 */
|
||||
{ int ret = slice_from_s(z, 6, s_5);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 7:
|
||||
{ int ret = slice_from_s(z, 6, s_6); /* <-, line 328 */
|
||||
{ int ret = slice_from_s(z, 6, s_6);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 8:
|
||||
{ int ret = slice_from_s(z, 6, s_7); /* <-, line 331 */
|
||||
{ int ret = slice_from_s(z, 6, s_7);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -726,21 +725,21 @@ static int r_fix_conflicts(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_fix_chdz(struct SN_env * z) { /* backwardmode */
|
||||
static int r_fix_chdz(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 338 */
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 141 && z->p[z->c - 1] != 190)) return 0; /* substring, line 338 */
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 141 && z->p[z->c - 1] != 190)) return 0;
|
||||
among_var = find_among_b(z, a_3, 2);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 338 */
|
||||
switch (among_var) { /* among, line 338 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_from_s(z, 1, s_8); /* <-, line 339 */
|
||||
{ int ret = slice_from_s(z, 1, s_8);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 1, s_9); /* <-, line 340 */
|
||||
{ int ret = slice_from_s(z, 1, s_9);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -748,82 +747,82 @@ static int r_fix_chdz(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_fix_gd(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 345 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] != 100) return 0; /* substring, line 345 */
|
||||
static int r_fix_gd(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] != 100) return 0;
|
||||
if (!(find_among_b(z, a_4, 1))) return 0;
|
||||
z->bra = z->c; /* ], line 345 */
|
||||
{ int ret = slice_from_s(z, 1, s_10); /* <-, line 346 */
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_from_s(z, 1, s_10);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern int lithuanian_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
z->I[0] = z->l; /* $p1 = <integer expression>, line 355 */
|
||||
{ int c1 = z->c; /* do, line 357 */
|
||||
{ int c2 = z->c; /* try, line 359 */
|
||||
{ int c_test3 = z->c; /* test, line 359 */
|
||||
if (z->c == z->l || z->p[z->c] != 'a') { z->c = c2; goto lab1; } /* literal, line 359 */
|
||||
extern int lithuanian_UTF_8_stem(struct SN_env * z) {
|
||||
z->I[0] = z->l;
|
||||
{ int c1 = z->c;
|
||||
{ int c2 = z->c;
|
||||
{ int c_test3 = z->c;
|
||||
if (z->c == z->l || z->p[z->c] != 'a') { z->c = c2; goto lab1; }
|
||||
z->c++;
|
||||
z->c = c_test3;
|
||||
}
|
||||
if (!(len_utf8(z->p) > 6)) { z->c = c2; goto lab1; } /* $(<integer expression> > <integer expression>), line 359 */
|
||||
{ int ret = skip_utf8(z->p, z->c, 0, z->l, + 1); /* hop, line 359 */
|
||||
if (!(len_utf8(z->p) > 6)) { z->c = c2; goto lab1; }
|
||||
{ int ret = skip_utf8(z->p, z->c, z->l, 1);
|
||||
if (ret < 0) { z->c = c2; goto lab1; }
|
||||
z->c = ret;
|
||||
}
|
||||
lab1:
|
||||
;
|
||||
}
|
||||
{ /* gopast */ /* grouping v, line 361 */
|
||||
{
|
||||
int ret = out_grouping_U(z, g_v, 97, 371, 1);
|
||||
if (ret < 0) goto lab0;
|
||||
z->c += ret;
|
||||
}
|
||||
{ /* gopast */ /* non v, line 361 */
|
||||
{
|
||||
int ret = in_grouping_U(z, g_v, 97, 371, 1);
|
||||
if (ret < 0) goto lab0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[0] = z->c; /* setmark p1, line 361 */
|
||||
z->I[0] = z->c;
|
||||
lab0:
|
||||
z->c = c1;
|
||||
}
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 364 */
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
{ int m4 = z->l - z->c; (void)m4; /* do, line 365 */
|
||||
{ int ret = r_fix_conflicts(z); /* call fix_conflicts, line 365 */
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
{ int ret = r_fix_conflicts(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m4;
|
||||
}
|
||||
{ int m5 = z->l - z->c; (void)m5; /* do, line 366 */
|
||||
{ int ret = r_step1(z); /* call step1, line 366 */
|
||||
{ int m5 = z->l - z->c; (void)m5;
|
||||
{ int ret = r_step1(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m5;
|
||||
}
|
||||
{ int m6 = z->l - z->c; (void)m6; /* do, line 367 */
|
||||
{ int ret = r_fix_chdz(z); /* call fix_chdz, line 367 */
|
||||
{ int m6 = z->l - z->c; (void)m6;
|
||||
{ int ret = r_fix_chdz(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m6;
|
||||
}
|
||||
{ int m7 = z->l - z->c; (void)m7; /* do, line 368 */
|
||||
{ int ret = r_step2(z); /* call step2, line 368 */
|
||||
{ int m7 = z->l - z->c; (void)m7;
|
||||
{ int ret = r_step2(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m7;
|
||||
}
|
||||
{ int m8 = z->l - z->c; (void)m8; /* do, line 369 */
|
||||
{ int ret = r_fix_chdz(z); /* call fix_chdz, line 369 */
|
||||
{ int m8 = z->l - z->c; (void)m8;
|
||||
{ int ret = r_fix_chdz(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m8;
|
||||
}
|
||||
{ int m9 = z->l - z->c; (void)m9; /* do, line 370 */
|
||||
{ int ret = r_fix_gd(z); /* call fix_gd, line 370 */
|
||||
{ int m9 = z->l - z->c; (void)m9;
|
||||
{ int ret = r_fix_gd(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m9;
|
||||
@ -832,7 +831,7 @@ extern int lithuanian_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern struct SN_env * lithuanian_UTF_8_create_env(void) { return SN_create_env(0, 1, 0); }
|
||||
extern struct SN_env * lithuanian_UTF_8_create_env(void) { return SN_create_env(0, 1); }
|
||||
|
||||
extern void lithuanian_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#include "header.h"
|
||||
|
||||
@ -45,23 +45,23 @@ static const symbol s_0_16[9] = { 0xE0, 0xA4, 0xAA, 0xE0, 0xA4, 0x9B, 0xE0, 0xA4
|
||||
|
||||
static const struct among a_0[17] =
|
||||
{
|
||||
/* 0 */ { 6, s_0_0, -1, 2, 0},
|
||||
/* 1 */ { 9, s_0_1, -1, 1, 0},
|
||||
/* 2 */ { 6, s_0_2, -1, 1, 0},
|
||||
/* 3 */ { 9, s_0_3, -1, 1, 0},
|
||||
/* 4 */ { 6, s_0_4, -1, 2, 0},
|
||||
/* 5 */ { 12, s_0_5, -1, 1, 0},
|
||||
/* 6 */ { 6, s_0_6, -1, 1, 0},
|
||||
/* 7 */ { 6, s_0_7, -1, 2, 0},
|
||||
/* 8 */ { 9, s_0_8, -1, 1, 0},
|
||||
/* 9 */ { 9, s_0_9, -1, 1, 0},
|
||||
/* 10 */ { 18, s_0_10, -1, 1, 0},
|
||||
/* 11 */ { 6, s_0_11, -1, 1, 0},
|
||||
/* 12 */ { 6, s_0_12, -1, 2, 0},
|
||||
/* 13 */ { 6, s_0_13, -1, 1, 0},
|
||||
/* 14 */ { 18, s_0_14, -1, 1, 0},
|
||||
/* 15 */ { 6, s_0_15, -1, 2, 0},
|
||||
/* 16 */ { 9, s_0_16, -1, 1, 0}
|
||||
{ 6, s_0_0, -1, 2, 0},
|
||||
{ 9, s_0_1, -1, 1, 0},
|
||||
{ 6, s_0_2, -1, 1, 0},
|
||||
{ 9, s_0_3, -1, 1, 0},
|
||||
{ 6, s_0_4, -1, 2, 0},
|
||||
{ 12, s_0_5, -1, 1, 0},
|
||||
{ 6, s_0_6, -1, 1, 0},
|
||||
{ 6, s_0_7, -1, 2, 0},
|
||||
{ 9, s_0_8, -1, 1, 0},
|
||||
{ 9, s_0_9, -1, 1, 0},
|
||||
{ 18, s_0_10, -1, 1, 0},
|
||||
{ 6, s_0_11, -1, 1, 0},
|
||||
{ 6, s_0_12, -1, 2, 0},
|
||||
{ 6, s_0_13, -1, 1, 0},
|
||||
{ 18, s_0_14, -1, 1, 0},
|
||||
{ 6, s_0_15, -1, 2, 0},
|
||||
{ 9, s_0_16, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_1_0[3] = { 0xE0, 0xA4, 0x81 };
|
||||
@ -70,9 +70,9 @@ static const symbol s_1_2[3] = { 0xE0, 0xA5, 0x88 };
|
||||
|
||||
static const struct among a_1[3] =
|
||||
{
|
||||
/* 0 */ { 3, s_1_0, -1, -1, 0},
|
||||
/* 1 */ { 3, s_1_1, -1, -1, 0},
|
||||
/* 2 */ { 3, s_1_2, -1, -1, 0}
|
||||
{ 3, s_1_0, -1, -1, 0},
|
||||
{ 3, s_1_1, -1, -1, 0},
|
||||
{ 3, s_1_2, -1, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_2_0[3] = { 0xE0, 0xA4, 0x81 };
|
||||
@ -81,9 +81,9 @@ static const symbol s_2_2[3] = { 0xE0, 0xA5, 0x88 };
|
||||
|
||||
static const struct among a_2[3] =
|
||||
{
|
||||
/* 0 */ { 3, s_2_0, -1, 1, 0},
|
||||
/* 1 */ { 3, s_2_1, -1, 1, 0},
|
||||
/* 2 */ { 3, s_2_2, -1, 2, 0}
|
||||
{ 3, s_2_0, -1, 1, 0},
|
||||
{ 3, s_2_1, -1, 1, 0},
|
||||
{ 3, s_2_2, -1, 2, 0}
|
||||
};
|
||||
|
||||
static const symbol s_3_0[9] = { 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x95, 0xE0, 0xA5, 0x80 };
|
||||
@ -180,97 +180,97 @@ static const symbol s_3_90[12] = { 0xE0, 0xA4, 0xAE, 0xE0, 0xA4, 0xBE, 0xE0, 0xA
|
||||
|
||||
static const struct among a_3[91] =
|
||||
{
|
||||
/* 0 */ { 9, s_3_0, -1, 1, 0},
|
||||
/* 1 */ { 9, s_3_1, -1, 1, 0},
|
||||
/* 2 */ { 12, s_3_2, 1, 1, 0},
|
||||
/* 3 */ { 12, s_3_3, 1, 1, 0},
|
||||
/* 4 */ { 12, s_3_4, -1, 1, 0},
|
||||
/* 5 */ { 6, s_3_5, -1, 1, 0},
|
||||
/* 6 */ { 6, s_3_6, -1, 1, 0},
|
||||
/* 7 */ { 6, s_3_7, -1, 1, 0},
|
||||
/* 8 */ { 9, s_3_8, 7, 1, 0},
|
||||
/* 9 */ { 12, s_3_9, 8, 1, 0},
|
||||
/* 10 */ { 9, s_3_10, 7, 1, 0},
|
||||
/* 11 */ { 6, s_3_11, -1, 1, 0},
|
||||
/* 12 */ { 9, s_3_12, -1, 1, 0},
|
||||
/* 13 */ { 9, s_3_13, -1, 1, 0},
|
||||
/* 14 */ { 6, s_3_14, -1, 1, 0},
|
||||
/* 15 */ { 6, s_3_15, -1, 1, 0},
|
||||
/* 16 */ { 6, s_3_16, -1, 1, 0},
|
||||
/* 17 */ { 9, s_3_17, -1, 1, 0},
|
||||
/* 18 */ { 12, s_3_18, 17, 1, 0},
|
||||
/* 19 */ { 9, s_3_19, -1, 1, 0},
|
||||
/* 20 */ { 6, s_3_20, -1, 1, 0},
|
||||
/* 21 */ { 9, s_3_21, 20, 1, 0},
|
||||
/* 22 */ { 9, s_3_22, 20, 1, 0},
|
||||
/* 23 */ { 9, s_3_23, -1, 1, 0},
|
||||
/* 24 */ { 12, s_3_24, 23, 1, 0},
|
||||
/* 25 */ { 9, s_3_25, -1, 1, 0},
|
||||
/* 26 */ { 12, s_3_26, 25, 1, 0},
|
||||
/* 27 */ { 12, s_3_27, 25, 1, 0},
|
||||
/* 28 */ { 6, s_3_28, -1, 1, 0},
|
||||
/* 29 */ { 9, s_3_29, 28, 1, 0},
|
||||
/* 30 */ { 9, s_3_30, 28, 1, 0},
|
||||
/* 31 */ { 6, s_3_31, -1, 1, 0},
|
||||
/* 32 */ { 9, s_3_32, 31, 1, 0},
|
||||
/* 33 */ { 12, s_3_33, 31, 1, 0},
|
||||
/* 34 */ { 9, s_3_34, 31, 1, 0},
|
||||
/* 35 */ { 9, s_3_35, 31, 1, 0},
|
||||
/* 36 */ { 12, s_3_36, 35, 1, 0},
|
||||
/* 37 */ { 12, s_3_37, 35, 1, 0},
|
||||
/* 38 */ { 6, s_3_38, -1, 1, 0},
|
||||
/* 39 */ { 9, s_3_39, 38, 1, 0},
|
||||
/* 40 */ { 9, s_3_40, 38, 1, 0},
|
||||
/* 41 */ { 12, s_3_41, 40, 1, 0},
|
||||
/* 42 */ { 9, s_3_42, 38, 1, 0},
|
||||
/* 43 */ { 9, s_3_43, 38, 1, 0},
|
||||
/* 44 */ { 6, s_3_44, -1, 1, 0},
|
||||
/* 45 */ { 12, s_3_45, 44, 1, 0},
|
||||
/* 46 */ { 12, s_3_46, 44, 1, 0},
|
||||
/* 47 */ { 12, s_3_47, 44, 1, 0},
|
||||
/* 48 */ { 9, s_3_48, -1, 1, 0},
|
||||
/* 49 */ { 12, s_3_49, 48, 1, 0},
|
||||
/* 50 */ { 12, s_3_50, 48, 1, 0},
|
||||
/* 51 */ { 15, s_3_51, 50, 1, 0},
|
||||
/* 52 */ { 12, s_3_52, 48, 1, 0},
|
||||
/* 53 */ { 12, s_3_53, 48, 1, 0},
|
||||
/* 54 */ { 12, s_3_54, -1, 1, 0},
|
||||
/* 55 */ { 12, s_3_55, -1, 1, 0},
|
||||
/* 56 */ { 12, s_3_56, -1, 1, 0},
|
||||
/* 57 */ { 9, s_3_57, -1, 1, 0},
|
||||
/* 58 */ { 9, s_3_58, -1, 1, 0},
|
||||
/* 59 */ { 15, s_3_59, 58, 1, 0},
|
||||
/* 60 */ { 12, s_3_60, -1, 1, 0},
|
||||
/* 61 */ { 12, s_3_61, -1, 1, 0},
|
||||
/* 62 */ { 9, s_3_62, -1, 1, 0},
|
||||
/* 63 */ { 12, s_3_63, 62, 1, 0},
|
||||
/* 64 */ { 12, s_3_64, 62, 1, 0},
|
||||
/* 65 */ { 15, s_3_65, 64, 1, 0},
|
||||
/* 66 */ { 12, s_3_66, 62, 1, 0},
|
||||
/* 67 */ { 12, s_3_67, 62, 1, 0},
|
||||
/* 68 */ { 9, s_3_68, -1, 1, 0},
|
||||
/* 69 */ { 12, s_3_69, 68, 1, 0},
|
||||
/* 70 */ { 9, s_3_70, -1, 1, 0},
|
||||
/* 71 */ { 3, s_3_71, -1, 1, 0},
|
||||
/* 72 */ { 6, s_3_72, 71, 1, 0},
|
||||
/* 73 */ { 6, s_3_73, 71, 1, 0},
|
||||
/* 74 */ { 9, s_3_74, 73, 1, 0},
|
||||
/* 75 */ { 15, s_3_75, 74, 1, 0},
|
||||
/* 76 */ { 15, s_3_76, 71, 1, 0},
|
||||
/* 77 */ { 12, s_3_77, 71, 1, 0},
|
||||
/* 78 */ { 12, s_3_78, 71, 1, 0},
|
||||
/* 79 */ { 6, s_3_79, 71, 1, 0},
|
||||
/* 80 */ { 6, s_3_80, 71, 1, 0},
|
||||
/* 81 */ { 9, s_3_81, -1, 1, 0},
|
||||
/* 82 */ { 12, s_3_82, 81, 1, 0},
|
||||
/* 83 */ { 9, s_3_83, -1, 1, 0},
|
||||
/* 84 */ { 12, s_3_84, 83, 1, 0},
|
||||
/* 85 */ { 12, s_3_85, 83, 1, 0},
|
||||
/* 86 */ { 6, s_3_86, -1, 1, 0},
|
||||
/* 87 */ { 9, s_3_87, 86, 1, 0},
|
||||
/* 88 */ { 9, s_3_88, 86, 1, 0},
|
||||
/* 89 */ { 12, s_3_89, -1, 1, 0},
|
||||
/* 90 */ { 12, s_3_90, -1, 1, 0}
|
||||
{ 9, s_3_0, -1, 1, 0},
|
||||
{ 9, s_3_1, -1, 1, 0},
|
||||
{ 12, s_3_2, 1, 1, 0},
|
||||
{ 12, s_3_3, 1, 1, 0},
|
||||
{ 12, s_3_4, -1, 1, 0},
|
||||
{ 6, s_3_5, -1, 1, 0},
|
||||
{ 6, s_3_6, -1, 1, 0},
|
||||
{ 6, s_3_7, -1, 1, 0},
|
||||
{ 9, s_3_8, 7, 1, 0},
|
||||
{ 12, s_3_9, 8, 1, 0},
|
||||
{ 9, s_3_10, 7, 1, 0},
|
||||
{ 6, s_3_11, -1, 1, 0},
|
||||
{ 9, s_3_12, -1, 1, 0},
|
||||
{ 9, s_3_13, -1, 1, 0},
|
||||
{ 6, s_3_14, -1, 1, 0},
|
||||
{ 6, s_3_15, -1, 1, 0},
|
||||
{ 6, s_3_16, -1, 1, 0},
|
||||
{ 9, s_3_17, -1, 1, 0},
|
||||
{ 12, s_3_18, 17, 1, 0},
|
||||
{ 9, s_3_19, -1, 1, 0},
|
||||
{ 6, s_3_20, -1, 1, 0},
|
||||
{ 9, s_3_21, 20, 1, 0},
|
||||
{ 9, s_3_22, 20, 1, 0},
|
||||
{ 9, s_3_23, -1, 1, 0},
|
||||
{ 12, s_3_24, 23, 1, 0},
|
||||
{ 9, s_3_25, -1, 1, 0},
|
||||
{ 12, s_3_26, 25, 1, 0},
|
||||
{ 12, s_3_27, 25, 1, 0},
|
||||
{ 6, s_3_28, -1, 1, 0},
|
||||
{ 9, s_3_29, 28, 1, 0},
|
||||
{ 9, s_3_30, 28, 1, 0},
|
||||
{ 6, s_3_31, -1, 1, 0},
|
||||
{ 9, s_3_32, 31, 1, 0},
|
||||
{ 12, s_3_33, 31, 1, 0},
|
||||
{ 9, s_3_34, 31, 1, 0},
|
||||
{ 9, s_3_35, 31, 1, 0},
|
||||
{ 12, s_3_36, 35, 1, 0},
|
||||
{ 12, s_3_37, 35, 1, 0},
|
||||
{ 6, s_3_38, -1, 1, 0},
|
||||
{ 9, s_3_39, 38, 1, 0},
|
||||
{ 9, s_3_40, 38, 1, 0},
|
||||
{ 12, s_3_41, 40, 1, 0},
|
||||
{ 9, s_3_42, 38, 1, 0},
|
||||
{ 9, s_3_43, 38, 1, 0},
|
||||
{ 6, s_3_44, -1, 1, 0},
|
||||
{ 12, s_3_45, 44, 1, 0},
|
||||
{ 12, s_3_46, 44, 1, 0},
|
||||
{ 12, s_3_47, 44, 1, 0},
|
||||
{ 9, s_3_48, -1, 1, 0},
|
||||
{ 12, s_3_49, 48, 1, 0},
|
||||
{ 12, s_3_50, 48, 1, 0},
|
||||
{ 15, s_3_51, 50, 1, 0},
|
||||
{ 12, s_3_52, 48, 1, 0},
|
||||
{ 12, s_3_53, 48, 1, 0},
|
||||
{ 12, s_3_54, -1, 1, 0},
|
||||
{ 12, s_3_55, -1, 1, 0},
|
||||
{ 12, s_3_56, -1, 1, 0},
|
||||
{ 9, s_3_57, -1, 1, 0},
|
||||
{ 9, s_3_58, -1, 1, 0},
|
||||
{ 15, s_3_59, 58, 1, 0},
|
||||
{ 12, s_3_60, -1, 1, 0},
|
||||
{ 12, s_3_61, -1, 1, 0},
|
||||
{ 9, s_3_62, -1, 1, 0},
|
||||
{ 12, s_3_63, 62, 1, 0},
|
||||
{ 12, s_3_64, 62, 1, 0},
|
||||
{ 15, s_3_65, 64, 1, 0},
|
||||
{ 12, s_3_66, 62, 1, 0},
|
||||
{ 12, s_3_67, 62, 1, 0},
|
||||
{ 9, s_3_68, -1, 1, 0},
|
||||
{ 12, s_3_69, 68, 1, 0},
|
||||
{ 9, s_3_70, -1, 1, 0},
|
||||
{ 3, s_3_71, -1, 1, 0},
|
||||
{ 6, s_3_72, 71, 1, 0},
|
||||
{ 6, s_3_73, 71, 1, 0},
|
||||
{ 9, s_3_74, 73, 1, 0},
|
||||
{ 15, s_3_75, 74, 1, 0},
|
||||
{ 15, s_3_76, 71, 1, 0},
|
||||
{ 12, s_3_77, 71, 1, 0},
|
||||
{ 12, s_3_78, 71, 1, 0},
|
||||
{ 6, s_3_79, 71, 1, 0},
|
||||
{ 6, s_3_80, 71, 1, 0},
|
||||
{ 9, s_3_81, -1, 1, 0},
|
||||
{ 12, s_3_82, 81, 1, 0},
|
||||
{ 9, s_3_83, -1, 1, 0},
|
||||
{ 12, s_3_84, 83, 1, 0},
|
||||
{ 12, s_3_85, 83, 1, 0},
|
||||
{ 6, s_3_86, -1, 1, 0},
|
||||
{ 9, s_3_87, 86, 1, 0},
|
||||
{ 9, s_3_88, 86, 1, 0},
|
||||
{ 12, s_3_89, -1, 1, 0},
|
||||
{ 12, s_3_90, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_0[] = { 0xE0, 0xA4, 0x8F };
|
||||
@ -281,32 +281,32 @@ static const symbol s_4[] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x8C };
|
||||
static const symbol s_5[] = { 0xE0, 0xA4, 0xA5, 0xE0, 0xA5, 0x87 };
|
||||
static const symbol s_6[] = { 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x8D, 0xE0, 0xA4, 0xB0 };
|
||||
|
||||
static int r_remove_category_1(struct SN_env * z) { /* backwardmode */
|
||||
static int r_remove_category_1(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 54 */
|
||||
among_var = find_among_b(z, a_0, 17); /* substring, line 54 */
|
||||
z->ket = z->c;
|
||||
among_var = find_among_b(z, a_0, 17);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 54 */
|
||||
switch (among_var) { /* among, line 54 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 58 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int m1 = z->l - z->c; (void)m1; /* or, line 59 */
|
||||
{ int m2 = z->l - z->c; (void)m2; /* or, line 59 */
|
||||
if (!(eq_s_b(z, 3, s_0))) goto lab3; /* literal, line 59 */
|
||||
{ int m1 = z->l - z->c; (void)m1;
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
if (!(eq_s_b(z, 3, s_0))) goto lab3;
|
||||
goto lab2;
|
||||
lab3:
|
||||
z->c = z->l - m2;
|
||||
if (!(eq_s_b(z, 3, s_1))) goto lab1; /* literal, line 59 */
|
||||
if (!(eq_s_b(z, 3, s_1))) goto lab1;
|
||||
}
|
||||
lab2:
|
||||
goto lab0;
|
||||
lab1:
|
||||
z->c = z->l - m1;
|
||||
{ int ret = slice_del(z); /* delete, line 59 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
}
|
||||
@ -316,46 +316,46 @@ static int r_remove_category_1(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_check_category_2(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 64 */
|
||||
if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 4 || !((262 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 64 */
|
||||
static int r_check_category_2(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 4 || !((262 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
|
||||
if (!(find_among_b(z, a_1, 3))) return 0;
|
||||
z->bra = z->c; /* ], line 64 */
|
||||
z->bra = z->c;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_remove_category_2(struct SN_env * z) { /* backwardmode */
|
||||
static int r_remove_category_2(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 70 */
|
||||
if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 4 || !((262 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 70 */
|
||||
z->ket = z->c;
|
||||
if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 4 || !((262 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
|
||||
among_var = find_among_b(z, a_2, 3);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 70 */
|
||||
switch (among_var) { /* among, line 70 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int m1 = z->l - z->c; (void)m1; /* or, line 71 */
|
||||
if (!(eq_s_b(z, 6, s_2))) goto lab1; /* literal, line 71 */
|
||||
{ int m1 = z->l - z->c; (void)m1;
|
||||
if (!(eq_s_b(z, 6, s_2))) goto lab1;
|
||||
goto lab0;
|
||||
lab1:
|
||||
z->c = z->l - m1;
|
||||
if (!(eq_s_b(z, 6, s_3))) goto lab2; /* literal, line 71 */
|
||||
if (!(eq_s_b(z, 6, s_3))) goto lab2;
|
||||
goto lab0;
|
||||
lab2:
|
||||
z->c = z->l - m1;
|
||||
if (!(eq_s_b(z, 6, s_4))) goto lab3; /* literal, line 71 */
|
||||
if (!(eq_s_b(z, 6, s_4))) goto lab3;
|
||||
goto lab0;
|
||||
lab3:
|
||||
z->c = z->l - m1;
|
||||
if (!(eq_s_b(z, 6, s_5))) return 0; /* literal, line 71 */
|
||||
if (!(eq_s_b(z, 6, s_5))) return 0;
|
||||
}
|
||||
lab0:
|
||||
{ int ret = slice_del(z); /* delete, line 71 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (!(eq_s_b(z, 9, s_6))) return 0; /* literal, line 72 */
|
||||
{ int ret = slice_del(z); /* delete, line 72 */
|
||||
if (!(eq_s_b(z, 9, s_6))) return 0;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -363,37 +363,36 @@ static int r_remove_category_2(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_remove_category_3(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 77 */
|
||||
if (!(find_among_b(z, a_3, 91))) return 0; /* substring, line 77 */
|
||||
z->bra = z->c; /* ], line 77 */
|
||||
{ int ret = slice_del(z); /* delete, line 79 */
|
||||
static int r_remove_category_3(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (!(find_among_b(z, a_3, 91))) return 0;
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern int nepali_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 86 */
|
||||
extern int nepali_UTF_8_stem(struct SN_env * z) {
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
{ int m1 = z->l - z->c; (void)m1; /* do, line 87 */
|
||||
{ int ret = r_remove_category_1(z); /* call remove_category_1, line 87 */
|
||||
{ int m1 = z->l - z->c; (void)m1;
|
||||
{ int ret = r_remove_category_1(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m1;
|
||||
}
|
||||
{ int m2 = z->l - z->c; (void)m2; /* do, line 88 */
|
||||
/* repeat, line 89 */
|
||||
|
||||
while(1) { int m3 = z->l - z->c; (void)m3;
|
||||
{ int m4 = z->l - z->c; (void)m4; /* do, line 89 */
|
||||
{ int m5 = z->l - z->c; (void)m5; /* and, line 89 */
|
||||
{ int ret = r_check_category_2(z); /* call check_category_2, line 89 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
while(1) {
|
||||
int m3 = z->l - z->c; (void)m3;
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
{ int m5 = z->l - z->c; (void)m5;
|
||||
{ int ret = r_check_category_2(z);
|
||||
if (ret == 0) goto lab2;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m5;
|
||||
{ int ret = r_remove_category_2(z); /* call remove_category_2, line 89 */
|
||||
{ int ret = r_remove_category_2(z);
|
||||
if (ret == 0) goto lab2;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
@ -401,7 +400,7 @@ extern int nepali_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
lab2:
|
||||
z->c = z->l - m4;
|
||||
}
|
||||
{ int ret = r_remove_category_3(z); /* call remove_category_3, line 89 */
|
||||
{ int ret = r_remove_category_3(z);
|
||||
if (ret == 0) goto lab1;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
@ -416,7 +415,7 @@ extern int nepali_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern struct SN_env * nepali_UTF_8_create_env(void) { return SN_create_env(0, 0, 0); }
|
||||
extern struct SN_env * nepali_UTF_8_create_env(void) { return SN_create_env(0, 0); }
|
||||
|
||||
extern void nepali_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#include "header.h"
|
||||
|
||||
@ -57,35 +57,35 @@ static const symbol s_0_28[3] = { 'a', 's', 't' };
|
||||
|
||||
static const struct among a_0[29] =
|
||||
{
|
||||
/* 0 */ { 1, s_0_0, -1, 1, 0},
|
||||
/* 1 */ { 1, s_0_1, -1, 1, 0},
|
||||
/* 2 */ { 3, s_0_2, 1, 1, 0},
|
||||
/* 3 */ { 4, s_0_3, 1, 1, 0},
|
||||
/* 4 */ { 4, s_0_4, 1, 1, 0},
|
||||
/* 5 */ { 3, s_0_5, 1, 1, 0},
|
||||
/* 6 */ { 3, s_0_6, 1, 1, 0},
|
||||
/* 7 */ { 6, s_0_7, 6, 1, 0},
|
||||
/* 8 */ { 4, s_0_8, 1, 3, 0},
|
||||
/* 9 */ { 2, s_0_9, -1, 1, 0},
|
||||
/* 10 */ { 5, s_0_10, 9, 1, 0},
|
||||
/* 11 */ { 2, s_0_11, -1, 1, 0},
|
||||
/* 12 */ { 2, s_0_12, -1, 1, 0},
|
||||
/* 13 */ { 5, s_0_13, 12, 1, 0},
|
||||
/* 14 */ { 1, s_0_14, -1, 2, 0},
|
||||
/* 15 */ { 2, s_0_15, 14, 1, 0},
|
||||
/* 16 */ { 2, s_0_16, 14, 1, 0},
|
||||
/* 17 */ { 4, s_0_17, 16, 1, 0},
|
||||
/* 18 */ { 5, s_0_18, 16, 1, 0},
|
||||
/* 19 */ { 4, s_0_19, 16, 1, 0},
|
||||
/* 20 */ { 7, s_0_20, 19, 1, 0},
|
||||
/* 21 */ { 3, s_0_21, 14, 1, 0},
|
||||
/* 22 */ { 6, s_0_22, 21, 1, 0},
|
||||
/* 23 */ { 3, s_0_23, 14, 1, 0},
|
||||
/* 24 */ { 3, s_0_24, 14, 1, 0},
|
||||
/* 25 */ { 2, s_0_25, -1, 1, 0},
|
||||
/* 26 */ { 3, s_0_26, 25, 1, 0},
|
||||
/* 27 */ { 3, s_0_27, -1, 3, 0},
|
||||
/* 28 */ { 3, s_0_28, -1, 1, 0}
|
||||
{ 1, s_0_0, -1, 1, 0},
|
||||
{ 1, s_0_1, -1, 1, 0},
|
||||
{ 3, s_0_2, 1, 1, 0},
|
||||
{ 4, s_0_3, 1, 1, 0},
|
||||
{ 4, s_0_4, 1, 1, 0},
|
||||
{ 3, s_0_5, 1, 1, 0},
|
||||
{ 3, s_0_6, 1, 1, 0},
|
||||
{ 6, s_0_7, 6, 1, 0},
|
||||
{ 4, s_0_8, 1, 3, 0},
|
||||
{ 2, s_0_9, -1, 1, 0},
|
||||
{ 5, s_0_10, 9, 1, 0},
|
||||
{ 2, s_0_11, -1, 1, 0},
|
||||
{ 2, s_0_12, -1, 1, 0},
|
||||
{ 5, s_0_13, 12, 1, 0},
|
||||
{ 1, s_0_14, -1, 2, 0},
|
||||
{ 2, s_0_15, 14, 1, 0},
|
||||
{ 2, s_0_16, 14, 1, 0},
|
||||
{ 4, s_0_17, 16, 1, 0},
|
||||
{ 5, s_0_18, 16, 1, 0},
|
||||
{ 4, s_0_19, 16, 1, 0},
|
||||
{ 7, s_0_20, 19, 1, 0},
|
||||
{ 3, s_0_21, 14, 1, 0},
|
||||
{ 6, s_0_22, 21, 1, 0},
|
||||
{ 3, s_0_23, 14, 1, 0},
|
||||
{ 3, s_0_24, 14, 1, 0},
|
||||
{ 2, s_0_25, -1, 1, 0},
|
||||
{ 3, s_0_26, 25, 1, 0},
|
||||
{ 3, s_0_27, -1, 3, 0},
|
||||
{ 3, s_0_28, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_1_0[2] = { 'd', 't' };
|
||||
@ -93,8 +93,8 @@ static const symbol s_1_1[2] = { 'v', 't' };
|
||||
|
||||
static const struct among a_1[2] =
|
||||
{
|
||||
/* 0 */ { 2, s_1_0, -1, -1, 0},
|
||||
/* 1 */ { 2, s_1_1, -1, -1, 0}
|
||||
{ 2, s_1_0, -1, -1, 0},
|
||||
{ 2, s_1_1, -1, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_2_0[3] = { 'l', 'e', 'g' };
|
||||
@ -111,17 +111,17 @@ static const symbol s_2_10[7] = { 'h', 'e', 't', 's', 'l', 'o', 'v' };
|
||||
|
||||
static const struct among a_2[11] =
|
||||
{
|
||||
/* 0 */ { 3, s_2_0, -1, 1, 0},
|
||||
/* 1 */ { 4, s_2_1, 0, 1, 0},
|
||||
/* 2 */ { 2, s_2_2, -1, 1, 0},
|
||||
/* 3 */ { 3, s_2_3, 2, 1, 0},
|
||||
/* 4 */ { 3, s_2_4, 2, 1, 0},
|
||||
/* 5 */ { 4, s_2_5, 4, 1, 0},
|
||||
/* 6 */ { 3, s_2_6, -1, 1, 0},
|
||||
/* 7 */ { 3, s_2_7, -1, 1, 0},
|
||||
/* 8 */ { 4, s_2_8, 7, 1, 0},
|
||||
/* 9 */ { 4, s_2_9, 7, 1, 0},
|
||||
/* 10 */ { 7, s_2_10, 9, 1, 0}
|
||||
{ 3, s_2_0, -1, 1, 0},
|
||||
{ 4, s_2_1, 0, 1, 0},
|
||||
{ 2, s_2_2, -1, 1, 0},
|
||||
{ 3, s_2_3, 2, 1, 0},
|
||||
{ 3, s_2_4, 2, 1, 0},
|
||||
{ 4, s_2_5, 4, 1, 0},
|
||||
{ 3, s_2_6, -1, 1, 0},
|
||||
{ 3, s_2_7, -1, 1, 0},
|
||||
{ 4, s_2_8, 7, 1, 0},
|
||||
{ 4, s_2_9, 7, 1, 0},
|
||||
{ 7, s_2_10, 9, 1, 0}
|
||||
};
|
||||
|
||||
static const unsigned char g_v[] = { 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 0, 128 };
|
||||
@ -130,66 +130,66 @@ static const unsigned char g_s_ending[] = { 119, 125, 149, 1 };
|
||||
|
||||
static const symbol s_0[] = { 'e', 'r' };
|
||||
|
||||
static int r_mark_regions(struct SN_env * z) { /* forwardmode */
|
||||
z->I[0] = z->l; /* $p1 = <integer expression>, line 28 */
|
||||
{ int c_test1 = z->c; /* test, line 30 */
|
||||
{ int ret = skip_utf8(z->p, z->c, 0, z->l, + 3); /* hop, line 30 */
|
||||
static int r_mark_regions(struct SN_env * z) {
|
||||
z->I[1] = z->l;
|
||||
{ int c_test1 = z->c;
|
||||
{ int ret = skip_utf8(z->p, z->c, z->l, 3);
|
||||
if (ret < 0) return 0;
|
||||
z->c = ret;
|
||||
}
|
||||
z->I[1] = z->c; /* setmark x, line 30 */
|
||||
z->I[0] = z->c;
|
||||
z->c = c_test1;
|
||||
}
|
||||
if (out_grouping_U(z, g_v, 97, 248, 1) < 0) return 0; /* goto */ /* grouping v, line 31 */
|
||||
{ /* gopast */ /* non v, line 31 */
|
||||
if (out_grouping_U(z, g_v, 97, 248, 1) < 0) return 0;
|
||||
{
|
||||
int ret = in_grouping_U(z, g_v, 97, 248, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[0] = z->c; /* setmark p1, line 31 */
|
||||
/* try, line 32 */
|
||||
if (!(z->I[0] < z->I[1])) goto lab0; /* $(<integer expression> < <integer expression>), line 32 */
|
||||
z->I[0] = z->I[1]; /* $p1 = <integer expression>, line 32 */
|
||||
z->I[1] = z->c;
|
||||
|
||||
if (!(z->I[1] < z->I[0])) goto lab0;
|
||||
z->I[1] = z->I[0];
|
||||
lab0:
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_main_suffix(struct SN_env * z) { /* backwardmode */
|
||||
static int r_main_suffix(struct SN_env * z) {
|
||||
int among_var;
|
||||
|
||||
{ int mlimit1; /* setlimit, line 38 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 38 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1851426 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; } /* substring, line 38 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1851426 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; }
|
||||
among_var = find_among_b(z, a_0, 29);
|
||||
if (!(among_var)) { z->lb = mlimit1; return 0; }
|
||||
z->bra = z->c; /* ], line 38 */
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit1;
|
||||
}
|
||||
switch (among_var) { /* among, line 39 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 44 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int m2 = z->l - z->c; (void)m2; /* or, line 46 */
|
||||
if (in_grouping_b_U(z, g_s_ending, 98, 122, 0)) goto lab1; /* grouping s_ending, line 46 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
if (in_grouping_b_U(z, g_s_ending, 98, 122, 0)) goto lab1;
|
||||
goto lab0;
|
||||
lab1:
|
||||
z->c = z->l - m2;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'k') return 0; /* literal, line 46 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'k') return 0;
|
||||
z->c--;
|
||||
if (out_grouping_b_U(z, g_v, 97, 248, 0)) return 0; /* non v, line 46 */
|
||||
if (out_grouping_b_U(z, g_v, 97, 248, 0)) return 0;
|
||||
}
|
||||
lab0:
|
||||
{ int ret = slice_del(z); /* delete, line 46 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_from_s(z, 2, s_0); /* <-, line 48 */
|
||||
{ int ret = slice_from_s(z, 2, s_0);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -197,71 +197,71 @@ static int r_main_suffix(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_consonant_pair(struct SN_env * z) { /* backwardmode */
|
||||
{ int m_test1 = z->l - z->c; /* test, line 53 */
|
||||
static int r_consonant_pair(struct SN_env * z) {
|
||||
{ int m_test1 = z->l - z->c;
|
||||
|
||||
{ int mlimit2; /* setlimit, line 54 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit2 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 54 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] != 116) { z->lb = mlimit2; return 0; } /* substring, line 54 */
|
||||
{ int mlimit2;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit2 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] != 116) { z->lb = mlimit2; return 0; }
|
||||
if (!(find_among_b(z, a_1, 2))) { z->lb = mlimit2; return 0; }
|
||||
z->bra = z->c; /* ], line 54 */
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit2;
|
||||
}
|
||||
z->c = z->l - m_test1;
|
||||
}
|
||||
{ int ret = skip_utf8(z->p, z->c, z->lb, 0, -1);
|
||||
{ int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c = ret; /* next, line 59 */
|
||||
z->c = ret;
|
||||
}
|
||||
z->bra = z->c; /* ], line 59 */
|
||||
{ int ret = slice_del(z); /* delete, line 59 */
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_other_suffix(struct SN_env * z) { /* backwardmode */
|
||||
static int r_other_suffix(struct SN_env * z) {
|
||||
|
||||
{ int mlimit1; /* setlimit, line 63 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 63 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((4718720 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; } /* substring, line 63 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((4718720 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; }
|
||||
if (!(find_among_b(z, a_2, 11))) { z->lb = mlimit1; return 0; }
|
||||
z->bra = z->c; /* ], line 63 */
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit1;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 67 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern int norwegian_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
{ int c1 = z->c; /* do, line 74 */
|
||||
{ int ret = r_mark_regions(z); /* call mark_regions, line 74 */
|
||||
extern int norwegian_UTF_8_stem(struct SN_env * z) {
|
||||
{ int c1 = z->c;
|
||||
{ int ret = r_mark_regions(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = c1;
|
||||
}
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 75 */
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
{ int m2 = z->l - z->c; (void)m2; /* do, line 76 */
|
||||
{ int ret = r_main_suffix(z); /* call main_suffix, line 76 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
{ int ret = r_main_suffix(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m2;
|
||||
}
|
||||
{ int m3 = z->l - z->c; (void)m3; /* do, line 77 */
|
||||
{ int ret = r_consonant_pair(z); /* call consonant_pair, line 77 */
|
||||
{ int m3 = z->l - z->c; (void)m3;
|
||||
{ int ret = r_consonant_pair(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m3;
|
||||
}
|
||||
{ int m4 = z->l - z->c; (void)m4; /* do, line 78 */
|
||||
{ int ret = r_other_suffix(z); /* call other_suffix, line 78 */
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
{ int ret = r_other_suffix(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m4;
|
||||
@ -270,7 +270,7 @@ extern int norwegian_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern struct SN_env * norwegian_UTF_8_create_env(void) { return SN_create_env(0, 2, 0); }
|
||||
extern struct SN_env * norwegian_UTF_8_create_env(void) { return SN_create_env(0, 2); }
|
||||
|
||||
extern void norwegian_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#include "header.h"
|
||||
|
||||
@ -39,10 +39,10 @@ static const symbol s_0_3[2] = { 's', 's' };
|
||||
|
||||
static const struct among a_0[4] =
|
||||
{
|
||||
/* 0 */ { 1, s_0_0, -1, 3, 0},
|
||||
/* 1 */ { 3, s_0_1, 0, 2, 0},
|
||||
/* 2 */ { 4, s_0_2, 0, 1, 0},
|
||||
/* 3 */ { 2, s_0_3, 0, -1, 0}
|
||||
{ 1, s_0_0, -1, 3, 0},
|
||||
{ 3, s_0_1, 0, 2, 0},
|
||||
{ 4, s_0_2, 0, 1, 0},
|
||||
{ 2, s_0_3, 0, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_1_1[2] = { 'b', 'b' };
|
||||
@ -60,19 +60,19 @@ static const symbol s_1_12[2] = { 'i', 'z' };
|
||||
|
||||
static const struct among a_1[13] =
|
||||
{
|
||||
/* 0 */ { 0, 0, -1, 3, 0},
|
||||
/* 1 */ { 2, s_1_1, 0, 2, 0},
|
||||
/* 2 */ { 2, s_1_2, 0, 2, 0},
|
||||
/* 3 */ { 2, s_1_3, 0, 2, 0},
|
||||
/* 4 */ { 2, s_1_4, 0, 2, 0},
|
||||
/* 5 */ { 2, s_1_5, 0, 1, 0},
|
||||
/* 6 */ { 2, s_1_6, 0, 2, 0},
|
||||
/* 7 */ { 2, s_1_7, 0, 2, 0},
|
||||
/* 8 */ { 2, s_1_8, 0, 2, 0},
|
||||
/* 9 */ { 2, s_1_9, 0, 2, 0},
|
||||
/* 10 */ { 2, s_1_10, 0, 1, 0},
|
||||
/* 11 */ { 2, s_1_11, 0, 2, 0},
|
||||
/* 12 */ { 2, s_1_12, 0, 1, 0}
|
||||
{ 0, 0, -1, 3, 0},
|
||||
{ 2, s_1_1, 0, 2, 0},
|
||||
{ 2, s_1_2, 0, 2, 0},
|
||||
{ 2, s_1_3, 0, 2, 0},
|
||||
{ 2, s_1_4, 0, 2, 0},
|
||||
{ 2, s_1_5, 0, 1, 0},
|
||||
{ 2, s_1_6, 0, 2, 0},
|
||||
{ 2, s_1_7, 0, 2, 0},
|
||||
{ 2, s_1_8, 0, 2, 0},
|
||||
{ 2, s_1_9, 0, 2, 0},
|
||||
{ 2, s_1_10, 0, 1, 0},
|
||||
{ 2, s_1_11, 0, 2, 0},
|
||||
{ 2, s_1_12, 0, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_2_0[2] = { 'e', 'd' };
|
||||
@ -81,9 +81,9 @@ static const symbol s_2_2[3] = { 'i', 'n', 'g' };
|
||||
|
||||
static const struct among a_2[3] =
|
||||
{
|
||||
/* 0 */ { 2, s_2_0, -1, 2, 0},
|
||||
/* 1 */ { 3, s_2_1, 0, 1, 0},
|
||||
/* 2 */ { 3, s_2_2, -1, 2, 0}
|
||||
{ 2, s_2_0, -1, 2, 0},
|
||||
{ 3, s_2_1, 0, 1, 0},
|
||||
{ 3, s_2_2, -1, 2, 0}
|
||||
};
|
||||
|
||||
static const symbol s_3_0[4] = { 'a', 'n', 'c', 'i' };
|
||||
@ -109,26 +109,26 @@ static const symbol s_3_19[7] = { 'o', 'u', 's', 'n', 'e', 's', 's' };
|
||||
|
||||
static const struct among a_3[20] =
|
||||
{
|
||||
/* 0 */ { 4, s_3_0, -1, 3, 0},
|
||||
/* 1 */ { 4, s_3_1, -1, 2, 0},
|
||||
/* 2 */ { 4, s_3_2, -1, 4, 0},
|
||||
/* 3 */ { 3, s_3_3, -1, 6, 0},
|
||||
/* 4 */ { 4, s_3_4, -1, 9, 0},
|
||||
/* 5 */ { 5, s_3_5, -1, 11, 0},
|
||||
/* 6 */ { 5, s_3_6, -1, 5, 0},
|
||||
/* 7 */ { 5, s_3_7, -1, 9, 0},
|
||||
/* 8 */ { 6, s_3_8, -1, 13, 0},
|
||||
/* 9 */ { 5, s_3_9, -1, 12, 0},
|
||||
/* 10 */ { 6, s_3_10, -1, 1, 0},
|
||||
/* 11 */ { 7, s_3_11, 10, 8, 0},
|
||||
/* 12 */ { 5, s_3_12, -1, 9, 0},
|
||||
/* 13 */ { 5, s_3_13, -1, 8, 0},
|
||||
/* 14 */ { 7, s_3_14, 13, 7, 0},
|
||||
/* 15 */ { 4, s_3_15, -1, 7, 0},
|
||||
/* 16 */ { 4, s_3_16, -1, 8, 0},
|
||||
/* 17 */ { 7, s_3_17, -1, 12, 0},
|
||||
/* 18 */ { 7, s_3_18, -1, 10, 0},
|
||||
/* 19 */ { 7, s_3_19, -1, 11, 0}
|
||||
{ 4, s_3_0, -1, 3, 0},
|
||||
{ 4, s_3_1, -1, 2, 0},
|
||||
{ 4, s_3_2, -1, 4, 0},
|
||||
{ 3, s_3_3, -1, 6, 0},
|
||||
{ 4, s_3_4, -1, 9, 0},
|
||||
{ 5, s_3_5, -1, 11, 0},
|
||||
{ 5, s_3_6, -1, 5, 0},
|
||||
{ 5, s_3_7, -1, 9, 0},
|
||||
{ 6, s_3_8, -1, 13, 0},
|
||||
{ 5, s_3_9, -1, 12, 0},
|
||||
{ 6, s_3_10, -1, 1, 0},
|
||||
{ 7, s_3_11, 10, 8, 0},
|
||||
{ 5, s_3_12, -1, 9, 0},
|
||||
{ 5, s_3_13, -1, 8, 0},
|
||||
{ 7, s_3_14, 13, 7, 0},
|
||||
{ 4, s_3_15, -1, 7, 0},
|
||||
{ 4, s_3_16, -1, 8, 0},
|
||||
{ 7, s_3_17, -1, 12, 0},
|
||||
{ 7, s_3_18, -1, 10, 0},
|
||||
{ 7, s_3_19, -1, 11, 0}
|
||||
};
|
||||
|
||||
static const symbol s_4_0[5] = { 'i', 'c', 'a', 't', 'e' };
|
||||
@ -141,13 +141,13 @@ static const symbol s_4_6[4] = { 'n', 'e', 's', 's' };
|
||||
|
||||
static const struct among a_4[7] =
|
||||
{
|
||||
/* 0 */ { 5, s_4_0, -1, 2, 0},
|
||||
/* 1 */ { 5, s_4_1, -1, 3, 0},
|
||||
/* 2 */ { 5, s_4_2, -1, 1, 0},
|
||||
/* 3 */ { 5, s_4_3, -1, 2, 0},
|
||||
/* 4 */ { 4, s_4_4, -1, 2, 0},
|
||||
/* 5 */ { 3, s_4_5, -1, 3, 0},
|
||||
/* 6 */ { 4, s_4_6, -1, 3, 0}
|
||||
{ 5, s_4_0, -1, 2, 0},
|
||||
{ 5, s_4_1, -1, 3, 0},
|
||||
{ 5, s_4_2, -1, 1, 0},
|
||||
{ 5, s_4_3, -1, 2, 0},
|
||||
{ 4, s_4_4, -1, 2, 0},
|
||||
{ 3, s_4_5, -1, 3, 0},
|
||||
{ 4, s_4_6, -1, 3, 0}
|
||||
};
|
||||
|
||||
static const symbol s_5_0[2] = { 'i', 'c' };
|
||||
@ -172,25 +172,25 @@ static const symbol s_5_18[2] = { 'o', 'u' };
|
||||
|
||||
static const struct among a_5[19] =
|
||||
{
|
||||
/* 0 */ { 2, s_5_0, -1, 1, 0},
|
||||
/* 1 */ { 4, s_5_1, -1, 1, 0},
|
||||
/* 2 */ { 4, s_5_2, -1, 1, 0},
|
||||
/* 3 */ { 4, s_5_3, -1, 1, 0},
|
||||
/* 4 */ { 4, s_5_4, -1, 1, 0},
|
||||
/* 5 */ { 3, s_5_5, -1, 1, 0},
|
||||
/* 6 */ { 3, s_5_6, -1, 1, 0},
|
||||
/* 7 */ { 3, s_5_7, -1, 1, 0},
|
||||
/* 8 */ { 3, s_5_8, -1, 1, 0},
|
||||
/* 9 */ { 2, s_5_9, -1, 1, 0},
|
||||
/* 10 */ { 3, s_5_10, -1, 1, 0},
|
||||
/* 11 */ { 3, s_5_11, -1, 2, 0},
|
||||
/* 12 */ { 2, s_5_12, -1, 1, 0},
|
||||
/* 13 */ { 3, s_5_13, -1, 1, 0},
|
||||
/* 14 */ { 3, s_5_14, -1, 1, 0},
|
||||
/* 15 */ { 3, s_5_15, -1, 1, 0},
|
||||
/* 16 */ { 4, s_5_16, 15, 1, 0},
|
||||
/* 17 */ { 5, s_5_17, 16, 1, 0},
|
||||
/* 18 */ { 2, s_5_18, -1, 1, 0}
|
||||
{ 2, s_5_0, -1, 1, 0},
|
||||
{ 4, s_5_1, -1, 1, 0},
|
||||
{ 4, s_5_2, -1, 1, 0},
|
||||
{ 4, s_5_3, -1, 1, 0},
|
||||
{ 4, s_5_4, -1, 1, 0},
|
||||
{ 3, s_5_5, -1, 1, 0},
|
||||
{ 3, s_5_6, -1, 1, 0},
|
||||
{ 3, s_5_7, -1, 1, 0},
|
||||
{ 3, s_5_8, -1, 1, 0},
|
||||
{ 2, s_5_9, -1, 1, 0},
|
||||
{ 3, s_5_10, -1, 1, 0},
|
||||
{ 3, s_5_11, -1, 2, 0},
|
||||
{ 2, s_5_12, -1, 1, 0},
|
||||
{ 3, s_5_13, -1, 1, 0},
|
||||
{ 3, s_5_14, -1, 1, 0},
|
||||
{ 3, s_5_15, -1, 1, 0},
|
||||
{ 4, s_5_16, 15, 1, 0},
|
||||
{ 5, s_5_17, 16, 1, 0},
|
||||
{ 2, s_5_18, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const unsigned char g_v[] = { 17, 65, 16, 1 };
|
||||
@ -222,43 +222,43 @@ static const symbol s_21[] = { 'Y' };
|
||||
static const symbol s_22[] = { 'Y' };
|
||||
static const symbol s_23[] = { 'y' };
|
||||
|
||||
static int r_shortv(struct SN_env * z) { /* backwardmode */
|
||||
if (out_grouping_b_U(z, g_v_WXY, 89, 121, 0)) return 0; /* non v_WXY, line 19 */
|
||||
if (in_grouping_b_U(z, g_v, 97, 121, 0)) return 0; /* grouping v, line 19 */
|
||||
if (out_grouping_b_U(z, g_v, 97, 121, 0)) return 0; /* non v, line 19 */
|
||||
static int r_shortv(struct SN_env * z) {
|
||||
if (out_grouping_b_U(z, g_v_WXY, 89, 121, 0)) return 0;
|
||||
if (in_grouping_b_U(z, g_v, 97, 121, 0)) return 0;
|
||||
if (out_grouping_b_U(z, g_v, 97, 121, 0)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_R1(struct SN_env * z) { /* backwardmode */
|
||||
if (!(z->I[0] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 21 */
|
||||
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) { /* backwardmode */
|
||||
if (!(z->I[1] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 22 */
|
||||
static int r_R2(struct SN_env * z) {
|
||||
if (!(z->I[0] <= z->c)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_Step_1a(struct SN_env * z) { /* backwardmode */
|
||||
static int r_Step_1a(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 25 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 115) return 0; /* substring, line 25 */
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 115) return 0;
|
||||
among_var = find_among_b(z, a_0, 4);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 25 */
|
||||
switch (among_var) { /* among, line 25 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_from_s(z, 2, s_0); /* <-, line 26 */
|
||||
{ int ret = slice_from_s(z, 2, s_0);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 1, s_1); /* <-, line 27 */
|
||||
{ int ret = slice_from_s(z, 1, s_1);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_del(z); /* delete, line 29 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -266,72 +266,72 @@ static int r_Step_1a(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_Step_1b(struct SN_env * z) { /* backwardmode */
|
||||
static int r_Step_1b(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 34 */
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 100 && z->p[z->c - 1] != 103)) return 0; /* substring, line 34 */
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 100 && z->p[z->c - 1] != 103)) return 0;
|
||||
among_var = find_among_b(z, a_2, 3);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 34 */
|
||||
switch (among_var) { /* among, line 34 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = r_R1(z); /* call R1, line 35 */
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int ret = slice_from_s(z, 2, s_2); /* <-, line 35 */
|
||||
{ int ret = slice_from_s(z, 2, s_2);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int m_test1 = z->l - z->c; /* test, line 38 */
|
||||
{ /* gopast */ /* grouping v, line 38 */
|
||||
{ int m_test1 = z->l - z->c;
|
||||
{
|
||||
int ret = out_grouping_b_U(z, g_v, 97, 121, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c -= ret;
|
||||
}
|
||||
z->c = z->l - m_test1;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 38 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
{ int m_test2 = z->l - z->c; /* test, line 39 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((68514004 >> (z->p[z->c - 1] & 0x1f)) & 1)) among_var = 3; else /* substring, line 39 */
|
||||
{ int m_test2 = z->l - z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((68514004 >> (z->p[z->c - 1] & 0x1f)) & 1)) among_var = 3; else
|
||||
among_var = find_among_b(z, a_1, 13);
|
||||
if (!(among_var)) return 0;
|
||||
z->c = z->l - m_test2;
|
||||
}
|
||||
switch (among_var) { /* among, line 39 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret;
|
||||
{ int saved_c = z->c;
|
||||
ret = insert_s(z, z->c, z->c, 1, s_3); /* <+, line 41 */
|
||||
ret = insert_s(z, z->c, z->c, 1, s_3);
|
||||
z->c = saved_c;
|
||||
}
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
z->ket = z->c; /* [, line 44 */
|
||||
{ int ret = skip_utf8(z->p, z->c, z->lb, 0, -1);
|
||||
z->ket = z->c;
|
||||
{ int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c = ret; /* next, line 44 */
|
||||
z->c = ret;
|
||||
}
|
||||
z->bra = z->c; /* ], line 44 */
|
||||
{ int ret = slice_del(z); /* delete, line 44 */
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
if (z->c != z->I[0]) return 0; /* atmark, line 45 */
|
||||
{ int m_test3 = z->l - z->c; /* test, line 45 */
|
||||
{ int ret = r_shortv(z); /* call shortv, line 45 */
|
||||
if (z->c != z->I[1]) return 0;
|
||||
{ int m_test3 = z->l - z->c;
|
||||
{ int ret = r_shortv(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
z->c = z->l - m_test3;
|
||||
}
|
||||
{ int ret;
|
||||
{ int saved_c = z->c;
|
||||
ret = insert_s(z, z->c, z->c, 1, s_4); /* <+, line 45 */
|
||||
ret = insert_s(z, z->c, z->c, 1, s_4);
|
||||
z->c = saved_c;
|
||||
}
|
||||
if (ret < 0) return ret;
|
||||
@ -343,103 +343,103 @@ static int r_Step_1b(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_Step_1c(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 52 */
|
||||
{ int m1 = z->l - z->c; (void)m1; /* or, line 52 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'y') goto lab1; /* literal, line 52 */
|
||||
static int r_Step_1c(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
{ int m1 = z->l - z->c; (void)m1;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'y') goto lab1;
|
||||
z->c--;
|
||||
goto lab0;
|
||||
lab1:
|
||||
z->c = z->l - m1;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'Y') return 0; /* literal, line 52 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'Y') return 0;
|
||||
z->c--;
|
||||
}
|
||||
lab0:
|
||||
z->bra = z->c; /* ], line 52 */
|
||||
{ /* gopast */ /* grouping v, line 53 */
|
||||
z->bra = z->c;
|
||||
{
|
||||
int ret = out_grouping_b_U(z, g_v, 97, 121, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c -= ret;
|
||||
}
|
||||
{ int ret = slice_from_s(z, 1, s_5); /* <-, line 54 */
|
||||
{ int ret = slice_from_s(z, 1, s_5);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_Step_2(struct SN_env * z) { /* backwardmode */
|
||||
static int r_Step_2(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 58 */
|
||||
if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((815616 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 58 */
|
||||
z->ket = z->c;
|
||||
if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((815616 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
|
||||
among_var = find_among_b(z, a_3, 20);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 58 */
|
||||
{ int ret = r_R1(z); /* call R1, line 58 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
switch (among_var) { /* among, line 58 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_from_s(z, 4, s_6); /* <-, line 59 */
|
||||
{ int ret = slice_from_s(z, 4, s_6);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 4, s_7); /* <-, line 60 */
|
||||
{ int ret = slice_from_s(z, 4, s_7);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_from_s(z, 4, s_8); /* <-, line 61 */
|
||||
{ int ret = slice_from_s(z, 4, s_8);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
{ int ret = slice_from_s(z, 4, s_9); /* <-, line 62 */
|
||||
{ int ret = slice_from_s(z, 4, s_9);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
{ int ret = slice_from_s(z, 3, s_10); /* <-, line 63 */
|
||||
{ int ret = slice_from_s(z, 3, s_10);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 6:
|
||||
{ int ret = slice_from_s(z, 1, s_11); /* <-, line 64 */
|
||||
{ int ret = slice_from_s(z, 1, s_11);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 7:
|
||||
{ int ret = slice_from_s(z, 3, s_12); /* <-, line 66 */
|
||||
{ int ret = slice_from_s(z, 3, s_12);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 8:
|
||||
{ int ret = slice_from_s(z, 3, s_13); /* <-, line 68 */
|
||||
{ int ret = slice_from_s(z, 3, s_13);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 9:
|
||||
{ int ret = slice_from_s(z, 2, s_14); /* <-, line 69 */
|
||||
{ int ret = slice_from_s(z, 2, s_14);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 10:
|
||||
{ int ret = slice_from_s(z, 3, s_15); /* <-, line 72 */
|
||||
{ int ret = slice_from_s(z, 3, s_15);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 11:
|
||||
{ int ret = slice_from_s(z, 3, s_16); /* <-, line 74 */
|
||||
{ int ret = slice_from_s(z, 3, s_16);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 12:
|
||||
{ int ret = slice_from_s(z, 3, s_17); /* <-, line 76 */
|
||||
{ int ret = slice_from_s(z, 3, s_17);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 13:
|
||||
{ int ret = slice_from_s(z, 3, s_18); /* <-, line 77 */
|
||||
{ int ret = slice_from_s(z, 3, s_18);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -447,29 +447,29 @@ static int r_Step_2(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_Step_3(struct SN_env * z) { /* backwardmode */
|
||||
static int r_Step_3(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 82 */
|
||||
if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((528928 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 82 */
|
||||
z->ket = z->c;
|
||||
if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((528928 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
|
||||
among_var = find_among_b(z, a_4, 7);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 82 */
|
||||
{ int ret = r_R1(z); /* call R1, line 82 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
switch (among_var) { /* among, line 82 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_from_s(z, 2, s_19); /* <-, line 83 */
|
||||
{ int ret = slice_from_s(z, 2, s_19);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 2, s_20); /* <-, line 85 */
|
||||
{ int ret = slice_from_s(z, 2, s_20);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_del(z); /* delete, line 87 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -477,34 +477,34 @@ static int r_Step_3(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_Step_4(struct SN_env * z) { /* backwardmode */
|
||||
static int r_Step_4(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 92 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((3961384 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 92 */
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((3961384 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
|
||||
among_var = find_among_b(z, a_5, 19);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 92 */
|
||||
{ int ret = r_R2(z); /* call R2, line 92 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R2(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
switch (among_var) { /* among, line 92 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 95 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int m1 = z->l - z->c; (void)m1; /* or, line 96 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 's') goto lab1; /* literal, line 96 */
|
||||
{ int m1 = z->l - z->c; (void)m1;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 's') goto lab1;
|
||||
z->c--;
|
||||
goto lab0;
|
||||
lab1:
|
||||
z->c = z->l - m1;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 't') return 0; /* literal, line 96 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 't') return 0;
|
||||
z->c--;
|
||||
}
|
||||
lab0:
|
||||
{ int ret = slice_del(z); /* delete, line 96 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -512,24 +512,24 @@ static int r_Step_4(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_Step_5a(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 101 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') return 0; /* literal, line 101 */
|
||||
static int r_Step_5a(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'e') return 0;
|
||||
z->c--;
|
||||
z->bra = z->c; /* ], line 101 */
|
||||
{ int m1 = z->l - z->c; (void)m1; /* or, line 102 */
|
||||
{ int ret = r_R2(z); /* call R2, line 102 */
|
||||
z->bra = z->c;
|
||||
{ int m1 = z->l - z->c; (void)m1;
|
||||
{ int ret = r_R2(z);
|
||||
if (ret == 0) goto lab1;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
goto lab0;
|
||||
lab1:
|
||||
z->c = z->l - m1;
|
||||
{ int ret = r_R1(z); /* call R1, line 102 */
|
||||
{ int ret = r_R1(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int m2 = z->l - z->c; (void)m2; /* not, line 102 */
|
||||
{ int ret = r_shortv(z); /* call shortv, line 102 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
{ int ret = r_shortv(z);
|
||||
if (ret == 0) goto lab2;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
@ -539,66 +539,65 @@ static int r_Step_5a(struct SN_env * z) { /* backwardmode */
|
||||
}
|
||||
}
|
||||
lab0:
|
||||
{ int ret = slice_del(z); /* delete, line 103 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_Step_5b(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 107 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'l') return 0; /* literal, line 107 */
|
||||
static int r_Step_5b(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'l') return 0;
|
||||
z->c--;
|
||||
z->bra = z->c; /* ], line 107 */
|
||||
{ int ret = r_R2(z); /* call R2, line 108 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R2(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'l') return 0; /* literal, line 108 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] != 'l') return 0;
|
||||
z->c--;
|
||||
{ int ret = slice_del(z); /* delete, line 109 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern int porter_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
z->B[0] = 0; /* unset Y_found, line 115 */
|
||||
{ int c1 = z->c; /* do, line 116 */
|
||||
z->bra = z->c; /* [, line 116 */
|
||||
if (z->c == z->l || z->p[z->c] != 'y') goto lab0; /* literal, line 116 */
|
||||
extern int porter_UTF_8_stem(struct SN_env * z) {
|
||||
z->I[2] = 0;
|
||||
{ int c1 = z->c;
|
||||
z->bra = z->c;
|
||||
if (z->c == z->l || z->p[z->c] != 'y') goto lab0;
|
||||
z->c++;
|
||||
z->ket = z->c; /* ], line 116 */
|
||||
{ int ret = slice_from_s(z, 1, s_21); /* <-, line 116 */
|
||||
z->ket = z->c;
|
||||
{ int ret = slice_from_s(z, 1, s_21);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->B[0] = 1; /* set Y_found, line 116 */
|
||||
z->I[2] = 1;
|
||||
lab0:
|
||||
z->c = c1;
|
||||
}
|
||||
{ int c2 = z->c; /* do, line 117 */
|
||||
/* repeat, line 117 */
|
||||
|
||||
while(1) { int c3 = z->c;
|
||||
while(1) { /* goto, line 117 */
|
||||
{ int c2 = z->c;
|
||||
while(1) {
|
||||
int c3 = z->c;
|
||||
while(1) {
|
||||
int c4 = z->c;
|
||||
if (in_grouping_U(z, g_v, 97, 121, 0)) goto lab3; /* grouping v, line 117 */
|
||||
z->bra = z->c; /* [, line 117 */
|
||||
if (z->c == z->l || z->p[z->c] != 'y') goto lab3; /* literal, line 117 */
|
||||
if (in_grouping_U(z, g_v, 97, 121, 0)) goto lab3;
|
||||
z->bra = z->c;
|
||||
if (z->c == z->l || z->p[z->c] != 'y') goto lab3;
|
||||
z->c++;
|
||||
z->ket = z->c; /* ], line 117 */
|
||||
z->ket = z->c;
|
||||
z->c = c4;
|
||||
break;
|
||||
lab3:
|
||||
z->c = c4;
|
||||
{ int ret = skip_utf8(z->p, z->c, 0, z->l, 1);
|
||||
{ int ret = skip_utf8(z->p, z->c, z->l, 1);
|
||||
if (ret < 0) goto lab2;
|
||||
z->c = ret; /* goto, line 117 */
|
||||
z->c = ret;
|
||||
}
|
||||
}
|
||||
{ int ret = slice_from_s(z, 1, s_22); /* <-, line 117 */
|
||||
{ int ret = slice_from_s(z, 1, s_22);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->B[0] = 1; /* set Y_found, line 117 */
|
||||
z->I[2] = 1;
|
||||
continue;
|
||||
lab2:
|
||||
z->c = c3;
|
||||
@ -606,106 +605,105 @@ extern int porter_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
}
|
||||
z->c = c2;
|
||||
}
|
||||
z->I[0] = z->l; /* $p1 = <integer expression>, line 119 */
|
||||
z->I[1] = z->l; /* $p2 = <integer expression>, line 120 */
|
||||
{ int c5 = z->c; /* do, line 121 */
|
||||
{ /* gopast */ /* grouping v, line 122 */
|
||||
z->I[1] = z->l;
|
||||
z->I[0] = z->l;
|
||||
{ int c5 = z->c;
|
||||
{
|
||||
int ret = out_grouping_U(z, g_v, 97, 121, 1);
|
||||
if (ret < 0) goto lab4;
|
||||
z->c += ret;
|
||||
}
|
||||
{ /* gopast */ /* non v, line 122 */
|
||||
{
|
||||
int ret = in_grouping_U(z, g_v, 97, 121, 1);
|
||||
if (ret < 0) goto lab4;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[0] = z->c; /* setmark p1, line 122 */
|
||||
{ /* gopast */ /* grouping v, line 123 */
|
||||
z->I[1] = z->c;
|
||||
{
|
||||
int ret = out_grouping_U(z, g_v, 97, 121, 1);
|
||||
if (ret < 0) goto lab4;
|
||||
z->c += ret;
|
||||
}
|
||||
{ /* gopast */ /* non v, line 123 */
|
||||
{
|
||||
int ret = in_grouping_U(z, g_v, 97, 121, 1);
|
||||
if (ret < 0) goto lab4;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[1] = z->c; /* setmark p2, line 123 */
|
||||
z->I[0] = z->c;
|
||||
lab4:
|
||||
z->c = c5;
|
||||
}
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 126 */
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
{ int m6 = z->l - z->c; (void)m6; /* do, line 127 */
|
||||
{ int ret = r_Step_1a(z); /* call Step_1a, line 127 */
|
||||
{ int m6 = z->l - z->c; (void)m6;
|
||||
{ int ret = r_Step_1a(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m6;
|
||||
}
|
||||
{ int m7 = z->l - z->c; (void)m7; /* do, line 128 */
|
||||
{ int ret = r_Step_1b(z); /* call Step_1b, line 128 */
|
||||
{ int m7 = z->l - z->c; (void)m7;
|
||||
{ int ret = r_Step_1b(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m7;
|
||||
}
|
||||
{ int m8 = z->l - z->c; (void)m8; /* do, line 129 */
|
||||
{ int ret = r_Step_1c(z); /* call Step_1c, line 129 */
|
||||
{ int m8 = z->l - z->c; (void)m8;
|
||||
{ int ret = r_Step_1c(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m8;
|
||||
}
|
||||
{ int m9 = z->l - z->c; (void)m9; /* do, line 130 */
|
||||
{ int ret = r_Step_2(z); /* call Step_2, line 130 */
|
||||
{ int m9 = z->l - z->c; (void)m9;
|
||||
{ int ret = r_Step_2(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m9;
|
||||
}
|
||||
{ int m10 = z->l - z->c; (void)m10; /* do, line 131 */
|
||||
{ int ret = r_Step_3(z); /* call Step_3, line 131 */
|
||||
{ int m10 = z->l - z->c; (void)m10;
|
||||
{ int ret = r_Step_3(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m10;
|
||||
}
|
||||
{ int m11 = z->l - z->c; (void)m11; /* do, line 132 */
|
||||
{ int ret = r_Step_4(z); /* call Step_4, line 132 */
|
||||
{ int m11 = z->l - z->c; (void)m11;
|
||||
{ int ret = r_Step_4(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m11;
|
||||
}
|
||||
{ int m12 = z->l - z->c; (void)m12; /* do, line 133 */
|
||||
{ int ret = r_Step_5a(z); /* call Step_5a, line 133 */
|
||||
{ int m12 = z->l - z->c; (void)m12;
|
||||
{ int ret = r_Step_5a(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m12;
|
||||
}
|
||||
{ int m13 = z->l - z->c; (void)m13; /* do, line 134 */
|
||||
{ int ret = r_Step_5b(z); /* call Step_5b, line 134 */
|
||||
{ int m13 = z->l - z->c; (void)m13;
|
||||
{ int ret = r_Step_5b(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m13;
|
||||
}
|
||||
z->c = z->lb;
|
||||
{ int c14 = z->c; /* do, line 137 */
|
||||
if (!(z->B[0])) goto lab5; /* Boolean test Y_found, line 137 */
|
||||
/* repeat, line 137 */
|
||||
|
||||
while(1) { int c15 = z->c;
|
||||
while(1) { /* goto, line 137 */
|
||||
{ int c14 = z->c;
|
||||
if (!(z->I[2])) goto lab5;
|
||||
while(1) {
|
||||
int c15 = z->c;
|
||||
while(1) {
|
||||
int c16 = z->c;
|
||||
z->bra = z->c; /* [, line 137 */
|
||||
if (z->c == z->l || z->p[z->c] != 'Y') goto lab7; /* literal, line 137 */
|
||||
z->bra = z->c;
|
||||
if (z->c == z->l || z->p[z->c] != 'Y') goto lab7;
|
||||
z->c++;
|
||||
z->ket = z->c; /* ], line 137 */
|
||||
z->ket = z->c;
|
||||
z->c = c16;
|
||||
break;
|
||||
lab7:
|
||||
z->c = c16;
|
||||
{ int ret = skip_utf8(z->p, z->c, 0, z->l, 1);
|
||||
{ int ret = skip_utf8(z->p, z->c, z->l, 1);
|
||||
if (ret < 0) goto lab6;
|
||||
z->c = ret; /* goto, line 137 */
|
||||
z->c = ret;
|
||||
}
|
||||
}
|
||||
{ int ret = slice_from_s(z, 1, s_23); /* <-, line 137 */
|
||||
{ int ret = slice_from_s(z, 1, s_23);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
continue;
|
||||
@ -719,7 +717,7 @@ extern int porter_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern struct SN_env * porter_UTF_8_create_env(void) { return SN_create_env(0, 2, 1); }
|
||||
extern struct SN_env * porter_UTF_8_create_env(void) { return SN_create_env(0, 3); }
|
||||
|
||||
extern void porter_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#include "header.h"
|
||||
|
||||
@ -43,15 +43,15 @@ static const symbol s_0_8[8] = { 0xD0, 0xB8, 0xD0, 0xB2, 0xD1, 0x88, 0xD0, 0xB8
|
||||
|
||||
static const struct among a_0[9] =
|
||||
{
|
||||
/* 0 */ { 10, s_0_0, -1, 1, 0},
|
||||
/* 1 */ { 12, s_0_1, 0, 2, 0},
|
||||
/* 2 */ { 12, s_0_2, 0, 2, 0},
|
||||
/* 3 */ { 2, s_0_3, -1, 1, 0},
|
||||
/* 4 */ { 4, s_0_4, 3, 2, 0},
|
||||
/* 5 */ { 4, s_0_5, 3, 2, 0},
|
||||
/* 6 */ { 6, s_0_6, -1, 1, 0},
|
||||
/* 7 */ { 8, s_0_7, 6, 2, 0},
|
||||
/* 8 */ { 8, s_0_8, 6, 2, 0}
|
||||
{ 10, s_0_0, -1, 1, 0},
|
||||
{ 12, s_0_1, 0, 2, 0},
|
||||
{ 12, s_0_2, 0, 2, 0},
|
||||
{ 2, s_0_3, -1, 1, 0},
|
||||
{ 4, s_0_4, 3, 2, 0},
|
||||
{ 4, s_0_5, 3, 2, 0},
|
||||
{ 6, s_0_6, -1, 1, 0},
|
||||
{ 8, s_0_7, 6, 2, 0},
|
||||
{ 8, s_0_8, 6, 2, 0}
|
||||
};
|
||||
|
||||
static const symbol s_1_0[6] = { 0xD0, 0xB5, 0xD0, 0xBC, 0xD1, 0x83 };
|
||||
@ -83,32 +83,32 @@ static const symbol s_1_25[6] = { 0xD0, 0xBE, 0xD0, 0xB3, 0xD0, 0xBE };
|
||||
|
||||
static const struct among a_1[26] =
|
||||
{
|
||||
/* 0 */ { 6, s_1_0, -1, 1, 0},
|
||||
/* 1 */ { 6, s_1_1, -1, 1, 0},
|
||||
/* 2 */ { 4, s_1_2, -1, 1, 0},
|
||||
/* 3 */ { 4, s_1_3, -1, 1, 0},
|
||||
/* 4 */ { 4, s_1_4, -1, 1, 0},
|
||||
/* 5 */ { 4, s_1_5, -1, 1, 0},
|
||||
/* 6 */ { 4, s_1_6, -1, 1, 0},
|
||||
/* 7 */ { 4, s_1_7, -1, 1, 0},
|
||||
/* 8 */ { 4, s_1_8, -1, 1, 0},
|
||||
/* 9 */ { 4, s_1_9, -1, 1, 0},
|
||||
/* 10 */ { 4, s_1_10, -1, 1, 0},
|
||||
/* 11 */ { 4, s_1_11, -1, 1, 0},
|
||||
/* 12 */ { 4, s_1_12, -1, 1, 0},
|
||||
/* 13 */ { 4, s_1_13, -1, 1, 0},
|
||||
/* 14 */ { 6, s_1_14, -1, 1, 0},
|
||||
/* 15 */ { 6, s_1_15, -1, 1, 0},
|
||||
/* 16 */ { 4, s_1_16, -1, 1, 0},
|
||||
/* 17 */ { 4, s_1_17, -1, 1, 0},
|
||||
/* 18 */ { 4, s_1_18, -1, 1, 0},
|
||||
/* 19 */ { 4, s_1_19, -1, 1, 0},
|
||||
/* 20 */ { 4, s_1_20, -1, 1, 0},
|
||||
/* 21 */ { 4, s_1_21, -1, 1, 0},
|
||||
/* 22 */ { 4, s_1_22, -1, 1, 0},
|
||||
/* 23 */ { 4, s_1_23, -1, 1, 0},
|
||||
/* 24 */ { 6, s_1_24, -1, 1, 0},
|
||||
/* 25 */ { 6, s_1_25, -1, 1, 0}
|
||||
{ 6, s_1_0, -1, 1, 0},
|
||||
{ 6, s_1_1, -1, 1, 0},
|
||||
{ 4, s_1_2, -1, 1, 0},
|
||||
{ 4, s_1_3, -1, 1, 0},
|
||||
{ 4, s_1_4, -1, 1, 0},
|
||||
{ 4, s_1_5, -1, 1, 0},
|
||||
{ 4, s_1_6, -1, 1, 0},
|
||||
{ 4, s_1_7, -1, 1, 0},
|
||||
{ 4, s_1_8, -1, 1, 0},
|
||||
{ 4, s_1_9, -1, 1, 0},
|
||||
{ 4, s_1_10, -1, 1, 0},
|
||||
{ 4, s_1_11, -1, 1, 0},
|
||||
{ 4, s_1_12, -1, 1, 0},
|
||||
{ 4, s_1_13, -1, 1, 0},
|
||||
{ 6, s_1_14, -1, 1, 0},
|
||||
{ 6, s_1_15, -1, 1, 0},
|
||||
{ 4, s_1_16, -1, 1, 0},
|
||||
{ 4, s_1_17, -1, 1, 0},
|
||||
{ 4, s_1_18, -1, 1, 0},
|
||||
{ 4, s_1_19, -1, 1, 0},
|
||||
{ 4, s_1_20, -1, 1, 0},
|
||||
{ 4, s_1_21, -1, 1, 0},
|
||||
{ 4, s_1_22, -1, 1, 0},
|
||||
{ 4, s_1_23, -1, 1, 0},
|
||||
{ 6, s_1_24, -1, 1, 0},
|
||||
{ 6, s_1_25, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_2_0[4] = { 0xD0, 0xB2, 0xD1, 0x88 };
|
||||
@ -122,14 +122,14 @@ static const symbol s_2_7[4] = { 0xD0, 0xBD, 0xD0, 0xBD };
|
||||
|
||||
static const struct among a_2[8] =
|
||||
{
|
||||
/* 0 */ { 4, s_2_0, -1, 1, 0},
|
||||
/* 1 */ { 6, s_2_1, 0, 2, 0},
|
||||
/* 2 */ { 6, s_2_2, 0, 2, 0},
|
||||
/* 3 */ { 2, s_2_3, -1, 1, 0},
|
||||
/* 4 */ { 4, s_2_4, 3, 1, 0},
|
||||
/* 5 */ { 6, s_2_5, 4, 2, 0},
|
||||
/* 6 */ { 4, s_2_6, -1, 1, 0},
|
||||
/* 7 */ { 4, s_2_7, -1, 1, 0}
|
||||
{ 4, s_2_0, -1, 1, 0},
|
||||
{ 6, s_2_1, 0, 2, 0},
|
||||
{ 6, s_2_2, 0, 2, 0},
|
||||
{ 2, s_2_3, -1, 1, 0},
|
||||
{ 4, s_2_4, 3, 1, 0},
|
||||
{ 6, s_2_5, 4, 2, 0},
|
||||
{ 4, s_2_6, -1, 1, 0},
|
||||
{ 4, s_2_7, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_3_0[4] = { 0xD1, 0x81, 0xD1, 0x8C };
|
||||
@ -137,8 +137,8 @@ static const symbol s_3_1[4] = { 0xD1, 0x81, 0xD1, 0x8F };
|
||||
|
||||
static const struct among a_3[2] =
|
||||
{
|
||||
/* 0 */ { 4, s_3_0, -1, 1, 0},
|
||||
/* 1 */ { 4, s_3_1, -1, 1, 0}
|
||||
{ 4, s_3_0, -1, 1, 0},
|
||||
{ 4, s_3_1, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_4_0[4] = { 0xD1, 0x8B, 0xD1, 0x82 };
|
||||
@ -190,52 +190,52 @@ static const symbol s_4_45[6] = { 0xD0, 0xBD, 0xD0, 0xBD, 0xD0, 0xBE };
|
||||
|
||||
static const struct among a_4[46] =
|
||||
{
|
||||
/* 0 */ { 4, s_4_0, -1, 2, 0},
|
||||
/* 1 */ { 4, s_4_1, -1, 1, 0},
|
||||
/* 2 */ { 6, s_4_2, 1, 2, 0},
|
||||
/* 3 */ { 4, s_4_3, -1, 2, 0},
|
||||
/* 4 */ { 4, s_4_4, -1, 1, 0},
|
||||
/* 5 */ { 6, s_4_5, 4, 2, 0},
|
||||
/* 6 */ { 4, s_4_6, -1, 2, 0},
|
||||
/* 7 */ { 4, s_4_7, -1, 1, 0},
|
||||
/* 8 */ { 6, s_4_8, 7, 2, 0},
|
||||
/* 9 */ { 4, s_4_9, -1, 1, 0},
|
||||
/* 10 */ { 6, s_4_10, 9, 2, 0},
|
||||
/* 11 */ { 6, s_4_11, 9, 2, 0},
|
||||
/* 12 */ { 6, s_4_12, -1, 1, 0},
|
||||
/* 13 */ { 6, s_4_13, -1, 2, 0},
|
||||
/* 14 */ { 2, s_4_14, -1, 2, 0},
|
||||
/* 15 */ { 4, s_4_15, 14, 2, 0},
|
||||
/* 16 */ { 4, s_4_16, -1, 1, 0},
|
||||
/* 17 */ { 6, s_4_17, 16, 2, 0},
|
||||
/* 18 */ { 6, s_4_18, 16, 2, 0},
|
||||
/* 19 */ { 4, s_4_19, -1, 1, 0},
|
||||
/* 20 */ { 6, s_4_20, 19, 2, 0},
|
||||
/* 21 */ { 6, s_4_21, -1, 1, 0},
|
||||
/* 22 */ { 6, s_4_22, -1, 2, 0},
|
||||
/* 23 */ { 6, s_4_23, -1, 1, 0},
|
||||
/* 24 */ { 8, s_4_24, 23, 2, 0},
|
||||
/* 25 */ { 8, s_4_25, 23, 2, 0},
|
||||
/* 26 */ { 4, s_4_26, -1, 1, 0},
|
||||
/* 27 */ { 6, s_4_27, 26, 2, 0},
|
||||
/* 28 */ { 6, s_4_28, 26, 2, 0},
|
||||
/* 29 */ { 2, s_4_29, -1, 1, 0},
|
||||
/* 30 */ { 4, s_4_30, 29, 2, 0},
|
||||
/* 31 */ { 4, s_4_31, 29, 2, 0},
|
||||
/* 32 */ { 2, s_4_32, -1, 1, 0},
|
||||
/* 33 */ { 4, s_4_33, 32, 2, 0},
|
||||
/* 34 */ { 4, s_4_34, 32, 2, 0},
|
||||
/* 35 */ { 4, s_4_35, -1, 2, 0},
|
||||
/* 36 */ { 4, s_4_36, -1, 1, 0},
|
||||
/* 37 */ { 4, s_4_37, -1, 2, 0},
|
||||
/* 38 */ { 2, s_4_38, -1, 1, 0},
|
||||
/* 39 */ { 4, s_4_39, 38, 2, 0},
|
||||
/* 40 */ { 4, s_4_40, -1, 1, 0},
|
||||
/* 41 */ { 6, s_4_41, 40, 2, 0},
|
||||
/* 42 */ { 6, s_4_42, 40, 2, 0},
|
||||
/* 43 */ { 4, s_4_43, -1, 1, 0},
|
||||
/* 44 */ { 6, s_4_44, 43, 2, 0},
|
||||
/* 45 */ { 6, s_4_45, 43, 1, 0}
|
||||
{ 4, s_4_0, -1, 2, 0},
|
||||
{ 4, s_4_1, -1, 1, 0},
|
||||
{ 6, s_4_2, 1, 2, 0},
|
||||
{ 4, s_4_3, -1, 2, 0},
|
||||
{ 4, s_4_4, -1, 1, 0},
|
||||
{ 6, s_4_5, 4, 2, 0},
|
||||
{ 4, s_4_6, -1, 2, 0},
|
||||
{ 4, s_4_7, -1, 1, 0},
|
||||
{ 6, s_4_8, 7, 2, 0},
|
||||
{ 4, s_4_9, -1, 1, 0},
|
||||
{ 6, s_4_10, 9, 2, 0},
|
||||
{ 6, s_4_11, 9, 2, 0},
|
||||
{ 6, s_4_12, -1, 1, 0},
|
||||
{ 6, s_4_13, -1, 2, 0},
|
||||
{ 2, s_4_14, -1, 2, 0},
|
||||
{ 4, s_4_15, 14, 2, 0},
|
||||
{ 4, s_4_16, -1, 1, 0},
|
||||
{ 6, s_4_17, 16, 2, 0},
|
||||
{ 6, s_4_18, 16, 2, 0},
|
||||
{ 4, s_4_19, -1, 1, 0},
|
||||
{ 6, s_4_20, 19, 2, 0},
|
||||
{ 6, s_4_21, -1, 1, 0},
|
||||
{ 6, s_4_22, -1, 2, 0},
|
||||
{ 6, s_4_23, -1, 1, 0},
|
||||
{ 8, s_4_24, 23, 2, 0},
|
||||
{ 8, s_4_25, 23, 2, 0},
|
||||
{ 4, s_4_26, -1, 1, 0},
|
||||
{ 6, s_4_27, 26, 2, 0},
|
||||
{ 6, s_4_28, 26, 2, 0},
|
||||
{ 2, s_4_29, -1, 1, 0},
|
||||
{ 4, s_4_30, 29, 2, 0},
|
||||
{ 4, s_4_31, 29, 2, 0},
|
||||
{ 2, s_4_32, -1, 1, 0},
|
||||
{ 4, s_4_33, 32, 2, 0},
|
||||
{ 4, s_4_34, 32, 2, 0},
|
||||
{ 4, s_4_35, -1, 2, 0},
|
||||
{ 4, s_4_36, -1, 1, 0},
|
||||
{ 4, s_4_37, -1, 2, 0},
|
||||
{ 2, s_4_38, -1, 1, 0},
|
||||
{ 4, s_4_39, 38, 2, 0},
|
||||
{ 4, s_4_40, -1, 1, 0},
|
||||
{ 6, s_4_41, 40, 2, 0},
|
||||
{ 6, s_4_42, 40, 2, 0},
|
||||
{ 4, s_4_43, -1, 1, 0},
|
||||
{ 6, s_4_44, 43, 2, 0},
|
||||
{ 6, s_4_45, 43, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_5_0[2] = { 0xD1, 0x83 };
|
||||
@ -277,42 +277,42 @@ static const symbol s_5_35[2] = { 0xD0, 0xBE };
|
||||
|
||||
static const struct among a_5[36] =
|
||||
{
|
||||
/* 0 */ { 2, s_5_0, -1, 1, 0},
|
||||
/* 1 */ { 4, s_5_1, -1, 1, 0},
|
||||
/* 2 */ { 6, s_5_2, 1, 1, 0},
|
||||
/* 3 */ { 4, s_5_3, -1, 1, 0},
|
||||
/* 4 */ { 2, s_5_4, -1, 1, 0},
|
||||
/* 5 */ { 2, s_5_5, -1, 1, 0},
|
||||
/* 6 */ { 2, s_5_6, -1, 1, 0},
|
||||
/* 7 */ { 4, s_5_7, 6, 1, 0},
|
||||
/* 8 */ { 4, s_5_8, 6, 1, 0},
|
||||
/* 9 */ { 2, s_5_9, -1, 1, 0},
|
||||
/* 10 */ { 4, s_5_10, 9, 1, 0},
|
||||
/* 11 */ { 4, s_5_11, 9, 1, 0},
|
||||
/* 12 */ { 2, s_5_12, -1, 1, 0},
|
||||
/* 13 */ { 4, s_5_13, -1, 1, 0},
|
||||
/* 14 */ { 4, s_5_14, -1, 1, 0},
|
||||
/* 15 */ { 2, s_5_15, -1, 1, 0},
|
||||
/* 16 */ { 4, s_5_16, 15, 1, 0},
|
||||
/* 17 */ { 4, s_5_17, 15, 1, 0},
|
||||
/* 18 */ { 2, s_5_18, -1, 1, 0},
|
||||
/* 19 */ { 4, s_5_19, 18, 1, 0},
|
||||
/* 20 */ { 4, s_5_20, 18, 1, 0},
|
||||
/* 21 */ { 6, s_5_21, 18, 1, 0},
|
||||
/* 22 */ { 8, s_5_22, 21, 1, 0},
|
||||
/* 23 */ { 6, s_5_23, 18, 1, 0},
|
||||
/* 24 */ { 2, s_5_24, -1, 1, 0},
|
||||
/* 25 */ { 4, s_5_25, 24, 1, 0},
|
||||
/* 26 */ { 6, s_5_26, 25, 1, 0},
|
||||
/* 27 */ { 4, s_5_27, 24, 1, 0},
|
||||
/* 28 */ { 4, s_5_28, 24, 1, 0},
|
||||
/* 29 */ { 4, s_5_29, -1, 1, 0},
|
||||
/* 30 */ { 6, s_5_30, 29, 1, 0},
|
||||
/* 31 */ { 4, s_5_31, -1, 1, 0},
|
||||
/* 32 */ { 4, s_5_32, -1, 1, 0},
|
||||
/* 33 */ { 6, s_5_33, 32, 1, 0},
|
||||
/* 34 */ { 4, s_5_34, -1, 1, 0},
|
||||
/* 35 */ { 2, s_5_35, -1, 1, 0}
|
||||
{ 2, s_5_0, -1, 1, 0},
|
||||
{ 4, s_5_1, -1, 1, 0},
|
||||
{ 6, s_5_2, 1, 1, 0},
|
||||
{ 4, s_5_3, -1, 1, 0},
|
||||
{ 2, s_5_4, -1, 1, 0},
|
||||
{ 2, s_5_5, -1, 1, 0},
|
||||
{ 2, s_5_6, -1, 1, 0},
|
||||
{ 4, s_5_7, 6, 1, 0},
|
||||
{ 4, s_5_8, 6, 1, 0},
|
||||
{ 2, s_5_9, -1, 1, 0},
|
||||
{ 4, s_5_10, 9, 1, 0},
|
||||
{ 4, s_5_11, 9, 1, 0},
|
||||
{ 2, s_5_12, -1, 1, 0},
|
||||
{ 4, s_5_13, -1, 1, 0},
|
||||
{ 4, s_5_14, -1, 1, 0},
|
||||
{ 2, s_5_15, -1, 1, 0},
|
||||
{ 4, s_5_16, 15, 1, 0},
|
||||
{ 4, s_5_17, 15, 1, 0},
|
||||
{ 2, s_5_18, -1, 1, 0},
|
||||
{ 4, s_5_19, 18, 1, 0},
|
||||
{ 4, s_5_20, 18, 1, 0},
|
||||
{ 6, s_5_21, 18, 1, 0},
|
||||
{ 8, s_5_22, 21, 1, 0},
|
||||
{ 6, s_5_23, 18, 1, 0},
|
||||
{ 2, s_5_24, -1, 1, 0},
|
||||
{ 4, s_5_25, 24, 1, 0},
|
||||
{ 6, s_5_26, 25, 1, 0},
|
||||
{ 4, s_5_27, 24, 1, 0},
|
||||
{ 4, s_5_28, 24, 1, 0},
|
||||
{ 4, s_5_29, -1, 1, 0},
|
||||
{ 6, s_5_30, 29, 1, 0},
|
||||
{ 4, s_5_31, -1, 1, 0},
|
||||
{ 4, s_5_32, -1, 1, 0},
|
||||
{ 6, s_5_33, 32, 1, 0},
|
||||
{ 4, s_5_34, -1, 1, 0},
|
||||
{ 2, s_5_35, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_6_0[6] = { 0xD0, 0xBE, 0xD1, 0x81, 0xD1, 0x82 };
|
||||
@ -320,8 +320,8 @@ static const symbol s_6_1[8] = { 0xD0, 0xBE, 0xD1, 0x81, 0xD1, 0x82, 0xD1, 0x8C
|
||||
|
||||
static const struct among a_6[2] =
|
||||
{
|
||||
/* 0 */ { 6, s_6_0, -1, 1, 0},
|
||||
/* 1 */ { 8, s_6_1, -1, 1, 0}
|
||||
{ 6, s_6_0, -1, 1, 0},
|
||||
{ 8, s_6_1, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_7_0[6] = { 0xD0, 0xB5, 0xD0, 0xB9, 0xD1, 0x88 };
|
||||
@ -331,10 +331,10 @@ static const symbol s_7_3[2] = { 0xD0, 0xBD };
|
||||
|
||||
static const struct among a_7[4] =
|
||||
{
|
||||
/* 0 */ { 6, s_7_0, -1, 1, 0},
|
||||
/* 1 */ { 2, s_7_1, -1, 3, 0},
|
||||
/* 2 */ { 8, s_7_2, -1, 1, 0},
|
||||
/* 3 */ { 2, s_7_3, -1, 2, 0}
|
||||
{ 6, s_7_0, -1, 1, 0},
|
||||
{ 2, s_7_1, -1, 3, 0},
|
||||
{ 8, s_7_2, -1, 1, 0},
|
||||
{ 2, s_7_3, -1, 2, 0}
|
||||
};
|
||||
|
||||
static const unsigned char g_v[] = { 33, 65, 8, 232 };
|
||||
@ -352,65 +352,65 @@ static const symbol s_9[] = { 0xD1, 0x91 };
|
||||
static const symbol s_10[] = { 0xD0, 0xB5 };
|
||||
static const symbol s_11[] = { 0xD0, 0xB8 };
|
||||
|
||||
static int r_mark_regions(struct SN_env * z) { /* forwardmode */
|
||||
z->I[0] = z->l; /* $pV = <integer expression>, line 61 */
|
||||
z->I[1] = z->l; /* $p2 = <integer expression>, line 62 */
|
||||
{ int c1 = z->c; /* do, line 63 */
|
||||
{ /* gopast */ /* grouping v, line 64 */
|
||||
static int r_mark_regions(struct SN_env * z) {
|
||||
z->I[1] = z->l;
|
||||
z->I[0] = z->l;
|
||||
{ int c1 = z->c;
|
||||
{
|
||||
int ret = out_grouping_U(z, g_v, 1072, 1103, 1);
|
||||
if (ret < 0) goto lab0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[0] = z->c; /* setmark pV, line 64 */
|
||||
{ /* gopast */ /* non v, line 64 */
|
||||
z->I[1] = z->c;
|
||||
{
|
||||
int ret = in_grouping_U(z, g_v, 1072, 1103, 1);
|
||||
if (ret < 0) goto lab0;
|
||||
z->c += ret;
|
||||
}
|
||||
{ /* gopast */ /* grouping v, line 65 */
|
||||
{
|
||||
int ret = out_grouping_U(z, g_v, 1072, 1103, 1);
|
||||
if (ret < 0) goto lab0;
|
||||
z->c += ret;
|
||||
}
|
||||
{ /* gopast */ /* non v, line 65 */
|
||||
{
|
||||
int ret = in_grouping_U(z, g_v, 1072, 1103, 1);
|
||||
if (ret < 0) goto lab0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[1] = z->c; /* setmark p2, line 65 */
|
||||
z->I[0] = z->c;
|
||||
lab0:
|
||||
z->c = c1;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_R2(struct SN_env * z) { /* backwardmode */
|
||||
if (!(z->I[1] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 71 */
|
||||
static int r_R2(struct SN_env * z) {
|
||||
if (!(z->I[0] <= z->c)) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_perfective_gerund(struct SN_env * z) { /* backwardmode */
|
||||
static int r_perfective_gerund(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 74 */
|
||||
among_var = find_among_b(z, a_0, 9); /* substring, line 74 */
|
||||
z->ket = z->c;
|
||||
among_var = find_among_b(z, a_0, 9);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 74 */
|
||||
switch (among_var) { /* among, line 74 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int m1 = z->l - z->c; (void)m1; /* or, line 78 */
|
||||
if (!(eq_s_b(z, 2, s_0))) goto lab1; /* literal, line 78 */
|
||||
{ int m1 = z->l - z->c; (void)m1;
|
||||
if (!(eq_s_b(z, 2, s_0))) goto lab1;
|
||||
goto lab0;
|
||||
lab1:
|
||||
z->c = z->l - m1;
|
||||
if (!(eq_s_b(z, 2, s_1))) return 0; /* literal, line 78 */
|
||||
if (!(eq_s_b(z, 2, s_1))) return 0;
|
||||
}
|
||||
lab0:
|
||||
{ int ret = slice_del(z); /* delete, line 78 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_del(z); /* delete, line 85 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -418,42 +418,42 @@ static int r_perfective_gerund(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_adjective(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 90 */
|
||||
if (!(find_among_b(z, a_1, 26))) return 0; /* substring, line 90 */
|
||||
z->bra = z->c; /* ], line 90 */
|
||||
{ int ret = slice_del(z); /* delete, line 99 */
|
||||
static int r_adjective(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (!(find_among_b(z, a_1, 26))) return 0;
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_adjectival(struct SN_env * z) { /* backwardmode */
|
||||
static int r_adjectival(struct SN_env * z) {
|
||||
int among_var;
|
||||
{ int ret = r_adjective(z); /* call adjective, line 104 */
|
||||
{ int ret = r_adjective(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int m1 = z->l - z->c; (void)m1; /* try, line 111 */
|
||||
z->ket = z->c; /* [, line 112 */
|
||||
among_var = find_among_b(z, a_2, 8); /* substring, line 112 */
|
||||
{ int m1 = z->l - z->c; (void)m1;
|
||||
z->ket = z->c;
|
||||
among_var = find_among_b(z, a_2, 8);
|
||||
if (!(among_var)) { z->c = z->l - m1; goto lab0; }
|
||||
z->bra = z->c; /* ], line 112 */
|
||||
switch (among_var) { /* among, line 112 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int m2 = z->l - z->c; (void)m2; /* or, line 117 */
|
||||
if (!(eq_s_b(z, 2, s_2))) goto lab2; /* literal, line 117 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
if (!(eq_s_b(z, 2, s_2))) goto lab2;
|
||||
goto lab1;
|
||||
lab2:
|
||||
z->c = z->l - m2;
|
||||
if (!(eq_s_b(z, 2, s_3))) { z->c = z->l - m1; goto lab0; } /* literal, line 117 */
|
||||
if (!(eq_s_b(z, 2, s_3))) { z->c = z->l - m1; goto lab0; }
|
||||
}
|
||||
lab1:
|
||||
{ int ret = slice_del(z); /* delete, line 117 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_del(z); /* delete, line 124 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -464,39 +464,39 @@ static int r_adjectival(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_reflexive(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 131 */
|
||||
if (z->c - 3 <= z->lb || (z->p[z->c - 1] != 140 && z->p[z->c - 1] != 143)) return 0; /* substring, line 131 */
|
||||
static int r_reflexive(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (z->c - 3 <= z->lb || (z->p[z->c - 1] != 140 && z->p[z->c - 1] != 143)) return 0;
|
||||
if (!(find_among_b(z, a_3, 2))) return 0;
|
||||
z->bra = z->c; /* ], line 131 */
|
||||
{ int ret = slice_del(z); /* delete, line 134 */
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_verb(struct SN_env * z) { /* backwardmode */
|
||||
static int r_verb(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 139 */
|
||||
among_var = find_among_b(z, a_4, 46); /* substring, line 139 */
|
||||
z->ket = z->c;
|
||||
among_var = find_among_b(z, a_4, 46);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 139 */
|
||||
switch (among_var) { /* among, line 139 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int m1 = z->l - z->c; (void)m1; /* or, line 145 */
|
||||
if (!(eq_s_b(z, 2, s_4))) goto lab1; /* literal, line 145 */
|
||||
{ int m1 = z->l - z->c; (void)m1;
|
||||
if (!(eq_s_b(z, 2, s_4))) goto lab1;
|
||||
goto lab0;
|
||||
lab1:
|
||||
z->c = z->l - m1;
|
||||
if (!(eq_s_b(z, 2, s_5))) return 0; /* literal, line 145 */
|
||||
if (!(eq_s_b(z, 2, s_5))) return 0;
|
||||
}
|
||||
lab0:
|
||||
{ int ret = slice_del(z); /* delete, line 145 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_del(z); /* delete, line 153 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -504,57 +504,57 @@ static int r_verb(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_noun(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 162 */
|
||||
if (!(find_among_b(z, a_5, 36))) return 0; /* substring, line 162 */
|
||||
z->bra = z->c; /* ], line 162 */
|
||||
{ int ret = slice_del(z); /* delete, line 169 */
|
||||
static int r_noun(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (!(find_among_b(z, a_5, 36))) return 0;
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_derivational(struct SN_env * z) { /* backwardmode */
|
||||
z->ket = z->c; /* [, line 178 */
|
||||
if (z->c - 5 <= z->lb || (z->p[z->c - 1] != 130 && z->p[z->c - 1] != 140)) return 0; /* substring, line 178 */
|
||||
static int r_derivational(struct SN_env * z) {
|
||||
z->ket = z->c;
|
||||
if (z->c - 5 <= z->lb || (z->p[z->c - 1] != 130 && z->p[z->c - 1] != 140)) return 0;
|
||||
if (!(find_among_b(z, a_6, 2))) return 0;
|
||||
z->bra = z->c; /* ], line 178 */
|
||||
{ int ret = r_R2(z); /* call R2, line 178 */
|
||||
z->bra = z->c;
|
||||
{ int ret = r_R2(z);
|
||||
if (ret <= 0) return ret;
|
||||
}
|
||||
{ int ret = slice_del(z); /* delete, line 181 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_tidy_up(struct SN_env * z) { /* backwardmode */
|
||||
static int r_tidy_up(struct SN_env * z) {
|
||||
int among_var;
|
||||
z->ket = z->c; /* [, line 186 */
|
||||
among_var = find_among_b(z, a_7, 4); /* substring, line 186 */
|
||||
z->ket = z->c;
|
||||
among_var = find_among_b(z, a_7, 4);
|
||||
if (!(among_var)) return 0;
|
||||
z->bra = z->c; /* ], line 186 */
|
||||
switch (among_var) { /* among, line 186 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 190 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->ket = z->c; /* [, line 191 */
|
||||
if (!(eq_s_b(z, 2, s_6))) return 0; /* literal, line 191 */
|
||||
z->bra = z->c; /* ], line 191 */
|
||||
if (!(eq_s_b(z, 2, s_7))) return 0; /* literal, line 191 */
|
||||
{ int ret = slice_del(z); /* delete, line 191 */
|
||||
z->ket = z->c;
|
||||
if (!(eq_s_b(z, 2, s_6))) return 0;
|
||||
z->bra = z->c;
|
||||
if (!(eq_s_b(z, 2, s_7))) return 0;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (!(eq_s_b(z, 2, s_8))) return 0; /* literal, line 194 */
|
||||
{ int ret = slice_del(z); /* delete, line 194 */
|
||||
if (!(eq_s_b(z, 2, s_8))) return 0;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_del(z); /* delete, line 196 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -562,26 +562,25 @@ static int r_tidy_up(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern int russian_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
{ int c1 = z->c; /* do, line 205 */
|
||||
/* repeat, line 205 */
|
||||
|
||||
while(1) { int c2 = z->c;
|
||||
while(1) { /* goto, line 205 */
|
||||
extern int russian_UTF_8_stem(struct SN_env * z) {
|
||||
{ int c1 = z->c;
|
||||
while(1) {
|
||||
int c2 = z->c;
|
||||
while(1) {
|
||||
int c3 = z->c;
|
||||
z->bra = z->c; /* [, line 205 */
|
||||
if (!(eq_s(z, 2, s_9))) goto lab2; /* literal, line 205 */
|
||||
z->ket = z->c; /* ], line 205 */
|
||||
z->bra = z->c;
|
||||
if (!(eq_s(z, 2, s_9))) goto lab2;
|
||||
z->ket = z->c;
|
||||
z->c = c3;
|
||||
break;
|
||||
lab2:
|
||||
z->c = c3;
|
||||
{ int ret = skip_utf8(z->p, z->c, 0, z->l, 1);
|
||||
{ int ret = skip_utf8(z->p, z->c, z->l, 1);
|
||||
if (ret < 0) goto lab1;
|
||||
z->c = ret; /* goto, line 205 */
|
||||
z->c = ret;
|
||||
}
|
||||
}
|
||||
{ int ret = slice_from_s(z, 2, s_10); /* <-, line 205 */
|
||||
{ int ret = slice_from_s(z, 2, s_10);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
continue;
|
||||
@ -591,49 +590,49 @@ extern int russian_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
}
|
||||
z->c = c1;
|
||||
}
|
||||
/* do, line 207 */
|
||||
{ int ret = r_mark_regions(z); /* call mark_regions, line 207 */
|
||||
|
||||
{ int ret = r_mark_regions(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 208 */
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
|
||||
{ int mlimit4; /* setlimit, line 208 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit4 = z->lb; z->lb = z->I[0];
|
||||
{ int m5 = z->l - z->c; (void)m5; /* do, line 209 */
|
||||
{ int m6 = z->l - z->c; (void)m6; /* or, line 210 */
|
||||
{ int ret = r_perfective_gerund(z); /* call perfective_gerund, line 210 */
|
||||
{ int mlimit4;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit4 = z->lb; z->lb = z->I[1];
|
||||
{ int m5 = z->l - z->c; (void)m5;
|
||||
{ int m6 = z->l - z->c; (void)m6;
|
||||
{ int ret = r_perfective_gerund(z);
|
||||
if (ret == 0) goto lab5;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
goto lab4;
|
||||
lab5:
|
||||
z->c = z->l - m6;
|
||||
{ int m7 = z->l - z->c; (void)m7; /* try, line 211 */
|
||||
{ int ret = r_reflexive(z); /* call reflexive, line 211 */
|
||||
{ int m7 = z->l - z->c; (void)m7;
|
||||
{ int ret = r_reflexive(z);
|
||||
if (ret == 0) { z->c = z->l - m7; goto lab6; }
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
lab6:
|
||||
;
|
||||
}
|
||||
{ int m8 = z->l - z->c; (void)m8; /* or, line 212 */
|
||||
{ int ret = r_adjectival(z); /* call adjectival, line 212 */
|
||||
{ int m8 = z->l - z->c; (void)m8;
|
||||
{ int ret = r_adjectival(z);
|
||||
if (ret == 0) goto lab8;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
goto lab7;
|
||||
lab8:
|
||||
z->c = z->l - m8;
|
||||
{ int ret = r_verb(z); /* call verb, line 212 */
|
||||
{ int ret = r_verb(z);
|
||||
if (ret == 0) goto lab9;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
goto lab7;
|
||||
lab9:
|
||||
z->c = z->l - m8;
|
||||
{ int ret = r_noun(z); /* call noun, line 212 */
|
||||
{ int ret = r_noun(z);
|
||||
if (ret == 0) goto lab3;
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
@ -645,24 +644,24 @@ extern int russian_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
lab3:
|
||||
z->c = z->l - m5;
|
||||
}
|
||||
{ int m9 = z->l - z->c; (void)m9; /* try, line 215 */
|
||||
z->ket = z->c; /* [, line 215 */
|
||||
if (!(eq_s_b(z, 2, s_11))) { z->c = z->l - m9; goto lab10; } /* literal, line 215 */
|
||||
z->bra = z->c; /* ], line 215 */
|
||||
{ int ret = slice_del(z); /* delete, line 215 */
|
||||
{ int m9 = z->l - z->c; (void)m9;
|
||||
z->ket = z->c;
|
||||
if (!(eq_s_b(z, 2, s_11))) { z->c = z->l - m9; goto lab10; }
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
lab10:
|
||||
;
|
||||
}
|
||||
{ int m10 = z->l - z->c; (void)m10; /* do, line 218 */
|
||||
{ int ret = r_derivational(z); /* call derivational, line 218 */
|
||||
{ int m10 = z->l - z->c; (void)m10;
|
||||
{ int ret = r_derivational(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m10;
|
||||
}
|
||||
{ int m11 = z->l - z->c; (void)m11; /* do, line 219 */
|
||||
{ int ret = r_tidy_up(z); /* call tidy_up, line 219 */
|
||||
{ int m11 = z->l - z->c; (void)m11;
|
||||
{ int ret = r_tidy_up(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m11;
|
||||
@ -673,7 +672,7 @@ extern int russian_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern struct SN_env * russian_UTF_8_create_env(void) { return SN_create_env(0, 2, 0); }
|
||||
extern struct SN_env * russian_UTF_8_create_env(void) { return SN_create_env(0, 2); }
|
||||
|
||||
extern void russian_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
|
||||
|
||||
|
6543
src/backend/snowball/libstemmer/stem_UTF_8_serbian.c
Normal file
6543
src/backend/snowball/libstemmer/stem_UTF_8_serbian.c
Normal file
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#include "header.h"
|
||||
|
||||
@ -65,43 +65,43 @@ static const symbol s_0_36[3] = { 'a', 's', 't' };
|
||||
|
||||
static const struct among a_0[37] =
|
||||
{
|
||||
/* 0 */ { 1, s_0_0, -1, 1, 0},
|
||||
/* 1 */ { 4, s_0_1, 0, 1, 0},
|
||||
/* 2 */ { 4, s_0_2, 0, 1, 0},
|
||||
/* 3 */ { 7, s_0_3, 2, 1, 0},
|
||||
/* 4 */ { 4, s_0_4, 0, 1, 0},
|
||||
/* 5 */ { 2, s_0_5, -1, 1, 0},
|
||||
/* 6 */ { 1, s_0_6, -1, 1, 0},
|
||||
/* 7 */ { 3, s_0_7, 6, 1, 0},
|
||||
/* 8 */ { 4, s_0_8, 6, 1, 0},
|
||||
/* 9 */ { 4, s_0_9, 6, 1, 0},
|
||||
/* 10 */ { 3, s_0_10, 6, 1, 0},
|
||||
/* 11 */ { 4, s_0_11, 6, 1, 0},
|
||||
/* 12 */ { 2, s_0_12, -1, 1, 0},
|
||||
/* 13 */ { 5, s_0_13, 12, 1, 0},
|
||||
/* 14 */ { 4, s_0_14, 12, 1, 0},
|
||||
/* 15 */ { 5, s_0_15, 12, 1, 0},
|
||||
/* 16 */ { 3, s_0_16, -1, 1, 0},
|
||||
/* 17 */ { 2, s_0_17, -1, 1, 0},
|
||||
/* 18 */ { 2, s_0_18, -1, 1, 0},
|
||||
/* 19 */ { 5, s_0_19, 18, 1, 0},
|
||||
/* 20 */ { 2, s_0_20, -1, 1, 0},
|
||||
/* 21 */ { 1, s_0_21, -1, 2, 0},
|
||||
/* 22 */ { 2, s_0_22, 21, 1, 0},
|
||||
/* 23 */ { 5, s_0_23, 22, 1, 0},
|
||||
/* 24 */ { 5, s_0_24, 22, 1, 0},
|
||||
/* 25 */ { 5, s_0_25, 22, 1, 0},
|
||||
/* 26 */ { 2, s_0_26, 21, 1, 0},
|
||||
/* 27 */ { 4, s_0_27, 26, 1, 0},
|
||||
/* 28 */ { 5, s_0_28, 26, 1, 0},
|
||||
/* 29 */ { 3, s_0_29, 21, 1, 0},
|
||||
/* 30 */ { 5, s_0_30, 29, 1, 0},
|
||||
/* 31 */ { 6, s_0_31, 29, 1, 0},
|
||||
/* 32 */ { 4, s_0_32, 21, 1, 0},
|
||||
/* 33 */ { 2, s_0_33, -1, 1, 0},
|
||||
/* 34 */ { 5, s_0_34, -1, 1, 0},
|
||||
/* 35 */ { 3, s_0_35, -1, 1, 0},
|
||||
/* 36 */ { 3, s_0_36, -1, 1, 0}
|
||||
{ 1, s_0_0, -1, 1, 0},
|
||||
{ 4, s_0_1, 0, 1, 0},
|
||||
{ 4, s_0_2, 0, 1, 0},
|
||||
{ 7, s_0_3, 2, 1, 0},
|
||||
{ 4, s_0_4, 0, 1, 0},
|
||||
{ 2, s_0_5, -1, 1, 0},
|
||||
{ 1, s_0_6, -1, 1, 0},
|
||||
{ 3, s_0_7, 6, 1, 0},
|
||||
{ 4, s_0_8, 6, 1, 0},
|
||||
{ 4, s_0_9, 6, 1, 0},
|
||||
{ 3, s_0_10, 6, 1, 0},
|
||||
{ 4, s_0_11, 6, 1, 0},
|
||||
{ 2, s_0_12, -1, 1, 0},
|
||||
{ 5, s_0_13, 12, 1, 0},
|
||||
{ 4, s_0_14, 12, 1, 0},
|
||||
{ 5, s_0_15, 12, 1, 0},
|
||||
{ 3, s_0_16, -1, 1, 0},
|
||||
{ 2, s_0_17, -1, 1, 0},
|
||||
{ 2, s_0_18, -1, 1, 0},
|
||||
{ 5, s_0_19, 18, 1, 0},
|
||||
{ 2, s_0_20, -1, 1, 0},
|
||||
{ 1, s_0_21, -1, 2, 0},
|
||||
{ 2, s_0_22, 21, 1, 0},
|
||||
{ 5, s_0_23, 22, 1, 0},
|
||||
{ 5, s_0_24, 22, 1, 0},
|
||||
{ 5, s_0_25, 22, 1, 0},
|
||||
{ 2, s_0_26, 21, 1, 0},
|
||||
{ 4, s_0_27, 26, 1, 0},
|
||||
{ 5, s_0_28, 26, 1, 0},
|
||||
{ 3, s_0_29, 21, 1, 0},
|
||||
{ 5, s_0_30, 29, 1, 0},
|
||||
{ 6, s_0_31, 29, 1, 0},
|
||||
{ 4, s_0_32, 21, 1, 0},
|
||||
{ 2, s_0_33, -1, 1, 0},
|
||||
{ 5, s_0_34, -1, 1, 0},
|
||||
{ 3, s_0_35, -1, 1, 0},
|
||||
{ 3, s_0_36, -1, 1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_1_0[2] = { 'd', 'd' };
|
||||
@ -114,13 +114,13 @@ static const symbol s_1_6[2] = { 't', 't' };
|
||||
|
||||
static const struct among a_1[7] =
|
||||
{
|
||||
/* 0 */ { 2, s_1_0, -1, -1, 0},
|
||||
/* 1 */ { 2, s_1_1, -1, -1, 0},
|
||||
/* 2 */ { 2, s_1_2, -1, -1, 0},
|
||||
/* 3 */ { 2, s_1_3, -1, -1, 0},
|
||||
/* 4 */ { 2, s_1_4, -1, -1, 0},
|
||||
/* 5 */ { 2, s_1_5, -1, -1, 0},
|
||||
/* 6 */ { 2, s_1_6, -1, -1, 0}
|
||||
{ 2, s_1_0, -1, -1, 0},
|
||||
{ 2, s_1_1, -1, -1, 0},
|
||||
{ 2, s_1_2, -1, -1, 0},
|
||||
{ 2, s_1_3, -1, -1, 0},
|
||||
{ 2, s_1_4, -1, -1, 0},
|
||||
{ 2, s_1_5, -1, -1, 0},
|
||||
{ 2, s_1_6, -1, -1, 0}
|
||||
};
|
||||
|
||||
static const symbol s_2_0[2] = { 'i', 'g' };
|
||||
@ -131,11 +131,11 @@ static const symbol s_2_4[5] = { 'l', 0xC3, 0xB6, 's', 't' };
|
||||
|
||||
static const struct among a_2[5] =
|
||||
{
|
||||
/* 0 */ { 2, s_2_0, -1, 1, 0},
|
||||
/* 1 */ { 3, s_2_1, 0, 1, 0},
|
||||
/* 2 */ { 3, s_2_2, -1, 1, 0},
|
||||
/* 3 */ { 5, s_2_3, -1, 3, 0},
|
||||
/* 4 */ { 5, s_2_4, -1, 2, 0}
|
||||
{ 2, s_2_0, -1, 1, 0},
|
||||
{ 3, s_2_1, 0, 1, 0},
|
||||
{ 3, s_2_2, -1, 1, 0},
|
||||
{ 5, s_2_3, -1, 3, 0},
|
||||
{ 5, s_2_4, -1, 2, 0}
|
||||
};
|
||||
|
||||
static const unsigned char g_v[] = { 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 0, 32 };
|
||||
@ -145,52 +145,52 @@ static const unsigned char g_s_ending[] = { 119, 127, 149 };
|
||||
static const symbol s_0[] = { 'l', 0xC3, 0xB6, 's' };
|
||||
static const symbol s_1[] = { 'f', 'u', 'l', 'l' };
|
||||
|
||||
static int r_mark_regions(struct SN_env * z) { /* forwardmode */
|
||||
z->I[0] = z->l; /* $p1 = <integer expression>, line 28 */
|
||||
{ int c_test1 = z->c; /* test, line 29 */
|
||||
{ int ret = skip_utf8(z->p, z->c, 0, z->l, + 3); /* hop, line 29 */
|
||||
static int r_mark_regions(struct SN_env * z) {
|
||||
z->I[1] = z->l;
|
||||
{ int c_test1 = z->c;
|
||||
{ int ret = skip_utf8(z->p, z->c, z->l, 3);
|
||||
if (ret < 0) return 0;
|
||||
z->c = ret;
|
||||
}
|
||||
z->I[1] = z->c; /* setmark x, line 29 */
|
||||
z->I[0] = z->c;
|
||||
z->c = c_test1;
|
||||
}
|
||||
if (out_grouping_U(z, g_v, 97, 246, 1) < 0) return 0; /* goto */ /* grouping v, line 30 */
|
||||
{ /* gopast */ /* non v, line 30 */
|
||||
if (out_grouping_U(z, g_v, 97, 246, 1) < 0) return 0;
|
||||
{
|
||||
int ret = in_grouping_U(z, g_v, 97, 246, 1);
|
||||
if (ret < 0) return 0;
|
||||
z->c += ret;
|
||||
}
|
||||
z->I[0] = z->c; /* setmark p1, line 30 */
|
||||
/* try, line 31 */
|
||||
if (!(z->I[0] < z->I[1])) goto lab0; /* $(<integer expression> < <integer expression>), line 31 */
|
||||
z->I[0] = z->I[1]; /* $p1 = <integer expression>, line 31 */
|
||||
z->I[1] = z->c;
|
||||
|
||||
if (!(z->I[1] < z->I[0])) goto lab0;
|
||||
z->I[1] = z->I[0];
|
||||
lab0:
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_main_suffix(struct SN_env * z) { /* backwardmode */
|
||||
static int r_main_suffix(struct SN_env * z) {
|
||||
int among_var;
|
||||
|
||||
{ int mlimit1; /* setlimit, line 37 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 37 */
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1851442 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; } /* substring, line 37 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1851442 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; }
|
||||
among_var = find_among_b(z, a_0, 37);
|
||||
if (!(among_var)) { z->lb = mlimit1; return 0; }
|
||||
z->bra = z->c; /* ], line 37 */
|
||||
z->bra = z->c;
|
||||
z->lb = mlimit1;
|
||||
}
|
||||
switch (among_var) { /* among, line 38 */
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 44 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (in_grouping_b_U(z, g_s_ending, 98, 121, 0)) return 0; /* grouping s_ending, line 46 */
|
||||
{ int ret = slice_del(z); /* delete, line 46 */
|
||||
if (in_grouping_b_U(z, g_s_ending, 98, 121, 0)) return 0;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -198,22 +198,22 @@ static int r_main_suffix(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_consonant_pair(struct SN_env * z) { /* backwardmode */
|
||||
static int r_consonant_pair(struct SN_env * z) {
|
||||
|
||||
{ int mlimit1; /* setlimit, line 50 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
{ int m2 = z->l - z->c; (void)m2; /* and, line 52 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1064976 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; } /* among, line 51 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1064976 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; }
|
||||
if (!(find_among_b(z, a_1, 7))) { z->lb = mlimit1; return 0; }
|
||||
z->c = z->l - m2;
|
||||
z->ket = z->c; /* [, line 52 */
|
||||
{ int ret = skip_utf8(z->p, z->c, z->lb, 0, -1);
|
||||
z->ket = z->c;
|
||||
{ int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
|
||||
if (ret < 0) { z->lb = mlimit1; return 0; }
|
||||
z->c = ret; /* next, line 52 */
|
||||
z->c = ret;
|
||||
}
|
||||
z->bra = z->c; /* ], line 52 */
|
||||
{ int ret = slice_del(z); /* delete, line 52 */
|
||||
z->bra = z->c;
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
}
|
||||
@ -222,30 +222,30 @@ static int r_consonant_pair(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int r_other_suffix(struct SN_env * z) { /* backwardmode */
|
||||
static int r_other_suffix(struct SN_env * z) {
|
||||
int among_var;
|
||||
|
||||
{ int mlimit1; /* setlimit, line 55 */
|
||||
if (z->c < z->I[0]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[0];
|
||||
z->ket = z->c; /* [, line 56 */
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1572992 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; } /* substring, line 56 */
|
||||
{ int mlimit1;
|
||||
if (z->c < z->I[1]) return 0;
|
||||
mlimit1 = z->lb; z->lb = z->I[1];
|
||||
z->ket = z->c;
|
||||
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1572992 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; }
|
||||
among_var = find_among_b(z, a_2, 5);
|
||||
if (!(among_var)) { z->lb = mlimit1; return 0; }
|
||||
z->bra = z->c; /* ], line 56 */
|
||||
switch (among_var) { /* among, line 56 */
|
||||
z->bra = z->c;
|
||||
switch (among_var) {
|
||||
case 1:
|
||||
{ int ret = slice_del(z); /* delete, line 57 */
|
||||
{ int ret = slice_del(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{ int ret = slice_from_s(z, 4, s_0); /* <-, line 58 */
|
||||
{ int ret = slice_from_s(z, 4, s_0);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{ int ret = slice_from_s(z, 4, s_1); /* <-, line 59 */
|
||||
{ int ret = slice_from_s(z, 4, s_1);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
break;
|
||||
@ -255,29 +255,29 @@ static int r_other_suffix(struct SN_env * z) { /* backwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern int swedish_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
{ int c1 = z->c; /* do, line 66 */
|
||||
{ int ret = r_mark_regions(z); /* call mark_regions, line 66 */
|
||||
extern int swedish_UTF_8_stem(struct SN_env * z) {
|
||||
{ int c1 = z->c;
|
||||
{ int ret = r_mark_regions(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = c1;
|
||||
}
|
||||
z->lb = z->c; z->c = z->l; /* backwards, line 67 */
|
||||
z->lb = z->c; z->c = z->l;
|
||||
|
||||
{ int m2 = z->l - z->c; (void)m2; /* do, line 68 */
|
||||
{ int ret = r_main_suffix(z); /* call main_suffix, line 68 */
|
||||
{ int m2 = z->l - z->c; (void)m2;
|
||||
{ int ret = r_main_suffix(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m2;
|
||||
}
|
||||
{ int m3 = z->l - z->c; (void)m3; /* do, line 69 */
|
||||
{ int ret = r_consonant_pair(z); /* call consonant_pair, line 69 */
|
||||
{ int m3 = z->l - z->c; (void)m3;
|
||||
{ int ret = r_consonant_pair(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m3;
|
||||
}
|
||||
{ int m4 = z->l - z->c; (void)m4; /* do, line 70 */
|
||||
{ int ret = r_other_suffix(z); /* call other_suffix, line 70 */
|
||||
{ int m4 = z->l - z->c; (void)m4;
|
||||
{ int ret = r_other_suffix(z);
|
||||
if (ret < 0) return ret;
|
||||
}
|
||||
z->c = z->l - m4;
|
||||
@ -286,7 +286,7 @@ extern int swedish_UTF_8_stem(struct SN_env * z) { /* forwardmode */
|
||||
return 1;
|
||||
}
|
||||
|
||||
extern struct SN_env * swedish_UTF_8_create_env(void) { return SN_create_env(0, 2, 0); }
|
||||
extern struct SN_env * swedish_UTF_8_create_env(void) { return SN_create_env(0, 2); }
|
||||
|
||||
extern void swedish_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
1368
src/backend/snowball/libstemmer/stem_UTF_8_yiddish.c
Normal file
1368
src/backend/snowball/libstemmer/stem_UTF_8_yiddish.c
Normal file
File diff suppressed because it is too large
Load Diff
@ -18,21 +18,20 @@ extern void lose_s(symbol * p) {
|
||||
}
|
||||
|
||||
/*
|
||||
new_p = skip_utf8(p, c, lb, l, n); skips n characters forwards from p + c
|
||||
if n +ve, or n characters backwards from p + c - 1 if n -ve. new_p is the new
|
||||
position, or -1 on failure.
|
||||
new_p = skip_utf8(p, c, l, n); skips n characters forwards from p + c.
|
||||
new_p is the new position, or -1 on failure.
|
||||
|
||||
-- used to implement hop and next in the utf8 case.
|
||||
*/
|
||||
|
||||
extern int skip_utf8(const symbol * p, int c, int lb, int l, int n) {
|
||||
extern int skip_utf8(const symbol * p, int c, int limit, int n) {
|
||||
int b;
|
||||
if (n >= 0) {
|
||||
if (n < 0) return -1;
|
||||
for (; n > 0; n--) {
|
||||
if (c >= l) return -1;
|
||||
if (c >= limit) return -1;
|
||||
b = p[c++];
|
||||
if (b >= 0xC0) { /* 1100 0000 */
|
||||
while (c < l) {
|
||||
while (c < limit) {
|
||||
b = p[c];
|
||||
if (b >= 0xC0 || b < 0x80) break;
|
||||
/* break unless b is 10------ */
|
||||
@ -40,19 +39,30 @@ extern int skip_utf8(const symbol * p, int c, int lb, int l, int n) {
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
for (; n < 0; n++) {
|
||||
if (c <= lb) return -1;
|
||||
return c;
|
||||
}
|
||||
|
||||
/*
|
||||
new_p = skip_b_utf8(p, c, lb, n); skips n characters backwards from p + c - 1
|
||||
new_p is the new position, or -1 on failure.
|
||||
|
||||
-- used to implement hop and next in the utf8 case.
|
||||
*/
|
||||
|
||||
extern int skip_b_utf8(const symbol * p, int c, int limit, int n) {
|
||||
int b;
|
||||
if (n < 0) return -1;
|
||||
for (; n > 0; n--) {
|
||||
if (c <= limit) return -1;
|
||||
b = p[--c];
|
||||
if (b >= 0x80) { /* 1000 0000 */
|
||||
while (c > lb) {
|
||||
while (c > limit) {
|
||||
b = p[c];
|
||||
if (b >= 0xC0) break; /* 1100 0000 */
|
||||
c--;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return c;
|
||||
}
|
||||
|
||||
@ -76,7 +86,7 @@ static int get_utf8(const symbol * p, int c, int l, int * slot) {
|
||||
*slot = (b0 & 0xF) << 12 | b1 << 6 | b2;
|
||||
return 3;
|
||||
}
|
||||
*slot = (b0 & 0xE) << 18 | b1 << 12 | b2 << 6 | (p[c] & 0x3F);
|
||||
*slot = (b0 & 0x7) << 18 | b1 << 12 | b2 << 6 | (p[c] & 0x3F);
|
||||
return 4;
|
||||
}
|
||||
|
||||
@ -100,7 +110,7 @@ static int get_b_utf8(const symbol * p, int c, int lb, int * slot) {
|
||||
*slot = (b & 0xF) << 12 | a;
|
||||
return 3;
|
||||
}
|
||||
*slot = (p[--c] & 0xE) << 18 | (b & 0x3F) << 12 | a;
|
||||
*slot = (p[--c] & 0x7) << 18 | (b & 0x3F) << 12 | a;
|
||||
return 4;
|
||||
}
|
||||
|
||||
@ -226,7 +236,7 @@ extern int find_among(struct SN_env * z, const struct among * v, int v_size) {
|
||||
int j = v_size;
|
||||
|
||||
int c = z->c; int l = z->l;
|
||||
symbol * q = z->p + c;
|
||||
const symbol * q = z->p + c;
|
||||
|
||||
const struct among * w;
|
||||
|
||||
@ -291,7 +301,7 @@ extern int find_among_b(struct SN_env * z, const struct among * v, int v_size) {
|
||||
int j = v_size;
|
||||
|
||||
int c = z->c; int lb = z->lb;
|
||||
symbol * q = z->p + c - 1;
|
||||
const symbol * q = z->p + c - 1;
|
||||
|
||||
const struct among * w;
|
||||
|
||||
|
@ -656,6 +656,8 @@ static const struct tsearch_config_match tsearch_config_languages[] =
|
||||
{
|
||||
{"arabic", "ar"},
|
||||
{"arabic", "Arabic"},
|
||||
{"armenian", "hy"},
|
||||
{"armenian", "Armenian"},
|
||||
{"basque", "eu"},
|
||||
{"basque", "Basque"},
|
||||
{"catalan", "ca"},
|
||||
@ -697,6 +699,8 @@ static const struct tsearch_config_match tsearch_config_languages[] =
|
||||
{"romanian", "ro"},
|
||||
{"russian", "ru"},
|
||||
{"russian", "Russian"},
|
||||
{"serbian", "sr"},
|
||||
{"serbian", "Serbian"},
|
||||
{"spanish", "es"},
|
||||
{"spanish", "Spanish"},
|
||||
{"swedish", "sv"},
|
||||
@ -705,6 +709,8 @@ static const struct tsearch_config_match tsearch_config_languages[] =
|
||||
{"tamil", "Tamil"},
|
||||
{"turkish", "tr"},
|
||||
{"turkish", "Turkish"},
|
||||
{"yiddish", "yi"},
|
||||
{"yiddish", "Yiddish"},
|
||||
{NULL, NULL} /* end marker */
|
||||
};
|
||||
|
||||
|
@ -53,6 +53,6 @@
|
||||
*/
|
||||
|
||||
/* yyyymmddN */
|
||||
#define CATALOG_VERSION_NO 202102171
|
||||
#define CATALOG_VERSION_NO 202102191
|
||||
|
||||
#endif
|
||||
|
@ -16,14 +16,13 @@ struct SN_env {
|
||||
int c; int l; int lb; int bra; int ket;
|
||||
symbol * * S;
|
||||
int * I;
|
||||
unsigned char * B;
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
extern struct SN_env * SN_create_env(int S_size, int I_size, int B_size);
|
||||
extern struct SN_env * SN_create_env(int S_size, int I_size);
|
||||
extern void SN_close_env(struct SN_env * z, int S_size);
|
||||
|
||||
extern int SN_set_current(struct SN_env * z, int size, const symbol * s);
|
||||
|
@ -23,7 +23,9 @@ struct among
|
||||
extern symbol * create_s(void);
|
||||
extern void lose_s(symbol * p);
|
||||
|
||||
extern int skip_utf8(const symbol * p, int c, int lb, int l, int n);
|
||||
extern int skip_utf8(const symbol * p, int c, int limit, int n);
|
||||
|
||||
extern int skip_b_utf8(const symbol * p, int c, int limit, int n);
|
||||
|
||||
extern int in_grouping_U(struct SN_env * z, const unsigned char * s, int min, int max, int repeat);
|
||||
extern int in_grouping_b_U(struct SN_env * z, const unsigned char * s, int min, int max, int repeat);
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
15
src/include/snowball/libstemmer/stem_UTF_8_armenian.h
Normal file
15
src/include/snowball/libstemmer/stem_UTF_8_armenian.h
Normal file
@ -0,0 +1,15 @@
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
extern struct SN_env * armenian_UTF_8_create_env(void);
|
||||
extern void armenian_UTF_8_close_env(struct SN_env * z);
|
||||
|
||||
extern int armenian_UTF_8_stem(struct SN_env * z);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
|
||||
/* Generated by Snowball 2.1.0 - https://snowballstem.org/ */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user