PostgreSQL Source Code git master
stem_UTF_8_russian.c File Reference
#include "stem_UTF_8_russian.h"
#include <stddef.h>
#include "snowball_runtime.h"
Include dependency graph for stem_UTF_8_russian.c:

Go to the source code of this file.

Data Structures

struct  SN_local
 

Typedefs

typedef struct SN_local SN_local
 

Functions

int russian_UTF_8_stem (struct SN_env *z)
 
static int r_tidy_up (struct SN_env *z)
 
static int r_derivational (struct SN_env *z)
 
static int r_noun (struct SN_env *z)
 
static int r_verb (struct SN_env *z)
 
static int r_reflexive (struct SN_env *z)
 
static int r_adjectival (struct SN_env *z)
 
static int r_adjective (struct SN_env *z)
 
static int r_perfective_gerund (struct SN_env *z)
 
static int r_R2 (struct SN_env *z)
 
static int r_mark_regions (struct SN_env *z)
 
struct SN_envrussian_UTF_8_create_env (void)
 
void russian_UTF_8_close_env (struct SN_env *z)
 

Variables

static const symbol s_0 [] = { 0xD0, 0xB0 }
 
static const symbol s_1 [] = { 0xD1, 0x8F }
 
static const symbol s_2 [] = { 0xD0, 0xB0 }
 
static const symbol s_3 [] = { 0xD1, 0x8F }
 
static const symbol s_4 [] = { 0xD0, 0xB0 }
 
static const symbol s_5 [] = { 0xD1, 0x8F }
 
static const symbol s_6 [] = { 0xD0, 0xBD }
 
static const symbol s_7 [] = { 0xD0, 0xBD }
 
static const symbol s_8 [] = { 0xD0, 0xBD }
 
static const symbol s_9 [] = { 0xD1, 0x91 }
 
static const symbol s_10 [] = { 0xD0, 0xB5 }
 
static const symbol s_11 [] = { 0xD0, 0xB8 }
 
static const symbol s_0_0 [10] = { 0xD0, 0xB2, 0xD1, 0x88, 0xD0, 0xB8, 0xD1, 0x81, 0xD1, 0x8C }
 
static const symbol s_0_1 [12] = { 0xD1, 0x8B, 0xD0, 0xB2, 0xD1, 0x88, 0xD0, 0xB8, 0xD1, 0x81, 0xD1, 0x8C }
 
static const symbol s_0_2 [12] = { 0xD0, 0xB8, 0xD0, 0xB2, 0xD1, 0x88, 0xD0, 0xB8, 0xD1, 0x81, 0xD1, 0x8C }
 
static const symbol s_0_3 [2] = { 0xD0, 0xB2 }
 
static const symbol s_0_4 [4] = { 0xD1, 0x8B, 0xD0, 0xB2 }
 
static const symbol s_0_5 [4] = { 0xD0, 0xB8, 0xD0, 0xB2 }
 
static const symbol s_0_6 [6] = { 0xD0, 0xB2, 0xD1, 0x88, 0xD0, 0xB8 }
 
static const symbol s_0_7 [8] = { 0xD1, 0x8B, 0xD0, 0xB2, 0xD1, 0x88, 0xD0, 0xB8 }
 
static const symbol s_0_8 [8] = { 0xD0, 0xB8, 0xD0, 0xB2, 0xD1, 0x88, 0xD0, 0xB8 }
 
static const struct among a_0 [9]
 
static const symbol s_1_0 [6] = { 0xD0, 0xB5, 0xD0, 0xBC, 0xD1, 0x83 }
 
static const symbol s_1_1 [6] = { 0xD0, 0xBE, 0xD0, 0xBC, 0xD1, 0x83 }
 
static const symbol s_1_2 [4] = { 0xD1, 0x8B, 0xD1, 0x85 }
 
static const symbol s_1_3 [4] = { 0xD0, 0xB8, 0xD1, 0x85 }
 
static const symbol s_1_4 [4] = { 0xD1, 0x83, 0xD1, 0x8E }
 
static const symbol s_1_5 [4] = { 0xD1, 0x8E, 0xD1, 0x8E }
 
static const symbol s_1_6 [4] = { 0xD0, 0xB5, 0xD1, 0x8E }
 
static const symbol s_1_7 [4] = { 0xD0, 0xBE, 0xD1, 0x8E }
 
static const symbol s_1_8 [4] = { 0xD1, 0x8F, 0xD1, 0x8F }
 
static const symbol s_1_9 [4] = { 0xD0, 0xB0, 0xD1, 0x8F }
 
static const symbol s_1_10 [4] = { 0xD1, 0x8B, 0xD0, 0xB5 }
 
static const symbol s_1_11 [4] = { 0xD0, 0xB5, 0xD0, 0xB5 }
 
static const symbol s_1_12 [4] = { 0xD0, 0xB8, 0xD0, 0xB5 }
 
static const symbol s_1_13 [4] = { 0xD0, 0xBE, 0xD0, 0xB5 }
 
static const symbol s_1_14 [6] = { 0xD1, 0x8B, 0xD0, 0xBC, 0xD0, 0xB8 }
 
static const symbol s_1_15 [6] = { 0xD0, 0xB8, 0xD0, 0xBC, 0xD0, 0xB8 }
 
static const symbol s_1_16 [4] = { 0xD1, 0x8B, 0xD0, 0xB9 }
 
static const symbol s_1_17 [4] = { 0xD0, 0xB5, 0xD0, 0xB9 }
 
static const symbol s_1_18 [4] = { 0xD0, 0xB8, 0xD0, 0xB9 }
 
static const symbol s_1_19 [4] = { 0xD0, 0xBE, 0xD0, 0xB9 }
 
static const symbol s_1_20 [4] = { 0xD1, 0x8B, 0xD0, 0xBC }
 
static const symbol s_1_21 [4] = { 0xD0, 0xB5, 0xD0, 0xBC }
 
static const symbol s_1_22 [4] = { 0xD0, 0xB8, 0xD0, 0xBC }
 
static const symbol s_1_23 [4] = { 0xD0, 0xBE, 0xD0, 0xBC }
 
static const symbol s_1_24 [6] = { 0xD0, 0xB5, 0xD0, 0xB3, 0xD0, 0xBE }
 
static const symbol s_1_25 [6] = { 0xD0, 0xBE, 0xD0, 0xB3, 0xD0, 0xBE }
 
static const struct among a_1 [26]
 
static const symbol s_2_0 [4] = { 0xD0, 0xB2, 0xD1, 0x88 }
 
static const symbol s_2_1 [6] = { 0xD1, 0x8B, 0xD0, 0xB2, 0xD1, 0x88 }
 
static const symbol s_2_2 [6] = { 0xD0, 0xB8, 0xD0, 0xB2, 0xD1, 0x88 }
 
static const symbol s_2_3 [2] = { 0xD1, 0x89 }
 
static const symbol s_2_4 [4] = { 0xD1, 0x8E, 0xD1, 0x89 }
 
static const symbol s_2_5 [6] = { 0xD1, 0x83, 0xD1, 0x8E, 0xD1, 0x89 }
 
static const symbol s_2_6 [4] = { 0xD0, 0xB5, 0xD0, 0xBC }
 
static const symbol s_2_7 [4] = { 0xD0, 0xBD, 0xD0, 0xBD }
 
static const struct among a_2 [8]
 
static const symbol s_3_0 [4] = { 0xD1, 0x81, 0xD1, 0x8C }
 
static const symbol s_3_1 [4] = { 0xD1, 0x81, 0xD1, 0x8F }
 
static const struct among a_3 [2]
 
static const symbol s_4_0 [4] = { 0xD1, 0x8B, 0xD1, 0x82 }
 
static const symbol s_4_1 [4] = { 0xD1, 0x8E, 0xD1, 0x82 }
 
static const symbol s_4_2 [6] = { 0xD1, 0x83, 0xD1, 0x8E, 0xD1, 0x82 }
 
static const symbol s_4_3 [4] = { 0xD1, 0x8F, 0xD1, 0x82 }
 
static const symbol s_4_4 [4] = { 0xD0, 0xB5, 0xD1, 0x82 }
 
static const symbol s_4_5 [6] = { 0xD1, 0x83, 0xD0, 0xB5, 0xD1, 0x82 }
 
static const symbol s_4_6 [4] = { 0xD0, 0xB8, 0xD1, 0x82 }
 
static const symbol s_4_7 [4] = { 0xD0, 0xBD, 0xD1, 0x8B }
 
static const symbol s_4_8 [6] = { 0xD0, 0xB5, 0xD0, 0xBD, 0xD1, 0x8B }
 
static const symbol s_4_9 [4] = { 0xD1, 0x82, 0xD1, 0x8C }
 
static const symbol s_4_10 [6] = { 0xD1, 0x8B, 0xD1, 0x82, 0xD1, 0x8C }
 
static const symbol s_4_11 [6] = { 0xD0, 0xB8, 0xD1, 0x82, 0xD1, 0x8C }
 
static const symbol s_4_12 [6] = { 0xD0, 0xB5, 0xD1, 0x88, 0xD1, 0x8C }
 
static const symbol s_4_13 [6] = { 0xD0, 0xB8, 0xD1, 0x88, 0xD1, 0x8C }
 
static const symbol s_4_14 [2] = { 0xD1, 0x8E }
 
static const symbol s_4_15 [4] = { 0xD1, 0x83, 0xD1, 0x8E }
 
static const symbol s_4_16 [4] = { 0xD0, 0xBB, 0xD0, 0xB0 }
 
static const symbol s_4_17 [6] = { 0xD1, 0x8B, 0xD0, 0xBB, 0xD0, 0xB0 }
 
static const symbol s_4_18 [6] = { 0xD0, 0xB8, 0xD0, 0xBB, 0xD0, 0xB0 }
 
static const symbol s_4_19 [4] = { 0xD0, 0xBD, 0xD0, 0xB0 }
 
static const symbol s_4_20 [6] = { 0xD0, 0xB5, 0xD0, 0xBD, 0xD0, 0xB0 }
 
static const symbol s_4_21 [6] = { 0xD0, 0xB5, 0xD1, 0x82, 0xD0, 0xB5 }
 
static const symbol s_4_22 [6] = { 0xD0, 0xB8, 0xD1, 0x82, 0xD0, 0xB5 }
 
static const symbol s_4_23 [6] = { 0xD0, 0xB9, 0xD1, 0x82, 0xD0, 0xB5 }
 
static const symbol s_4_24 [8] = { 0xD1, 0x83, 0xD0, 0xB9, 0xD1, 0x82, 0xD0, 0xB5 }
 
static const symbol s_4_25 [8] = { 0xD0, 0xB5, 0xD0, 0xB9, 0xD1, 0x82, 0xD0, 0xB5 }
 
static const symbol s_4_26 [4] = { 0xD0, 0xBB, 0xD0, 0xB8 }
 
static const symbol s_4_27 [6] = { 0xD1, 0x8B, 0xD0, 0xBB, 0xD0, 0xB8 }
 
static const symbol s_4_28 [6] = { 0xD0, 0xB8, 0xD0, 0xBB, 0xD0, 0xB8 }
 
static const symbol s_4_29 [2] = { 0xD0, 0xB9 }
 
static const symbol s_4_30 [4] = { 0xD1, 0x83, 0xD0, 0xB9 }
 
static const symbol s_4_31 [4] = { 0xD0, 0xB5, 0xD0, 0xB9 }
 
static const symbol s_4_32 [2] = { 0xD0, 0xBB }
 
static const symbol s_4_33 [4] = { 0xD1, 0x8B, 0xD0, 0xBB }
 
static const symbol s_4_34 [4] = { 0xD0, 0xB8, 0xD0, 0xBB }
 
static const symbol s_4_35 [4] = { 0xD1, 0x8B, 0xD0, 0xBC }
 
static const symbol s_4_36 [4] = { 0xD0, 0xB5, 0xD0, 0xBC }
 
static const symbol s_4_37 [4] = { 0xD0, 0xB8, 0xD0, 0xBC }
 
static const symbol s_4_38 [2] = { 0xD0, 0xBD }
 
static const symbol s_4_39 [4] = { 0xD0, 0xB5, 0xD0, 0xBD }
 
static const symbol s_4_40 [4] = { 0xD0, 0xBB, 0xD0, 0xBE }
 
static const symbol s_4_41 [6] = { 0xD1, 0x8B, 0xD0, 0xBB, 0xD0, 0xBE }
 
static const symbol s_4_42 [6] = { 0xD0, 0xB8, 0xD0, 0xBB, 0xD0, 0xBE }
 
static const symbol s_4_43 [4] = { 0xD0, 0xBD, 0xD0, 0xBE }
 
static const symbol s_4_44 [6] = { 0xD0, 0xB5, 0xD0, 0xBD, 0xD0, 0xBE }
 
static const symbol s_4_45 [6] = { 0xD0, 0xBD, 0xD0, 0xBD, 0xD0, 0xBE }
 
static const struct among a_4 [46]
 
static const symbol s_5_0 [2] = { 0xD1, 0x83 }
 
static const symbol s_5_1 [4] = { 0xD1, 0x8F, 0xD1, 0x85 }
 
static const symbol s_5_2 [6] = { 0xD0, 0xB8, 0xD1, 0x8F, 0xD1, 0x85 }
 
static const symbol s_5_3 [4] = { 0xD0, 0xB0, 0xD1, 0x85 }
 
static const symbol s_5_4 [2] = { 0xD1, 0x8B }
 
static const symbol s_5_5 [2] = { 0xD1, 0x8C }
 
static const symbol s_5_6 [2] = { 0xD1, 0x8E }
 
static const symbol s_5_7 [4] = { 0xD1, 0x8C, 0xD1, 0x8E }
 
static const symbol s_5_8 [4] = { 0xD0, 0xB8, 0xD1, 0x8E }
 
static const symbol s_5_9 [2] = { 0xD1, 0x8F }
 
static const symbol s_5_10 [4] = { 0xD1, 0x8C, 0xD1, 0x8F }
 
static const symbol s_5_11 [4] = { 0xD0, 0xB8, 0xD1, 0x8F }
 
static const symbol s_5_12 [2] = { 0xD0, 0xB0 }
 
static const symbol s_5_13 [4] = { 0xD0, 0xB5, 0xD0, 0xB2 }
 
static const symbol s_5_14 [4] = { 0xD0, 0xBE, 0xD0, 0xB2 }
 
static const symbol s_5_15 [2] = { 0xD0, 0xB5 }
 
static const symbol s_5_16 [4] = { 0xD1, 0x8C, 0xD0, 0xB5 }
 
static const symbol s_5_17 [4] = { 0xD0, 0xB8, 0xD0, 0xB5 }
 
static const symbol s_5_18 [2] = { 0xD0, 0xB8 }
 
static const symbol s_5_19 [4] = { 0xD0, 0xB5, 0xD0, 0xB8 }
 
static const symbol s_5_20 [4] = { 0xD0, 0xB8, 0xD0, 0xB8 }
 
static const symbol s_5_21 [6] = { 0xD1, 0x8F, 0xD0, 0xBC, 0xD0, 0xB8 }
 
static const symbol s_5_22 [8] = { 0xD0, 0xB8, 0xD1, 0x8F, 0xD0, 0xBC, 0xD0, 0xB8 }
 
static const symbol s_5_23 [6] = { 0xD0, 0xB0, 0xD0, 0xBC, 0xD0, 0xB8 }
 
static const symbol s_5_24 [2] = { 0xD0, 0xB9 }
 
static const symbol s_5_25 [4] = { 0xD0, 0xB5, 0xD0, 0xB9 }
 
static const symbol s_5_26 [6] = { 0xD0, 0xB8, 0xD0, 0xB5, 0xD0, 0xB9 }
 
static const symbol s_5_27 [4] = { 0xD0, 0xB8, 0xD0, 0xB9 }
 
static const symbol s_5_28 [4] = { 0xD0, 0xBE, 0xD0, 0xB9 }
 
static const symbol s_5_29 [4] = { 0xD1, 0x8F, 0xD0, 0xBC }
 
static const symbol s_5_30 [6] = { 0xD0, 0xB8, 0xD1, 0x8F, 0xD0, 0xBC }
 
static const symbol s_5_31 [4] = { 0xD0, 0xB0, 0xD0, 0xBC }
 
static const symbol s_5_32 [4] = { 0xD0, 0xB5, 0xD0, 0xBC }
 
static const symbol s_5_33 [6] = { 0xD0, 0xB8, 0xD0, 0xB5, 0xD0, 0xBC }
 
static const symbol s_5_34 [4] = { 0xD0, 0xBE, 0xD0, 0xBC }
 
static const symbol s_5_35 [2] = { 0xD0, 0xBE }
 
static const struct among a_5 [36]
 
static const symbol s_6_0 [6] = { 0xD0, 0xBE, 0xD1, 0x81, 0xD1, 0x82 }
 
static const symbol s_6_1 [8] = { 0xD0, 0xBE, 0xD1, 0x81, 0xD1, 0x82, 0xD1, 0x8C }
 
static const struct among a_6 [2]
 
static const symbol s_7_0 [6] = { 0xD0, 0xB5, 0xD0, 0xB9, 0xD1, 0x88 }
 
static const symbol s_7_1 [2] = { 0xD1, 0x8C }
 
static const symbol s_7_2 [8] = { 0xD0, 0xB5, 0xD0, 0xB9, 0xD1, 0x88, 0xD0, 0xB5 }
 
static const symbol s_7_3 [2] = { 0xD0, 0xBD }
 
static const struct among a_7 [4]
 
static const unsigned char g_v [] = { 33, 65, 8, 232 }
 

Typedef Documentation

◆ SN_local

typedef struct SN_local SN_local

Definition at line 15 of file stem_UTF_8_russian.c.

Function Documentation

◆ r_adjectival()

static int r_adjectival ( struct SN_env z)
static

Definition at line 420 of file stem_UTF_8_russian.c.

420 {
421 int among_var;
422 {
423 int ret = r_adjective(z);
424 if (ret <= 0) return ret;
425 }
426 {
427 int v_1 = z->l - z->c;
428 z->ket = z->c;
429 among_var = find_among_b(z, a_2, 8, 0);
430 if (!among_var) { z->c = z->l - v_1; goto lab0; }
431 z->bra = z->c;
432 switch (among_var) {
433 case 1:
434 do {
435 int v_2 = z->l - z->c;
436 if (!(eq_s_b(z, 2, s_2))) goto lab1;
437 break;
438 lab1:
439 z->c = z->l - v_2;
440 if (!(eq_s_b(z, 2, s_3))) { z->c = z->l - v_1; goto lab0; }
441 } while (0);
442 {
443 int ret = slice_del(z);
444 if (ret < 0) return ret;
445 }
446 break;
447 case 2:
448 {
449 int ret = slice_del(z);
450 if (ret < 0) return ret;
451 }
452 break;
453 }
454 lab0:
455 ;
456 }
457 return 1;
458}
static const symbol s_2[]
static int r_adjective(struct SN_env *z)
static const symbol s_3[]
static const struct among a_2[8]
int ket
Definition: api.h:17
int c
Definition: api.h:17
int bra
Definition: api.h:17
int l
Definition: api.h:17
int find_among_b(struct SN_env *z, const struct among *v, int v_size, int(*call_among_func)(struct SN_env *))
Definition: utilities.c:315
int eq_s_b(struct SN_env *z, int s_size, const symbol *s)
Definition: utilities.c:236
SNOWBALL_ERR slice_del(struct SN_env *z)
Definition: utilities.c:443

References a_2, SN_env::bra, SN_env::c, eq_s_b(), find_among_b(), SN_env::ket, SN_env::l, r_adjective(), s_2, s_3, and slice_del().

Referenced by russian_UTF_8_stem().

◆ r_adjective()

static int r_adjective ( struct SN_env z)
static

Definition at line 409 of file stem_UTF_8_russian.c.

409 {
410 z->ket = z->c;
411 if (!find_among_b(z, a_1, 26, 0)) return 0;
412 z->bra = z->c;
413 {
414 int ret = slice_del(z);
415 if (ret < 0) return ret;
416 }
417 return 1;
418}
static const struct among a_1[26]

References a_1, SN_env::bra, SN_env::c, find_among_b(), SN_env::ket, and slice_del().

Referenced by r_adjectival().

◆ r_derivational()

static int r_derivational ( struct SN_env z)
static

Definition at line 514 of file stem_UTF_8_russian.c.

514 {
515 z->ket = z->c;
516 if (z->c - 5 <= z->lb || (z->p[z->c - 1] != 130 && z->p[z->c - 1] != 140)) return 0;
517 if (!find_among_b(z, a_6, 2, 0)) return 0;
518 z->bra = z->c;
519 {
520 int ret = r_R2(z);
521 if (ret <= 0) return ret;
522 }
523 {
524 int ret = slice_del(z);
525 if (ret < 0) return ret;
526 }
527 return 1;
528}
static int r_R2(struct SN_env *z)
static const struct among a_6[2]
int lb
Definition: api.h:17
symbol * p
Definition: api.h:16

References a_6, SN_env::bra, SN_env::c, find_among_b(), SN_env::ket, SN_env::lb, SN_env::p, r_R2(), and slice_del().

Referenced by russian_UTF_8_stem().

◆ r_mark_regions()

static int r_mark_regions ( struct SN_env z)
static

Definition at line 341 of file stem_UTF_8_russian.c.

341 {
342 ((SN_local *)z)->i_pV = z->l;
343 ((SN_local *)z)->i_p2 = z->l;
344 {
345 int v_1 = z->c;
346 {
347 int ret = out_grouping_U(z, g_v, 1072, 1103, 1);
348 if (ret < 0) goto lab0;
349 z->c += ret;
350 }
351 ((SN_local *)z)->i_pV = z->c;
352 {
353 int ret = in_grouping_U(z, g_v, 1072, 1103, 1);
354 if (ret < 0) goto lab0;
355 z->c += ret;
356 }
357 {
358 int ret = out_grouping_U(z, g_v, 1072, 1103, 1);
359 if (ret < 0) goto lab0;
360 z->c += ret;
361 }
362 {
363 int ret = in_grouping_U(z, g_v, 1072, 1103, 1);
364 if (ret < 0) goto lab0;
365 z->c += ret;
366 }
367 ((SN_local *)z)->i_p2 = z->c;
368 lab0:
369 z->c = v_1;
370 }
371 return 1;
372}
static const unsigned char g_v[]
int out_grouping_U(struct SN_env *z, const unsigned char *s, int min, int max, int repeat)
Definition: utilities.c:157
int in_grouping_U(struct SN_env *z, const unsigned char *s, int min, int max, int repeat)
Definition: utilities.c:133

References SN_env::c, g_v, in_grouping_U(), SN_env::l, and out_grouping_U().

Referenced by russian_UTF_8_stem().

◆ r_noun()

static int r_noun ( struct SN_env z)
static

Definition at line 503 of file stem_UTF_8_russian.c.

503 {
504 z->ket = z->c;
505 if (!find_among_b(z, a_5, 36, 0)) return 0;
506 z->bra = z->c;
507 {
508 int ret = slice_del(z);
509 if (ret < 0) return ret;
510 }
511 return 1;
512}
static const struct among a_5[36]

References a_5, SN_env::bra, SN_env::c, find_among_b(), SN_env::ket, and slice_del().

Referenced by russian_UTF_8_stem().

◆ r_perfective_gerund()

static int r_perfective_gerund ( struct SN_env z)
static

Definition at line 378 of file stem_UTF_8_russian.c.

378 {
379 int among_var;
380 z->ket = z->c;
381 among_var = find_among_b(z, a_0, 9, 0);
382 if (!among_var) return 0;
383 z->bra = z->c;
384 switch (among_var) {
385 case 1:
386 do {
387 int v_1 = z->l - z->c;
388 if (!(eq_s_b(z, 2, s_0))) goto lab0;
389 break;
390 lab0:
391 z->c = z->l - v_1;
392 if (!(eq_s_b(z, 2, s_1))) return 0;
393 } while (0);
394 {
395 int ret = slice_del(z);
396 if (ret < 0) return ret;
397 }
398 break;
399 case 2:
400 {
401 int ret = slice_del(z);
402 if (ret < 0) return ret;
403 }
404 break;
405 }
406 return 1;
407}
static const struct among a_0[9]
static const symbol s_1[]
static const symbol s_0[]

References a_0, SN_env::bra, SN_env::c, eq_s_b(), find_among_b(), SN_env::ket, SN_env::l, s_0, s_1, and slice_del().

Referenced by russian_UTF_8_stem().

◆ r_R2()

static int r_R2 ( struct SN_env z)
static

Definition at line 374 of file stem_UTF_8_russian.c.

374 {
375 return ((SN_local *)z)->i_p2 <= z->c;
376}

References SN_env::c.

Referenced by r_derivational().

◆ r_reflexive()

static int r_reflexive ( struct SN_env z)
static

Definition at line 460 of file stem_UTF_8_russian.c.

460 {
461 z->ket = z->c;
462 if (z->c - 3 <= z->lb || (z->p[z->c - 1] != 140 && z->p[z->c - 1] != 143)) return 0;
463 if (!find_among_b(z, a_3, 2, 0)) return 0;
464 z->bra = z->c;
465 {
466 int ret = slice_del(z);
467 if (ret < 0) return ret;
468 }
469 return 1;
470}
static const struct among a_3[2]

References a_3, SN_env::bra, SN_env::c, find_among_b(), SN_env::ket, SN_env::lb, SN_env::p, and slice_del().

Referenced by russian_UTF_8_stem().

◆ r_tidy_up()

static int r_tidy_up ( struct SN_env z)
static

Definition at line 530 of file stem_UTF_8_russian.c.

530 {
531 int among_var;
532 z->ket = z->c;
533 among_var = find_among_b(z, a_7, 4, 0);
534 if (!among_var) return 0;
535 z->bra = z->c;
536 switch (among_var) {
537 case 1:
538 {
539 int ret = slice_del(z);
540 if (ret < 0) return ret;
541 }
542 z->ket = z->c;
543 if (!(eq_s_b(z, 2, s_6))) return 0;
544 z->bra = z->c;
545 if (!(eq_s_b(z, 2, s_7))) return 0;
546 {
547 int ret = slice_del(z);
548 if (ret < 0) return ret;
549 }
550 break;
551 case 2:
552 if (!(eq_s_b(z, 2, s_8))) return 0;
553 {
554 int ret = slice_del(z);
555 if (ret < 0) return ret;
556 }
557 break;
558 case 3:
559 {
560 int ret = slice_del(z);
561 if (ret < 0) return ret;
562 }
563 break;
564 }
565 return 1;
566}
static const struct among a_7[4]
static const symbol s_6[]
static const symbol s_7[]
static const symbol s_8[]

References a_7, SN_env::bra, SN_env::c, eq_s_b(), find_among_b(), SN_env::ket, s_6, s_7, s_8, and slice_del().

Referenced by russian_UTF_8_stem().

◆ r_verb()

static int r_verb ( struct SN_env z)
static

Definition at line 472 of file stem_UTF_8_russian.c.

472 {
473 int among_var;
474 z->ket = z->c;
475 among_var = find_among_b(z, a_4, 46, 0);
476 if (!among_var) return 0;
477 z->bra = z->c;
478 switch (among_var) {
479 case 1:
480 do {
481 int v_1 = z->l - z->c;
482 if (!(eq_s_b(z, 2, s_4))) goto lab0;
483 break;
484 lab0:
485 z->c = z->l - v_1;
486 if (!(eq_s_b(z, 2, s_5))) return 0;
487 } while (0);
488 {
489 int ret = slice_del(z);
490 if (ret < 0) return ret;
491 }
492 break;
493 case 2:
494 {
495 int ret = slice_del(z);
496 if (ret < 0) return ret;
497 }
498 break;
499 }
500 return 1;
501}
static const symbol s_4[]
static const struct among a_4[46]
static const symbol s_5[]

References a_4, SN_env::bra, SN_env::c, eq_s_b(), find_among_b(), SN_env::ket, SN_env::l, s_4, s_5, and slice_del().

Referenced by russian_UTF_8_stem().

◆ russian_UTF_8_close_env()

void russian_UTF_8_close_env ( struct SN_env z)

Definition at line 701 of file stem_UTF_8_russian.c.

701 {
702 SN_delete_env(z);
703}
void SN_delete_env(struct SN_env *z)
Definition: api.c:18

References SN_delete_env().

◆ russian_UTF_8_create_env()

struct SN_env * russian_UTF_8_create_env ( void  )

Definition at line 692 of file stem_UTF_8_russian.c.

692 {
693 struct SN_env * z = SN_new_env(sizeof(SN_local));
694 if (z) {
695 ((SN_local *)z)->i_p2 = 0;
696 ((SN_local *)z)->i_pV = 0;
697 }
698 return z;
699}
struct SN_env * SN_new_env(int alloc_size)
Definition: api.c:5
Definition: api.h:15

References SN_new_env().

◆ russian_UTF_8_stem()

int russian_UTF_8_stem ( struct SN_env z)

Definition at line 568 of file stem_UTF_8_russian.c.

568 {
569 {
570 int v_1 = z->c;
571 while (1) {
572 int v_2 = z->c;
573 while (1) {
574 int v_3 = z->c;
575 z->bra = z->c;
576 if (!(eq_s(z, 2, s_9))) goto lab2;
577 z->ket = z->c;
578 z->c = v_3;
579 break;
580 lab2:
581 z->c = v_3;
582 {
583 int ret = skip_utf8(z->p, z->c, z->l, 1);
584 if (ret < 0) goto lab1;
585 z->c = ret;
586 }
587 }
588 {
589 int ret = slice_from_s(z, 2, s_10);
590 if (ret < 0) return ret;
591 }
592 continue;
593 lab1:
594 z->c = v_2;
595 break;
596 }
597 z->c = v_1;
598 }
599 {
600 int ret = r_mark_regions(z);
601 if (ret < 0) return ret;
602 }
603 z->lb = z->c; z->c = z->l;
604 {
605 int v_4;
606 if (z->c < ((SN_local *)z)->i_pV) return 0;
607 v_4 = z->lb; z->lb = ((SN_local *)z)->i_pV;
608 {
609 int v_5 = z->l - z->c;
610 do {
611 int v_6 = z->l - z->c;
612 {
613 int ret = r_perfective_gerund(z);
614 if (ret == 0) goto lab4;
615 if (ret < 0) return ret;
616 }
617 break;
618 lab4:
619 z->c = z->l - v_6;
620 {
621 int v_7 = z->l - z->c;
622 {
623 int ret = r_reflexive(z);
624 if (ret == 0) { z->c = z->l - v_7; goto lab5; }
625 if (ret < 0) return ret;
626 }
627 lab5:
628 ;
629 }
630 do {
631 int v_8 = z->l - z->c;
632 {
633 int ret = r_adjectival(z);
634 if (ret == 0) goto lab6;
635 if (ret < 0) return ret;
636 }
637 break;
638 lab6:
639 z->c = z->l - v_8;
640 {
641 int ret = r_verb(z);
642 if (ret == 0) goto lab7;
643 if (ret < 0) return ret;
644 }
645 break;
646 lab7:
647 z->c = z->l - v_8;
648 {
649 int ret = r_noun(z);
650 if (ret == 0) goto lab3;
651 if (ret < 0) return ret;
652 }
653 } while (0);
654 } while (0);
655 lab3:
656 z->c = z->l - v_5;
657 }
658 {
659 int v_9 = z->l - z->c;
660 z->ket = z->c;
661 if (!(eq_s_b(z, 2, s_11))) { z->c = z->l - v_9; goto lab8; }
662 z->bra = z->c;
663 {
664 int ret = slice_del(z);
665 if (ret < 0) return ret;
666 }
667 lab8:
668 ;
669 }
670 {
671 int v_10 = z->l - z->c;
672 {
673 int ret = r_derivational(z);
674 if (ret < 0) return ret;
675 }
676 z->c = z->l - v_10;
677 }
678 {
679 int v_11 = z->l - z->c;
680 {
681 int ret = r_tidy_up(z);
682 if (ret < 0) return ret;
683 }
684 z->c = z->l - v_11;
685 }
686 z->lb = v_4;
687 }
688 z->c = z->lb;
689 return 1;
690}
static int r_tidy_up(struct SN_env *z)
static int r_adjectival(struct SN_env *z)
static int r_verb(struct SN_env *z)
static int r_derivational(struct SN_env *z)
static int r_perfective_gerund(struct SN_env *z)
static const symbol s_10[]
static int r_mark_regions(struct SN_env *z)
static const symbol s_11[]
static int r_reflexive(struct SN_env *z)
static const symbol s_9[]
static int r_noun(struct SN_env *z)
SNOWBALL_ERR slice_from_s(struct SN_env *z, int s_size, const symbol *s)
Definition: utilities.c:432
int eq_s(struct SN_env *z, int s_size, const symbol *s)
Definition: utilities.c:231
int skip_utf8(const symbol *p, int c, int limit, int n)
Definition: utilities.c:43

References SN_env::bra, SN_env::c, eq_s(), eq_s_b(), SN_local::i_pV, SN_env::ket, SN_env::l, SN_env::lb, SN_env::p, r_adjectival(), r_derivational(), r_mark_regions(), r_noun(), r_perfective_gerund(), r_reflexive(), r_tidy_up(), r_verb(), s_10, s_11, s_9, skip_utf8(), slice_del(), and slice_from_s().

Variable Documentation

◆ a_0

const struct among a_0[9]
static
Initial value:
= {
{ 10, s_0_0, 0, 1, 0},
{ 12, s_0_1, -1, 2, 0},
{ 12, s_0_2, -2, 2, 0},
{ 2, s_0_3, 0, 1, 0},
{ 4, s_0_4, -1, 2, 0},
{ 4, s_0_5, -2, 2, 0},
{ 6, s_0_6, 0, 1, 0},
{ 8, s_0_7, -1, 2, 0},
{ 8, s_0_8, -2, 2, 0}
}
static const symbol s_0_0[10]
static const symbol s_0_1[12]
static const symbol s_0_7[8]
static const symbol s_0_5[4]
static const symbol s_0_8[8]
static const symbol s_0_4[4]
static const symbol s_0_2[12]
static const symbol s_0_6[6]
static const symbol s_0_3[2]

Definition at line 58 of file stem_UTF_8_russian.c.

Referenced by r_perfective_gerund().

◆ a_1

const struct among a_1[26]
static
Initial value:
= {
{ 6, s_1_0, 0, 1, 0},
{ 6, s_1_1, 0, 1, 0},
{ 4, s_1_2, 0, 1, 0},
{ 4, s_1_3, 0, 1, 0},
{ 4, s_1_4, 0, 1, 0},
{ 4, s_1_5, 0, 1, 0},
{ 4, s_1_6, 0, 1, 0},
{ 4, s_1_7, 0, 1, 0},
{ 4, s_1_8, 0, 1, 0},
{ 4, s_1_9, 0, 1, 0},
{ 4, s_1_10, 0, 1, 0},
{ 4, s_1_11, 0, 1, 0},
{ 4, s_1_12, 0, 1, 0},
{ 4, s_1_13, 0, 1, 0},
{ 6, s_1_14, 0, 1, 0},
{ 6, s_1_15, 0, 1, 0},
{ 4, s_1_16, 0, 1, 0},
{ 4, s_1_17, 0, 1, 0},
{ 4, s_1_18, 0, 1, 0},
{ 4, s_1_19, 0, 1, 0},
{ 4, s_1_20, 0, 1, 0},
{ 4, s_1_21, 0, 1, 0},
{ 4, s_1_22, 0, 1, 0},
{ 4, s_1_23, 0, 1, 0},
{ 6, s_1_24, 0, 1, 0},
{ 6, s_1_25, 0, 1, 0}
}
static const symbol s_1_5[4]
static const symbol s_1_3[4]
static const symbol s_1_4[4]
static const symbol s_1_18[4]
static const symbol s_1_1[6]
static const symbol s_1_17[4]
static const symbol s_1_20[4]
static const symbol s_1_23[4]
static const symbol s_1_25[6]
static const symbol s_1_10[4]
static const symbol s_1_24[6]
static const symbol s_1_11[4]
static const symbol s_1_16[4]
static const symbol s_1_15[6]
static const symbol s_1_21[4]
static const symbol s_1_9[4]
static const symbol s_1_7[4]
static const symbol s_1_0[6]
static const symbol s_1_6[4]
static const symbol s_1_2[4]
static const symbol s_1_12[4]
static const symbol s_1_22[4]
static const symbol s_1_8[4]
static const symbol s_1_13[4]
static const symbol s_1_19[4]
static const symbol s_1_14[6]

Definition at line 96 of file stem_UTF_8_russian.c.

Referenced by r_adjective().

◆ a_2

const struct among a_2[8]
static
Initial value:
= {
{ 4, s_2_0, 0, 1, 0},
{ 6, s_2_1, -1, 2, 0},
{ 6, s_2_2, -2, 2, 0},
{ 2, s_2_3, 0, 1, 0},
{ 4, s_2_4, -1, 1, 0},
{ 6, s_2_5, -1, 2, 0},
{ 4, s_2_6, 0, 1, 0},
{ 4, s_2_7, 0, 1, 0}
}
static const symbol s_2_4[4]
static const symbol s_2_7[4]
static const symbol s_2_3[2]
static const symbol s_2_6[4]
static const symbol s_2_0[4]
static const symbol s_2_2[6]
static const symbol s_2_1[6]
static const symbol s_2_5[6]

Definition at line 133 of file stem_UTF_8_russian.c.

Referenced by r_adjectival().

◆ a_3

const struct among a_3[2]
static
Initial value:
= {
{ 4, s_3_0, 0, 1, 0},
{ 4, s_3_1, 0, 1, 0}
}
static const symbol s_3_0[4]
static const symbol s_3_1[4]

Definition at line 146 of file stem_UTF_8_russian.c.

Referenced by r_reflexive().

◆ a_4

const struct among a_4[46]
static

Definition at line 197 of file stem_UTF_8_russian.c.

Referenced by r_verb().

◆ a_5

const struct among a_5[36]
static

Definition at line 282 of file stem_UTF_8_russian.c.

Referenced by r_noun().

◆ a_6

const struct among a_6[2]
static
Initial value:
= {
{ 6, s_6_0, 0, 1, 0},
{ 8, s_6_1, 0, 1, 0}
}
static const symbol s_6_0[6]
static const symbol s_6_1[8]

Definition at line 323 of file stem_UTF_8_russian.c.

Referenced by r_derivational().

◆ a_7

const struct among a_7[4]
static
Initial value:
= {
{ 6, s_7_0, 0, 1, 0},
{ 2, s_7_1, 0, 3, 0},
{ 8, s_7_2, 0, 1, 0},
{ 2, s_7_3, 0, 2, 0}
}
static const symbol s_7_3[2]
static const symbol s_7_2[8]
static const symbol s_7_1[2]
static const symbol s_7_0[6]

Definition at line 332 of file stem_UTF_8_russian.c.

Referenced by r_tidy_up().

◆ g_v

const unsigned char g_v[] = { 33, 65, 8, 232 }
static

Definition at line 339 of file stem_UTF_8_russian.c.

Referenced by r_mark_regions().

◆ s_0

const symbol s_0[] = { 0xD0, 0xB0 }
static

Definition at line 36 of file stem_UTF_8_russian.c.

Referenced by r_perfective_gerund().

◆ s_0_0

const symbol s_0_0[10] = { 0xD0, 0xB2, 0xD1, 0x88, 0xD0, 0xB8, 0xD1, 0x81, 0xD1, 0x8C }
static

Definition at line 49 of file stem_UTF_8_russian.c.

◆ s_0_1

const symbol s_0_1[12] = { 0xD1, 0x8B, 0xD0, 0xB2, 0xD1, 0x88, 0xD0, 0xB8, 0xD1, 0x81, 0xD1, 0x8C }
static

Definition at line 50 of file stem_UTF_8_russian.c.

◆ s_0_2

const symbol s_0_2[12] = { 0xD0, 0xB8, 0xD0, 0xB2, 0xD1, 0x88, 0xD0, 0xB8, 0xD1, 0x81, 0xD1, 0x8C }
static

Definition at line 51 of file stem_UTF_8_russian.c.

◆ s_0_3

const symbol s_0_3[2] = { 0xD0, 0xB2 }
static

Definition at line 52 of file stem_UTF_8_russian.c.

◆ s_0_4

const symbol s_0_4[4] = { 0xD1, 0x8B, 0xD0, 0xB2 }
static

Definition at line 53 of file stem_UTF_8_russian.c.

◆ s_0_5

const symbol s_0_5[4] = { 0xD0, 0xB8, 0xD0, 0xB2 }
static

Definition at line 54 of file stem_UTF_8_russian.c.

◆ s_0_6

const symbol s_0_6[6] = { 0xD0, 0xB2, 0xD1, 0x88, 0xD0, 0xB8 }
static

Definition at line 55 of file stem_UTF_8_russian.c.

◆ s_0_7

const symbol s_0_7[8] = { 0xD1, 0x8B, 0xD0, 0xB2, 0xD1, 0x88, 0xD0, 0xB8 }
static

Definition at line 56 of file stem_UTF_8_russian.c.

◆ s_0_8

const symbol s_0_8[8] = { 0xD0, 0xB8, 0xD0, 0xB2, 0xD1, 0x88, 0xD0, 0xB8 }
static

Definition at line 57 of file stem_UTF_8_russian.c.

◆ s_1

const symbol s_1[] = { 0xD1, 0x8F }
static

Definition at line 37 of file stem_UTF_8_russian.c.

Referenced by r_perfective_gerund().

◆ s_10

const symbol s_10[] = { 0xD0, 0xB5 }
static

Definition at line 46 of file stem_UTF_8_russian.c.

Referenced by russian_UTF_8_stem().

◆ s_11

const symbol s_11[] = { 0xD0, 0xB8 }
static

Definition at line 47 of file stem_UTF_8_russian.c.

Referenced by russian_UTF_8_stem().

◆ s_1_0

const symbol s_1_0[6] = { 0xD0, 0xB5, 0xD0, 0xBC, 0xD1, 0x83 }
static

Definition at line 70 of file stem_UTF_8_russian.c.

◆ s_1_1

const symbol s_1_1[6] = { 0xD0, 0xBE, 0xD0, 0xBC, 0xD1, 0x83 }
static

Definition at line 71 of file stem_UTF_8_russian.c.

◆ s_1_10

const symbol s_1_10[4] = { 0xD1, 0x8B, 0xD0, 0xB5 }
static

Definition at line 80 of file stem_UTF_8_russian.c.

◆ s_1_11

const symbol s_1_11[4] = { 0xD0, 0xB5, 0xD0, 0xB5 }
static

Definition at line 81 of file stem_UTF_8_russian.c.

◆ s_1_12

const symbol s_1_12[4] = { 0xD0, 0xB8, 0xD0, 0xB5 }
static

Definition at line 82 of file stem_UTF_8_russian.c.

◆ s_1_13

const symbol s_1_13[4] = { 0xD0, 0xBE, 0xD0, 0xB5 }
static

Definition at line 83 of file stem_UTF_8_russian.c.

◆ s_1_14

const symbol s_1_14[6] = { 0xD1, 0x8B, 0xD0, 0xBC, 0xD0, 0xB8 }
static

Definition at line 84 of file stem_UTF_8_russian.c.

◆ s_1_15

const symbol s_1_15[6] = { 0xD0, 0xB8, 0xD0, 0xBC, 0xD0, 0xB8 }
static

Definition at line 85 of file stem_UTF_8_russian.c.

◆ s_1_16

const symbol s_1_16[4] = { 0xD1, 0x8B, 0xD0, 0xB9 }
static

Definition at line 86 of file stem_UTF_8_russian.c.

◆ s_1_17

const symbol s_1_17[4] = { 0xD0, 0xB5, 0xD0, 0xB9 }
static

Definition at line 87 of file stem_UTF_8_russian.c.

◆ s_1_18

const symbol s_1_18[4] = { 0xD0, 0xB8, 0xD0, 0xB9 }
static

Definition at line 88 of file stem_UTF_8_russian.c.

◆ s_1_19

const symbol s_1_19[4] = { 0xD0, 0xBE, 0xD0, 0xB9 }
static

Definition at line 89 of file stem_UTF_8_russian.c.

◆ s_1_2

const symbol s_1_2[4] = { 0xD1, 0x8B, 0xD1, 0x85 }
static

Definition at line 72 of file stem_UTF_8_russian.c.

◆ s_1_20

const symbol s_1_20[4] = { 0xD1, 0x8B, 0xD0, 0xBC }
static

Definition at line 90 of file stem_UTF_8_russian.c.

◆ s_1_21

const symbol s_1_21[4] = { 0xD0, 0xB5, 0xD0, 0xBC }
static

Definition at line 91 of file stem_UTF_8_russian.c.

◆ s_1_22

const symbol s_1_22[4] = { 0xD0, 0xB8, 0xD0, 0xBC }
static

Definition at line 92 of file stem_UTF_8_russian.c.

◆ s_1_23

const symbol s_1_23[4] = { 0xD0, 0xBE, 0xD0, 0xBC }
static

Definition at line 93 of file stem_UTF_8_russian.c.

◆ s_1_24

const symbol s_1_24[6] = { 0xD0, 0xB5, 0xD0, 0xB3, 0xD0, 0xBE }
static

Definition at line 94 of file stem_UTF_8_russian.c.

◆ s_1_25

const symbol s_1_25[6] = { 0xD0, 0xBE, 0xD0, 0xB3, 0xD0, 0xBE }
static

Definition at line 95 of file stem_UTF_8_russian.c.

◆ s_1_3

const symbol s_1_3[4] = { 0xD0, 0xB8, 0xD1, 0x85 }
static

Definition at line 73 of file stem_UTF_8_russian.c.

◆ s_1_4

const symbol s_1_4[4] = { 0xD1, 0x83, 0xD1, 0x8E }
static

Definition at line 74 of file stem_UTF_8_russian.c.

◆ s_1_5

const symbol s_1_5[4] = { 0xD1, 0x8E, 0xD1, 0x8E }
static

Definition at line 75 of file stem_UTF_8_russian.c.

◆ s_1_6

const symbol s_1_6[4] = { 0xD0, 0xB5, 0xD1, 0x8E }
static

Definition at line 76 of file stem_UTF_8_russian.c.

◆ s_1_7

const symbol s_1_7[4] = { 0xD0, 0xBE, 0xD1, 0x8E }
static

Definition at line 77 of file stem_UTF_8_russian.c.

◆ s_1_8

const symbol s_1_8[4] = { 0xD1, 0x8F, 0xD1, 0x8F }
static

Definition at line 78 of file stem_UTF_8_russian.c.

◆ s_1_9

const symbol s_1_9[4] = { 0xD0, 0xB0, 0xD1, 0x8F }
static

Definition at line 79 of file stem_UTF_8_russian.c.

◆ s_2

const symbol s_2[] = { 0xD0, 0xB0 }
static

Definition at line 38 of file stem_UTF_8_russian.c.

Referenced by r_adjectival().

◆ s_2_0

const symbol s_2_0[4] = { 0xD0, 0xB2, 0xD1, 0x88 }
static

Definition at line 125 of file stem_UTF_8_russian.c.

◆ s_2_1

const symbol s_2_1[6] = { 0xD1, 0x8B, 0xD0, 0xB2, 0xD1, 0x88 }
static

Definition at line 126 of file stem_UTF_8_russian.c.

◆ s_2_2

const symbol s_2_2[6] = { 0xD0, 0xB8, 0xD0, 0xB2, 0xD1, 0x88 }
static

Definition at line 127 of file stem_UTF_8_russian.c.

◆ s_2_3

const symbol s_2_3[2] = { 0xD1, 0x89 }
static

Definition at line 128 of file stem_UTF_8_russian.c.

◆ s_2_4

const symbol s_2_4[4] = { 0xD1, 0x8E, 0xD1, 0x89 }
static

Definition at line 129 of file stem_UTF_8_russian.c.

◆ s_2_5

const symbol s_2_5[6] = { 0xD1, 0x83, 0xD1, 0x8E, 0xD1, 0x89 }
static

Definition at line 130 of file stem_UTF_8_russian.c.

◆ s_2_6

const symbol s_2_6[4] = { 0xD0, 0xB5, 0xD0, 0xBC }
static

Definition at line 131 of file stem_UTF_8_russian.c.

◆ s_2_7

const symbol s_2_7[4] = { 0xD0, 0xBD, 0xD0, 0xBD }
static

Definition at line 132 of file stem_UTF_8_russian.c.

◆ s_3

const symbol s_3[] = { 0xD1, 0x8F }
static

Definition at line 39 of file stem_UTF_8_russian.c.

Referenced by r_adjectival().

◆ s_3_0

const symbol s_3_0[4] = { 0xD1, 0x81, 0xD1, 0x8C }
static

Definition at line 144 of file stem_UTF_8_russian.c.

◆ s_3_1

const symbol s_3_1[4] = { 0xD1, 0x81, 0xD1, 0x8F }
static

Definition at line 145 of file stem_UTF_8_russian.c.

◆ s_4

const symbol s_4[] = { 0xD0, 0xB0 }
static

Definition at line 40 of file stem_UTF_8_russian.c.

Referenced by r_verb().

◆ s_4_0

const symbol s_4_0[4] = { 0xD1, 0x8B, 0xD1, 0x82 }
static

Definition at line 151 of file stem_UTF_8_russian.c.

◆ s_4_1

const symbol s_4_1[4] = { 0xD1, 0x8E, 0xD1, 0x82 }
static

Definition at line 152 of file stem_UTF_8_russian.c.

◆ s_4_10

const symbol s_4_10[6] = { 0xD1, 0x8B, 0xD1, 0x82, 0xD1, 0x8C }
static

Definition at line 161 of file stem_UTF_8_russian.c.

◆ s_4_11

const symbol s_4_11[6] = { 0xD0, 0xB8, 0xD1, 0x82, 0xD1, 0x8C }
static

Definition at line 162 of file stem_UTF_8_russian.c.

◆ s_4_12

const symbol s_4_12[6] = { 0xD0, 0xB5, 0xD1, 0x88, 0xD1, 0x8C }
static

Definition at line 163 of file stem_UTF_8_russian.c.

◆ s_4_13

const symbol s_4_13[6] = { 0xD0, 0xB8, 0xD1, 0x88, 0xD1, 0x8C }
static

Definition at line 164 of file stem_UTF_8_russian.c.

◆ s_4_14

const symbol s_4_14[2] = { 0xD1, 0x8E }
static

Definition at line 165 of file stem_UTF_8_russian.c.

◆ s_4_15

const symbol s_4_15[4] = { 0xD1, 0x83, 0xD1, 0x8E }
static

Definition at line 166 of file stem_UTF_8_russian.c.

◆ s_4_16

const symbol s_4_16[4] = { 0xD0, 0xBB, 0xD0, 0xB0 }
static

Definition at line 167 of file stem_UTF_8_russian.c.

◆ s_4_17

const symbol s_4_17[6] = { 0xD1, 0x8B, 0xD0, 0xBB, 0xD0, 0xB0 }
static

Definition at line 168 of file stem_UTF_8_russian.c.

◆ s_4_18

const symbol s_4_18[6] = { 0xD0, 0xB8, 0xD0, 0xBB, 0xD0, 0xB0 }
static

Definition at line 169 of file stem_UTF_8_russian.c.

◆ s_4_19

const symbol s_4_19[4] = { 0xD0, 0xBD, 0xD0, 0xB0 }
static

Definition at line 170 of file stem_UTF_8_russian.c.

◆ s_4_2

const symbol s_4_2[6] = { 0xD1, 0x83, 0xD1, 0x8E, 0xD1, 0x82 }
static

Definition at line 153 of file stem_UTF_8_russian.c.

◆ s_4_20

const symbol s_4_20[6] = { 0xD0, 0xB5, 0xD0, 0xBD, 0xD0, 0xB0 }
static

Definition at line 171 of file stem_UTF_8_russian.c.

◆ s_4_21

const symbol s_4_21[6] = { 0xD0, 0xB5, 0xD1, 0x82, 0xD0, 0xB5 }
static

Definition at line 172 of file stem_UTF_8_russian.c.

◆ s_4_22

const symbol s_4_22[6] = { 0xD0, 0xB8, 0xD1, 0x82, 0xD0, 0xB5 }
static

Definition at line 173 of file stem_UTF_8_russian.c.

◆ s_4_23

const symbol s_4_23[6] = { 0xD0, 0xB9, 0xD1, 0x82, 0xD0, 0xB5 }
static

Definition at line 174 of file stem_UTF_8_russian.c.

◆ s_4_24

const symbol s_4_24[8] = { 0xD1, 0x83, 0xD0, 0xB9, 0xD1, 0x82, 0xD0, 0xB5 }
static

Definition at line 175 of file stem_UTF_8_russian.c.

◆ s_4_25

const symbol s_4_25[8] = { 0xD0, 0xB5, 0xD0, 0xB9, 0xD1, 0x82, 0xD0, 0xB5 }
static

Definition at line 176 of file stem_UTF_8_russian.c.

◆ s_4_26

const symbol s_4_26[4] = { 0xD0, 0xBB, 0xD0, 0xB8 }
static

Definition at line 177 of file stem_UTF_8_russian.c.

◆ s_4_27

const symbol s_4_27[6] = { 0xD1, 0x8B, 0xD0, 0xBB, 0xD0, 0xB8 }
static

Definition at line 178 of file stem_UTF_8_russian.c.

◆ s_4_28

const symbol s_4_28[6] = { 0xD0, 0xB8, 0xD0, 0xBB, 0xD0, 0xB8 }
static

Definition at line 179 of file stem_UTF_8_russian.c.

◆ s_4_29

const symbol s_4_29[2] = { 0xD0, 0xB9 }
static

Definition at line 180 of file stem_UTF_8_russian.c.

◆ s_4_3

const symbol s_4_3[4] = { 0xD1, 0x8F, 0xD1, 0x82 }
static

Definition at line 154 of file stem_UTF_8_russian.c.

◆ s_4_30

const symbol s_4_30[4] = { 0xD1, 0x83, 0xD0, 0xB9 }
static

Definition at line 181 of file stem_UTF_8_russian.c.

◆ s_4_31

const symbol s_4_31[4] = { 0xD0, 0xB5, 0xD0, 0xB9 }
static

Definition at line 182 of file stem_UTF_8_russian.c.

◆ s_4_32

const symbol s_4_32[2] = { 0xD0, 0xBB }
static

Definition at line 183 of file stem_UTF_8_russian.c.

◆ s_4_33

const symbol s_4_33[4] = { 0xD1, 0x8B, 0xD0, 0xBB }
static

Definition at line 184 of file stem_UTF_8_russian.c.

◆ s_4_34

const symbol s_4_34[4] = { 0xD0, 0xB8, 0xD0, 0xBB }
static

Definition at line 185 of file stem_UTF_8_russian.c.

◆ s_4_35

const symbol s_4_35[4] = { 0xD1, 0x8B, 0xD0, 0xBC }
static

Definition at line 186 of file stem_UTF_8_russian.c.

◆ s_4_36

const symbol s_4_36[4] = { 0xD0, 0xB5, 0xD0, 0xBC }
static

Definition at line 187 of file stem_UTF_8_russian.c.

◆ s_4_37

const symbol s_4_37[4] = { 0xD0, 0xB8, 0xD0, 0xBC }
static

Definition at line 188 of file stem_UTF_8_russian.c.

◆ s_4_38

const symbol s_4_38[2] = { 0xD0, 0xBD }
static

Definition at line 189 of file stem_UTF_8_russian.c.

◆ s_4_39

const symbol s_4_39[4] = { 0xD0, 0xB5, 0xD0, 0xBD }
static

Definition at line 190 of file stem_UTF_8_russian.c.

◆ s_4_4

const symbol s_4_4[4] = { 0xD0, 0xB5, 0xD1, 0x82 }
static

Definition at line 155 of file stem_UTF_8_russian.c.

◆ s_4_40

const symbol s_4_40[4] = { 0xD0, 0xBB, 0xD0, 0xBE }
static

Definition at line 191 of file stem_UTF_8_russian.c.

◆ s_4_41

const symbol s_4_41[6] = { 0xD1, 0x8B, 0xD0, 0xBB, 0xD0, 0xBE }
static

Definition at line 192 of file stem_UTF_8_russian.c.

◆ s_4_42

const symbol s_4_42[6] = { 0xD0, 0xB8, 0xD0, 0xBB, 0xD0, 0xBE }
static

Definition at line 193 of file stem_UTF_8_russian.c.

◆ s_4_43

const symbol s_4_43[4] = { 0xD0, 0xBD, 0xD0, 0xBE }
static

Definition at line 194 of file stem_UTF_8_russian.c.

◆ s_4_44

const symbol s_4_44[6] = { 0xD0, 0xB5, 0xD0, 0xBD, 0xD0, 0xBE }
static

Definition at line 195 of file stem_UTF_8_russian.c.

◆ s_4_45

const symbol s_4_45[6] = { 0xD0, 0xBD, 0xD0, 0xBD, 0xD0, 0xBE }
static

Definition at line 196 of file stem_UTF_8_russian.c.

◆ s_4_5

const symbol s_4_5[6] = { 0xD1, 0x83, 0xD0, 0xB5, 0xD1, 0x82 }
static

Definition at line 156 of file stem_UTF_8_russian.c.

◆ s_4_6

const symbol s_4_6[4] = { 0xD0, 0xB8, 0xD1, 0x82 }
static

Definition at line 157 of file stem_UTF_8_russian.c.

◆ s_4_7

const symbol s_4_7[4] = { 0xD0, 0xBD, 0xD1, 0x8B }
static

Definition at line 158 of file stem_UTF_8_russian.c.

◆ s_4_8

const symbol s_4_8[6] = { 0xD0, 0xB5, 0xD0, 0xBD, 0xD1, 0x8B }
static

Definition at line 159 of file stem_UTF_8_russian.c.

◆ s_4_9

const symbol s_4_9[4] = { 0xD1, 0x82, 0xD1, 0x8C }
static

Definition at line 160 of file stem_UTF_8_russian.c.

◆ s_5

const symbol s_5[] = { 0xD1, 0x8F }
static

Definition at line 41 of file stem_UTF_8_russian.c.

Referenced by r_verb().

◆ s_5_0

const symbol s_5_0[2] = { 0xD1, 0x83 }
static

Definition at line 246 of file stem_UTF_8_russian.c.

◆ s_5_1

const symbol s_5_1[4] = { 0xD1, 0x8F, 0xD1, 0x85 }
static

Definition at line 247 of file stem_UTF_8_russian.c.

◆ s_5_10

const symbol s_5_10[4] = { 0xD1, 0x8C, 0xD1, 0x8F }
static

Definition at line 256 of file stem_UTF_8_russian.c.

◆ s_5_11

const symbol s_5_11[4] = { 0xD0, 0xB8, 0xD1, 0x8F }
static

Definition at line 257 of file stem_UTF_8_russian.c.

◆ s_5_12

const symbol s_5_12[2] = { 0xD0, 0xB0 }
static

Definition at line 258 of file stem_UTF_8_russian.c.

◆ s_5_13

const symbol s_5_13[4] = { 0xD0, 0xB5, 0xD0, 0xB2 }
static

Definition at line 259 of file stem_UTF_8_russian.c.

◆ s_5_14

const symbol s_5_14[4] = { 0xD0, 0xBE, 0xD0, 0xB2 }
static

Definition at line 260 of file stem_UTF_8_russian.c.

◆ s_5_15

const symbol s_5_15[2] = { 0xD0, 0xB5 }
static

Definition at line 261 of file stem_UTF_8_russian.c.

◆ s_5_16

const symbol s_5_16[4] = { 0xD1, 0x8C, 0xD0, 0xB5 }
static

Definition at line 262 of file stem_UTF_8_russian.c.

◆ s_5_17

const symbol s_5_17[4] = { 0xD0, 0xB8, 0xD0, 0xB5 }
static

Definition at line 263 of file stem_UTF_8_russian.c.

◆ s_5_18

const symbol s_5_18[2] = { 0xD0, 0xB8 }
static

Definition at line 264 of file stem_UTF_8_russian.c.

◆ s_5_19

const symbol s_5_19[4] = { 0xD0, 0xB5, 0xD0, 0xB8 }
static

Definition at line 265 of file stem_UTF_8_russian.c.

◆ s_5_2

const symbol s_5_2[6] = { 0xD0, 0xB8, 0xD1, 0x8F, 0xD1, 0x85 }
static

Definition at line 248 of file stem_UTF_8_russian.c.

◆ s_5_20

const symbol s_5_20[4] = { 0xD0, 0xB8, 0xD0, 0xB8 }
static

Definition at line 266 of file stem_UTF_8_russian.c.

◆ s_5_21

const symbol s_5_21[6] = { 0xD1, 0x8F, 0xD0, 0xBC, 0xD0, 0xB8 }
static

Definition at line 267 of file stem_UTF_8_russian.c.

◆ s_5_22

const symbol s_5_22[8] = { 0xD0, 0xB8, 0xD1, 0x8F, 0xD0, 0xBC, 0xD0, 0xB8 }
static

Definition at line 268 of file stem_UTF_8_russian.c.

◆ s_5_23

const symbol s_5_23[6] = { 0xD0, 0xB0, 0xD0, 0xBC, 0xD0, 0xB8 }
static

Definition at line 269 of file stem_UTF_8_russian.c.

◆ s_5_24

const symbol s_5_24[2] = { 0xD0, 0xB9 }
static

Definition at line 270 of file stem_UTF_8_russian.c.

◆ s_5_25

const symbol s_5_25[4] = { 0xD0, 0xB5, 0xD0, 0xB9 }
static

Definition at line 271 of file stem_UTF_8_russian.c.

◆ s_5_26

const symbol s_5_26[6] = { 0xD0, 0xB8, 0xD0, 0xB5, 0xD0, 0xB9 }
static

Definition at line 272 of file stem_UTF_8_russian.c.

◆ s_5_27

const symbol s_5_27[4] = { 0xD0, 0xB8, 0xD0, 0xB9 }
static

Definition at line 273 of file stem_UTF_8_russian.c.

◆ s_5_28

const symbol s_5_28[4] = { 0xD0, 0xBE, 0xD0, 0xB9 }
static

Definition at line 274 of file stem_UTF_8_russian.c.

◆ s_5_29

const symbol s_5_29[4] = { 0xD1, 0x8F, 0xD0, 0xBC }
static

Definition at line 275 of file stem_UTF_8_russian.c.

◆ s_5_3

const symbol s_5_3[4] = { 0xD0, 0xB0, 0xD1, 0x85 }
static

Definition at line 249 of file stem_UTF_8_russian.c.

◆ s_5_30

const symbol s_5_30[6] = { 0xD0, 0xB8, 0xD1, 0x8F, 0xD0, 0xBC }
static

Definition at line 276 of file stem_UTF_8_russian.c.

◆ s_5_31

const symbol s_5_31[4] = { 0xD0, 0xB0, 0xD0, 0xBC }
static

Definition at line 277 of file stem_UTF_8_russian.c.

◆ s_5_32

const symbol s_5_32[4] = { 0xD0, 0xB5, 0xD0, 0xBC }
static

Definition at line 278 of file stem_UTF_8_russian.c.

◆ s_5_33

const symbol s_5_33[6] = { 0xD0, 0xB8, 0xD0, 0xB5, 0xD0, 0xBC }
static

Definition at line 279 of file stem_UTF_8_russian.c.

◆ s_5_34

const symbol s_5_34[4] = { 0xD0, 0xBE, 0xD0, 0xBC }
static

Definition at line 280 of file stem_UTF_8_russian.c.

◆ s_5_35

const symbol s_5_35[2] = { 0xD0, 0xBE }
static

Definition at line 281 of file stem_UTF_8_russian.c.

◆ s_5_4

const symbol s_5_4[2] = { 0xD1, 0x8B }
static

Definition at line 250 of file stem_UTF_8_russian.c.

◆ s_5_5

const symbol s_5_5[2] = { 0xD1, 0x8C }
static

Definition at line 251 of file stem_UTF_8_russian.c.

◆ s_5_6

const symbol s_5_6[2] = { 0xD1, 0x8E }
static

Definition at line 252 of file stem_UTF_8_russian.c.

◆ s_5_7

const symbol s_5_7[4] = { 0xD1, 0x8C, 0xD1, 0x8E }
static

Definition at line 253 of file stem_UTF_8_russian.c.

◆ s_5_8

const symbol s_5_8[4] = { 0xD0, 0xB8, 0xD1, 0x8E }
static

Definition at line 254 of file stem_UTF_8_russian.c.

◆ s_5_9

const symbol s_5_9[2] = { 0xD1, 0x8F }
static

Definition at line 255 of file stem_UTF_8_russian.c.

◆ s_6

const symbol s_6[] = { 0xD0, 0xBD }
static

Definition at line 42 of file stem_UTF_8_russian.c.

Referenced by r_tidy_up().

◆ s_6_0

const symbol s_6_0[6] = { 0xD0, 0xBE, 0xD1, 0x81, 0xD1, 0x82 }
static

Definition at line 321 of file stem_UTF_8_russian.c.

◆ s_6_1

const symbol s_6_1[8] = { 0xD0, 0xBE, 0xD1, 0x81, 0xD1, 0x82, 0xD1, 0x8C }
static

Definition at line 322 of file stem_UTF_8_russian.c.

◆ s_7

const symbol s_7[] = { 0xD0, 0xBD }
static

Definition at line 43 of file stem_UTF_8_russian.c.

Referenced by r_tidy_up().

◆ s_7_0

const symbol s_7_0[6] = { 0xD0, 0xB5, 0xD0, 0xB9, 0xD1, 0x88 }
static

Definition at line 328 of file stem_UTF_8_russian.c.

◆ s_7_1

const symbol s_7_1[2] = { 0xD1, 0x8C }
static

Definition at line 329 of file stem_UTF_8_russian.c.

◆ s_7_2

const symbol s_7_2[8] = { 0xD0, 0xB5, 0xD0, 0xB9, 0xD1, 0x88, 0xD0, 0xB5 }
static

Definition at line 330 of file stem_UTF_8_russian.c.

◆ s_7_3

const symbol s_7_3[2] = { 0xD0, 0xBD }
static

Definition at line 331 of file stem_UTF_8_russian.c.

◆ s_8

const symbol s_8[] = { 0xD0, 0xBD }
static

Definition at line 44 of file stem_UTF_8_russian.c.

Referenced by r_tidy_up().

◆ s_9

const symbol s_9[] = { 0xD1, 0x91 }
static

Definition at line 45 of file stem_UTF_8_russian.c.

Referenced by russian_UTF_8_stem().