PostgreSQL Source Code  git master
stem_KOI8_R_russian.c File Reference
#include "header.h"
Include dependency graph for stem_KOI8_R_russian.c:

Go to the source code of this file.

Functions

int russian_KOI8_R_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_KOI8_R_create_env (void)
 
void russian_KOI8_R_close_env (struct SN_env *z)
 

Variables

static const symbol s_0_0 [3] = { 0xD7, 0xDB, 0xC9 }
 
static const symbol s_0_1 [4] = { 0xC9, 0xD7, 0xDB, 0xC9 }
 
static const symbol s_0_2 [4] = { 0xD9, 0xD7, 0xDB, 0xC9 }
 
static const symbol s_0_3 [1] = { 0xD7 }
 
static const symbol s_0_4 [2] = { 0xC9, 0xD7 }
 
static const symbol s_0_5 [2] = { 0xD9, 0xD7 }
 
static const symbol s_0_6 [5] = { 0xD7, 0xDB, 0xC9, 0xD3, 0xD8 }
 
static const symbol s_0_7 [6] = { 0xC9, 0xD7, 0xDB, 0xC9, 0xD3, 0xD8 }
 
static const symbol s_0_8 [6] = { 0xD9, 0xD7, 0xDB, 0xC9, 0xD3, 0xD8 }
 
static const struct among a_0 [9]
 
static const symbol s_1_0 [2] = { 0xC0, 0xC0 }
 
static const symbol s_1_1 [2] = { 0xC5, 0xC0 }
 
static const symbol s_1_2 [2] = { 0xCF, 0xC0 }
 
static const symbol s_1_3 [2] = { 0xD5, 0xC0 }
 
static const symbol s_1_4 [2] = { 0xC5, 0xC5 }
 
static const symbol s_1_5 [2] = { 0xC9, 0xC5 }
 
static const symbol s_1_6 [2] = { 0xCF, 0xC5 }
 
static const symbol s_1_7 [2] = { 0xD9, 0xC5 }
 
static const symbol s_1_8 [2] = { 0xC9, 0xC8 }
 
static const symbol s_1_9 [2] = { 0xD9, 0xC8 }
 
static const symbol s_1_10 [3] = { 0xC9, 0xCD, 0xC9 }
 
static const symbol s_1_11 [3] = { 0xD9, 0xCD, 0xC9 }
 
static const symbol s_1_12 [2] = { 0xC5, 0xCA }
 
static const symbol s_1_13 [2] = { 0xC9, 0xCA }
 
static const symbol s_1_14 [2] = { 0xCF, 0xCA }
 
static const symbol s_1_15 [2] = { 0xD9, 0xCA }
 
static const symbol s_1_16 [2] = { 0xC5, 0xCD }
 
static const symbol s_1_17 [2] = { 0xC9, 0xCD }
 
static const symbol s_1_18 [2] = { 0xCF, 0xCD }
 
static const symbol s_1_19 [2] = { 0xD9, 0xCD }
 
static const symbol s_1_20 [3] = { 0xC5, 0xC7, 0xCF }
 
static const symbol s_1_21 [3] = { 0xCF, 0xC7, 0xCF }
 
static const symbol s_1_22 [2] = { 0xC1, 0xD1 }
 
static const symbol s_1_23 [2] = { 0xD1, 0xD1 }
 
static const symbol s_1_24 [3] = { 0xC5, 0xCD, 0xD5 }
 
static const symbol s_1_25 [3] = { 0xCF, 0xCD, 0xD5 }
 
static const struct among a_1 [26]
 
static const symbol s_2_0 [2] = { 0xC5, 0xCD }
 
static const symbol s_2_1 [2] = { 0xCE, 0xCE }
 
static const symbol s_2_2 [2] = { 0xD7, 0xDB }
 
static const symbol s_2_3 [3] = { 0xC9, 0xD7, 0xDB }
 
static const symbol s_2_4 [3] = { 0xD9, 0xD7, 0xDB }
 
static const symbol s_2_5 [1] = { 0xDD }
 
static const symbol s_2_6 [2] = { 0xC0, 0xDD }
 
static const symbol s_2_7 [3] = { 0xD5, 0xC0, 0xDD }
 
static const struct among a_2 [8]
 
static const symbol s_3_0 [2] = { 0xD3, 0xD1 }
 
static const symbol s_3_1 [2] = { 0xD3, 0xD8 }
 
static const struct among a_3 [2]
 
static const symbol s_4_0 [1] = { 0xC0 }
 
static const symbol s_4_1 [2] = { 0xD5, 0xC0 }
 
static const symbol s_4_2 [2] = { 0xCC, 0xC1 }
 
static const symbol s_4_3 [3] = { 0xC9, 0xCC, 0xC1 }
 
static const symbol s_4_4 [3] = { 0xD9, 0xCC, 0xC1 }
 
static const symbol s_4_5 [2] = { 0xCE, 0xC1 }
 
static const symbol s_4_6 [3] = { 0xC5, 0xCE, 0xC1 }
 
static const symbol s_4_7 [3] = { 0xC5, 0xD4, 0xC5 }
 
static const symbol s_4_8 [3] = { 0xC9, 0xD4, 0xC5 }
 
static const symbol s_4_9 [3] = { 0xCA, 0xD4, 0xC5 }
 
static const symbol s_4_10 [4] = { 0xC5, 0xCA, 0xD4, 0xC5 }
 
static const symbol s_4_11 [4] = { 0xD5, 0xCA, 0xD4, 0xC5 }
 
static const symbol s_4_12 [2] = { 0xCC, 0xC9 }
 
static const symbol s_4_13 [3] = { 0xC9, 0xCC, 0xC9 }
 
static const symbol s_4_14 [3] = { 0xD9, 0xCC, 0xC9 }
 
static const symbol s_4_15 [1] = { 0xCA }
 
static const symbol s_4_16 [2] = { 0xC5, 0xCA }
 
static const symbol s_4_17 [2] = { 0xD5, 0xCA }
 
static const symbol s_4_18 [1] = { 0xCC }
 
static const symbol s_4_19 [2] = { 0xC9, 0xCC }
 
static const symbol s_4_20 [2] = { 0xD9, 0xCC }
 
static const symbol s_4_21 [2] = { 0xC5, 0xCD }
 
static const symbol s_4_22 [2] = { 0xC9, 0xCD }
 
static const symbol s_4_23 [2] = { 0xD9, 0xCD }
 
static const symbol s_4_24 [1] = { 0xCE }
 
static const symbol s_4_25 [2] = { 0xC5, 0xCE }
 
static const symbol s_4_26 [2] = { 0xCC, 0xCF }
 
static const symbol s_4_27 [3] = { 0xC9, 0xCC, 0xCF }
 
static const symbol s_4_28 [3] = { 0xD9, 0xCC, 0xCF }
 
static const symbol s_4_29 [2] = { 0xCE, 0xCF }
 
static const symbol s_4_30 [3] = { 0xC5, 0xCE, 0xCF }
 
static const symbol s_4_31 [3] = { 0xCE, 0xCE, 0xCF }
 
static const symbol s_4_32 [2] = { 0xC0, 0xD4 }
 
static const symbol s_4_33 [3] = { 0xD5, 0xC0, 0xD4 }
 
static const symbol s_4_34 [2] = { 0xC5, 0xD4 }
 
static const symbol s_4_35 [3] = { 0xD5, 0xC5, 0xD4 }
 
static const symbol s_4_36 [2] = { 0xC9, 0xD4 }
 
static const symbol s_4_37 [2] = { 0xD1, 0xD4 }
 
static const symbol s_4_38 [2] = { 0xD9, 0xD4 }
 
static const symbol s_4_39 [2] = { 0xD4, 0xD8 }
 
static const symbol s_4_40 [3] = { 0xC9, 0xD4, 0xD8 }
 
static const symbol s_4_41 [3] = { 0xD9, 0xD4, 0xD8 }
 
static const symbol s_4_42 [3] = { 0xC5, 0xDB, 0xD8 }
 
static const symbol s_4_43 [3] = { 0xC9, 0xDB, 0xD8 }
 
static const symbol s_4_44 [2] = { 0xCE, 0xD9 }
 
static const symbol s_4_45 [3] = { 0xC5, 0xCE, 0xD9 }
 
static const struct among a_4 [46]
 
static const symbol s_5_0 [1] = { 0xC0 }
 
static const symbol s_5_1 [2] = { 0xC9, 0xC0 }
 
static const symbol s_5_2 [2] = { 0xD8, 0xC0 }
 
static const symbol s_5_3 [1] = { 0xC1 }
 
static const symbol s_5_4 [1] = { 0xC5 }
 
static const symbol s_5_5 [2] = { 0xC9, 0xC5 }
 
static const symbol s_5_6 [2] = { 0xD8, 0xC5 }
 
static const symbol s_5_7 [2] = { 0xC1, 0xC8 }
 
static const symbol s_5_8 [2] = { 0xD1, 0xC8 }
 
static const symbol s_5_9 [3] = { 0xC9, 0xD1, 0xC8 }
 
static const symbol s_5_10 [1] = { 0xC9 }
 
static const symbol s_5_11 [2] = { 0xC5, 0xC9 }
 
static const symbol s_5_12 [2] = { 0xC9, 0xC9 }
 
static const symbol s_5_13 [3] = { 0xC1, 0xCD, 0xC9 }
 
static const symbol s_5_14 [3] = { 0xD1, 0xCD, 0xC9 }
 
static const symbol s_5_15 [4] = { 0xC9, 0xD1, 0xCD, 0xC9 }
 
static const symbol s_5_16 [1] = { 0xCA }
 
static const symbol s_5_17 [2] = { 0xC5, 0xCA }
 
static const symbol s_5_18 [3] = { 0xC9, 0xC5, 0xCA }
 
static const symbol s_5_19 [2] = { 0xC9, 0xCA }
 
static const symbol s_5_20 [2] = { 0xCF, 0xCA }
 
static const symbol s_5_21 [2] = { 0xC1, 0xCD }
 
static const symbol s_5_22 [2] = { 0xC5, 0xCD }
 
static const symbol s_5_23 [3] = { 0xC9, 0xC5, 0xCD }
 
static const symbol s_5_24 [2] = { 0xCF, 0xCD }
 
static const symbol s_5_25 [2] = { 0xD1, 0xCD }
 
static const symbol s_5_26 [3] = { 0xC9, 0xD1, 0xCD }
 
static const symbol s_5_27 [1] = { 0xCF }
 
static const symbol s_5_28 [1] = { 0xD1 }
 
static const symbol s_5_29 [2] = { 0xC9, 0xD1 }
 
static const symbol s_5_30 [2] = { 0xD8, 0xD1 }
 
static const symbol s_5_31 [1] = { 0xD5 }
 
static const symbol s_5_32 [2] = { 0xC5, 0xD7 }
 
static const symbol s_5_33 [2] = { 0xCF, 0xD7 }
 
static const symbol s_5_34 [1] = { 0xD8 }
 
static const symbol s_5_35 [1] = { 0xD9 }
 
static const struct among a_5 [36]
 
static const symbol s_6_0 [3] = { 0xCF, 0xD3, 0xD4 }
 
static const symbol s_6_1 [4] = { 0xCF, 0xD3, 0xD4, 0xD8 }
 
static const struct among a_6 [2]
 
static const symbol s_7_0 [4] = { 0xC5, 0xCA, 0xDB, 0xC5 }
 
static const symbol s_7_1 [1] = { 0xCE }
 
static const symbol s_7_2 [1] = { 0xD8 }
 
static const symbol s_7_3 [3] = { 0xC5, 0xCA, 0xDB }
 
static const struct among a_7 [4]
 
static const unsigned char g_v [] = { 35, 130, 34, 18 }
 
static const symbol s_0 [] = { 0xC1 }
 
static const symbol s_1 [] = { 0xD1 }
 
static const symbol s_2 [] = { 0xC1 }
 
static const symbol s_3 [] = { 0xD1 }
 
static const symbol s_4 [] = { 0xC1 }
 
static const symbol s_5 [] = { 0xD1 }
 
static const symbol s_6 [] = { 0xCE }
 
static const symbol s_7 [] = { 0xCE }
 
static const symbol s_8 [] = { 0xCE }
 
static const symbol s_9 [] = { 0xC9 }
 

Function Documentation

◆ r_adjectival()

static int r_adjectival ( struct SN_env z)
static

Definition at line 440 of file stem_KOI8_R_russian.c.

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

Referenced by russian_KOI8_R_stem().

440  {
441  int among_var;
442  { int ret = r_adjective(z);
443  if (ret == 0) return 0; /* call adjective, line 104 */
444  if (ret < 0) return ret;
445  }
446  { int m_keep = z->l - z->c;/* (void) m_keep;*/ /* try, line 111 */
447  z->ket = z->c; /* [, line 112 */
448  if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 6 || !((671113216 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->c = z->l - m_keep; goto lab0; }
449  among_var = find_among_b(z, a_2, 8); /* substring, line 112 */
450  if (!(among_var)) { z->c = z->l - m_keep; goto lab0; }
451  z->bra = z->c; /* ], line 112 */
452  switch(among_var) {
453  case 0: { z->c = z->l - m_keep; goto lab0; }
454  case 1:
455  { int m1 = z->l - z->c; (void)m1; /* or, line 117 */
456  if (!(eq_s_b(z, 1, s_2))) goto lab2;
457  goto lab1;
458  lab2:
459  z->c = z->l - m1;
460  if (!(eq_s_b(z, 1, s_3))) { z->c = z->l - m_keep; goto lab0; }
461  }
462  lab1:
463  { int ret = slice_del(z); /* delete, line 117 */
464  if (ret < 0) return ret;
465  }
466  break;
467  case 2:
468  { int ret = slice_del(z); /* delete, line 124 */
469  if (ret < 0) return ret;
470  }
471  break;
472  }
473  lab0:
474  ;
475  }
476  return 1;
477 }
static const symbol s_2[]
symbol * p
Definition: api.h:15
int eq_s_b(struct SN_env *z, int s_size, const symbol *s)
Definition: utilities.c:194
static const struct among a_2[8]
int ket
Definition: api.h:16
int slice_del(struct SN_env *z)
Definition: utilities.c:401
int bra
Definition: api.h:16
int find_among_b(struct SN_env *z, const struct among *v, int v_size)
Definition: utilities.c:267
int c
Definition: api.h:16
int lb
Definition: api.h:16
static int r_adjective(struct SN_env *z)
static const symbol s_3[]
int l
Definition: api.h:16

◆ r_adjective()

static int r_adjective ( struct SN_env z)
static

Definition at line 422 of file stem_KOI8_R_russian.c.

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

Referenced by r_adjectival().

422  {
423  int among_var;
424  z->ket = z->c; /* [, line 90 */
425  if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 6 || !((2271009 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
426  among_var = find_among_b(z, a_1, 26); /* substring, line 90 */
427  if (!(among_var)) return 0;
428  z->bra = z->c; /* ], line 90 */
429  switch(among_var) {
430  case 0: return 0;
431  case 1:
432  { int ret = slice_del(z); /* delete, line 99 */
433  if (ret < 0) return ret;
434  }
435  break;
436  }
437  return 1;
438 }
symbol * p
Definition: api.h:15
static const struct among a_1[26]
int ket
Definition: api.h:16
int slice_del(struct SN_env *z)
Definition: utilities.c:401
int bra
Definition: api.h:16
int find_among_b(struct SN_env *z, const struct among *v, int v_size)
Definition: utilities.c:267
int c
Definition: api.h:16
int lb
Definition: api.h:16

◆ r_derivational()

static int r_derivational ( struct SN_env z)
static

Definition at line 546 of file stem_KOI8_R_russian.c.

References 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_KOI8_R_stem().

546  {
547  int among_var;
548  z->ket = z->c; /* [, line 178 */
549  if (z->c - 2 <= z->lb || (z->p[z->c - 1] != 212 && z->p[z->c - 1] != 216)) return 0;
550  among_var = find_among_b(z, a_6, 2); /* substring, line 178 */
551  if (!(among_var)) return 0;
552  z->bra = z->c; /* ], line 178 */
553  { int ret = r_R2(z);
554  if (ret == 0) return 0; /* call R2, line 178 */
555  if (ret < 0) return ret;
556  }
557  switch(among_var) {
558  case 0: return 0;
559  case 1:
560  { int ret = slice_del(z); /* delete, line 181 */
561  if (ret < 0) return ret;
562  }
563  break;
564  }
565  return 1;
566 }
symbol * p
Definition: api.h:15
int ket
Definition: api.h:16
int slice_del(struct SN_env *z)
Definition: utilities.c:401
int bra
Definition: api.h:16
int find_among_b(struct SN_env *z, const struct among *v, int v_size)
Definition: utilities.c:267
int c
Definition: api.h:16
static int r_R2(struct SN_env *z)
int lb
Definition: api.h:16
static const struct among a_6[2]

◆ r_mark_regions()

static int r_mark_regions ( struct SN_env z)
static

Definition at line 354 of file stem_KOI8_R_russian.c.

References SN_env::c, g_v, SN_env::I, in_grouping(), SN_env::l, and out_grouping().

Referenced by russian_KOI8_R_stem().

354  {
355  z->I[0] = z->l;
356  z->I[1] = z->l;
357  { int c1 = z->c; /* do, line 63 */
358  { /* gopast */ /* grouping v, line 64 */
359  int ret = out_grouping(z, g_v, 192, 220, 1);
360  if (ret < 0) goto lab0;
361  z->c += ret;
362  }
363  z->I[0] = z->c; /* setmark pV, line 64 */
364  { /* gopast */ /* non v, line 64 */
365  int ret = in_grouping(z, g_v, 192, 220, 1);
366  if (ret < 0) goto lab0;
367  z->c += ret;
368  }
369  { /* gopast */ /* grouping v, line 65 */
370  int ret = out_grouping(z, g_v, 192, 220, 1);
371  if (ret < 0) goto lab0;
372  z->c += ret;
373  }
374  { /* gopast */ /* non v, line 65 */
375  int ret = in_grouping(z, g_v, 192, 220, 1);
376  if (ret < 0) goto lab0;
377  z->c += ret;
378  }
379  z->I[1] = z->c; /* setmark p2, line 65 */
380  lab0:
381  z->c = c1;
382  }
383  return 1;
384 }
int in_grouping(struct SN_env *z, const unsigned char *s, int min, int max, int repeat)
Definition: utilities.c:141
int * I
Definition: api.h:18
static const unsigned char g_v[]
int c
Definition: api.h:16
int out_grouping(struct SN_env *z, const unsigned char *s, int min, int max, int repeat)
Definition: utilities.c:165
int l
Definition: api.h:16

◆ r_noun()

static int r_noun ( struct SN_env z)
static

Definition at line 528 of file stem_KOI8_R_russian.c.

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

Referenced by russian_KOI8_R_stem().

528  {
529  int among_var;
530  z->ket = z->c; /* [, line 162 */
531  if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 6 || !((60991267 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
532  among_var = find_among_b(z, a_5, 36); /* substring, line 162 */
533  if (!(among_var)) return 0;
534  z->bra = z->c; /* ], line 162 */
535  switch(among_var) {
536  case 0: return 0;
537  case 1:
538  { int ret = slice_del(z); /* delete, line 169 */
539  if (ret < 0) return ret;
540  }
541  break;
542  }
543  return 1;
544 }
symbol * p
Definition: api.h:15
static const struct among a_5[36]
int ket
Definition: api.h:16
int slice_del(struct SN_env *z)
Definition: utilities.c:401
int bra
Definition: api.h:16
int find_among_b(struct SN_env *z, const struct among *v, int v_size)
Definition: utilities.c:267
int c
Definition: api.h:16
int lb
Definition: api.h:16

◆ r_perfective_gerund()

static int r_perfective_gerund ( struct SN_env z)
static

Definition at line 391 of file stem_KOI8_R_russian.c.

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

Referenced by russian_KOI8_R_stem().

391  {
392  int among_var;
393  z->ket = z->c; /* [, line 74 */
394  if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 6 || !((25166336 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
395  among_var = find_among_b(z, a_0, 9); /* substring, line 74 */
396  if (!(among_var)) return 0;
397  z->bra = z->c; /* ], line 74 */
398  switch(among_var) {
399  case 0: return 0;
400  case 1:
401  { int m1 = z->l - z->c; (void)m1; /* or, line 78 */
402  if (!(eq_s_b(z, 1, s_0))) goto lab1;
403  goto lab0;
404  lab1:
405  z->c = z->l - m1;
406  if (!(eq_s_b(z, 1, s_1))) return 0;
407  }
408  lab0:
409  { int ret = slice_del(z); /* delete, line 78 */
410  if (ret < 0) return ret;
411  }
412  break;
413  case 2:
414  { int ret = slice_del(z); /* delete, line 85 */
415  if (ret < 0) return ret;
416  }
417  break;
418  }
419  return 1;
420 }
symbol * p
Definition: api.h:15
int eq_s_b(struct SN_env *z, int s_size, const symbol *s)
Definition: utilities.c:194
int ket
Definition: api.h:16
int slice_del(struct SN_env *z)
Definition: utilities.c:401
int bra
Definition: api.h:16
int find_among_b(struct SN_env *z, const struct among *v, int v_size)
Definition: utilities.c:267
int c
Definition: api.h:16
int lb
Definition: api.h:16
static const symbol s_1[]
static const symbol s_0[]
static const struct among a_0[9]
int l
Definition: api.h:16

◆ r_R2()

static int r_R2 ( struct SN_env z)
static

Definition at line 386 of file stem_KOI8_R_russian.c.

References SN_env::c, and SN_env::I.

Referenced by r_derivational().

386  {
387  if (!(z->I[1] <= z->c)) return 0;
388  return 1;
389 }
int * I
Definition: api.h:18
int c
Definition: api.h:16

◆ r_reflexive()

static int r_reflexive ( struct SN_env z)
static

Definition at line 479 of file stem_KOI8_R_russian.c.

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

Referenced by russian_KOI8_R_stem().

479  {
480  int among_var;
481  z->ket = z->c; /* [, line 131 */
482  if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 209 && z->p[z->c - 1] != 216)) return 0;
483  among_var = find_among_b(z, a_3, 2); /* substring, line 131 */
484  if (!(among_var)) return 0;
485  z->bra = z->c; /* ], line 131 */
486  switch(among_var) {
487  case 0: return 0;
488  case 1:
489  { int ret = slice_del(z); /* delete, line 134 */
490  if (ret < 0) return ret;
491  }
492  break;
493  }
494  return 1;
495 }
symbol * p
Definition: api.h:15
int ket
Definition: api.h:16
int slice_del(struct SN_env *z)
Definition: utilities.c:401
int bra
Definition: api.h:16
int find_among_b(struct SN_env *z, const struct among *v, int v_size)
Definition: utilities.c:267
int c
Definition: api.h:16
int lb
Definition: api.h:16
static const struct among a_3[2]

◆ r_tidy_up()

static int r_tidy_up ( struct SN_env z)
static

Definition at line 568 of file stem_KOI8_R_russian.c.

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

Referenced by russian_KOI8_R_stem().

568  {
569  int among_var;
570  z->ket = z->c; /* [, line 186 */
571  if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 6 || !((151011360 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
572  among_var = find_among_b(z, a_7, 4); /* substring, line 186 */
573  if (!(among_var)) return 0;
574  z->bra = z->c; /* ], line 186 */
575  switch(among_var) {
576  case 0: return 0;
577  case 1:
578  { int ret = slice_del(z); /* delete, line 190 */
579  if (ret < 0) return ret;
580  }
581  z->ket = z->c; /* [, line 191 */
582  if (!(eq_s_b(z, 1, s_6))) return 0;
583  z->bra = z->c; /* ], line 191 */
584  if (!(eq_s_b(z, 1, s_7))) return 0;
585  { int ret = slice_del(z); /* delete, line 191 */
586  if (ret < 0) return ret;
587  }
588  break;
589  case 2:
590  if (!(eq_s_b(z, 1, s_8))) return 0;
591  { int ret = slice_del(z); /* delete, line 194 */
592  if (ret < 0) return ret;
593  }
594  break;
595  case 3:
596  { int ret = slice_del(z); /* delete, line 196 */
597  if (ret < 0) return ret;
598  }
599  break;
600  }
601  return 1;
602 }
static const struct among a_7[4]
symbol * p
Definition: api.h:15
static const symbol s_7[]
int eq_s_b(struct SN_env *z, int s_size, const symbol *s)
Definition: utilities.c:194
int ket
Definition: api.h:16
int slice_del(struct SN_env *z)
Definition: utilities.c:401
int bra
Definition: api.h:16
int find_among_b(struct SN_env *z, const struct among *v, int v_size)
Definition: utilities.c:267
int c
Definition: api.h:16
int lb
Definition: api.h:16
static const symbol s_6[]
static const symbol s_8[]

◆ r_verb()

static int r_verb ( struct SN_env z)
static

Definition at line 497 of file stem_KOI8_R_russian.c.

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

Referenced by russian_KOI8_R_stem().

497  {
498  int among_var;
499  z->ket = z->c; /* [, line 139 */
500  if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 6 || !((51443235 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
501  among_var = find_among_b(z, a_4, 46); /* substring, line 139 */
502  if (!(among_var)) return 0;
503  z->bra = z->c; /* ], line 139 */
504  switch(among_var) {
505  case 0: return 0;
506  case 1:
507  { int m1 = z->l - z->c; (void)m1; /* or, line 145 */
508  if (!(eq_s_b(z, 1, s_4))) goto lab1;
509  goto lab0;
510  lab1:
511  z->c = z->l - m1;
512  if (!(eq_s_b(z, 1, s_5))) return 0;
513  }
514  lab0:
515  { int ret = slice_del(z); /* delete, line 145 */
516  if (ret < 0) return ret;
517  }
518  break;
519  case 2:
520  { int ret = slice_del(z); /* delete, line 153 */
521  if (ret < 0) return ret;
522  }
523  break;
524  }
525  return 1;
526 }
symbol * p
Definition: api.h:15
int eq_s_b(struct SN_env *z, int s_size, const symbol *s)
Definition: utilities.c:194
int ket
Definition: api.h:16
int slice_del(struct SN_env *z)
Definition: utilities.c:401
int bra
Definition: api.h:16
int find_among_b(struct SN_env *z, const struct among *v, int v_size)
Definition: utilities.c:267
static const symbol s_4[]
int c
Definition: api.h:16
int lb
Definition: api.h:16
static const struct among a_4[46]
static const symbol s_5[]
int l
Definition: api.h:16

◆ russian_KOI8_R_close_env()

void russian_KOI8_R_close_env ( struct SN_env z)

Definition at line 699 of file stem_KOI8_R_russian.c.

References SN_close_env().

699 { SN_close_env(z, 0); }
void SN_close_env(struct SN_env *z, int S_size)
Definition: api.c:40

◆ russian_KOI8_R_create_env()

struct SN_env * russian_KOI8_R_create_env ( void  )

Definition at line 697 of file stem_KOI8_R_russian.c.

References SN_create_env().

697 { return SN_create_env(0, 2, 0); }
struct SN_env * SN_create_env(int S_size, int I_size, int B_size)
Definition: api.c:3

◆ russian_KOI8_R_stem()

int russian_KOI8_R_stem ( struct SN_env z)

Definition at line 604 of file stem_KOI8_R_russian.c.

References SN_env::bra, SN_env::c, eq_s_b(), SN_env::I, SN_env::ket, SN_env::l, SN_env::lb, r_adjectival(), r_derivational(), r_mark_regions(), r_noun(), r_perfective_gerund(), r_reflexive(), r_tidy_up(), r_verb(), s_9, and slice_del().

604  {
605  { int c1 = z->c; /* do, line 203 */
606  { int ret = r_mark_regions(z);
607  if (ret == 0) goto lab0; /* call mark_regions, line 203 */
608  if (ret < 0) return ret;
609  }
610  lab0:
611  z->c = c1;
612  }
613  z->lb = z->c; z->c = z->l; /* backwards, line 204 */
614 
615  { int mlimit; /* setlimit, line 204 */
616  int m2 = z->l - z->c; (void)m2;
617  if (z->c < z->I[0]) return 0;
618  z->c = z->I[0]; /* tomark, line 204 */
619  mlimit = z->lb; z->lb = z->c;
620  z->c = z->l - m2;
621  { int m3 = z->l - z->c; (void)m3; /* do, line 205 */
622  { int m4 = z->l - z->c; (void)m4; /* or, line 206 */
623  { int ret = r_perfective_gerund(z);
624  if (ret == 0) goto lab3; /* call perfective_gerund, line 206 */
625  if (ret < 0) return ret;
626  }
627  goto lab2;
628  lab3:
629  z->c = z->l - m4;
630  { int m_keep = z->l - z->c;/* (void) m_keep;*/ /* try, line 207 */
631  { int ret = r_reflexive(z);
632  if (ret == 0) { z->c = z->l - m_keep; goto lab4; } /* call reflexive, line 207 */
633  if (ret < 0) return ret;
634  }
635  lab4:
636  ;
637  }
638  { int m5 = z->l - z->c; (void)m5; /* or, line 208 */
639  { int ret = r_adjectival(z);
640  if (ret == 0) goto lab6; /* call adjectival, line 208 */
641  if (ret < 0) return ret;
642  }
643  goto lab5;
644  lab6:
645  z->c = z->l - m5;
646  { int ret = r_verb(z);
647  if (ret == 0) goto lab7; /* call verb, line 208 */
648  if (ret < 0) return ret;
649  }
650  goto lab5;
651  lab7:
652  z->c = z->l - m5;
653  { int ret = r_noun(z);
654  if (ret == 0) goto lab1; /* call noun, line 208 */
655  if (ret < 0) return ret;
656  }
657  }
658  lab5:
659  ;
660  }
661  lab2:
662  lab1:
663  z->c = z->l - m3;
664  }
665  { int m_keep = z->l - z->c;/* (void) m_keep;*/ /* try, line 211 */
666  z->ket = z->c; /* [, line 211 */
667  if (!(eq_s_b(z, 1, s_9))) { z->c = z->l - m_keep; goto lab8; }
668  z->bra = z->c; /* ], line 211 */
669  { int ret = slice_del(z); /* delete, line 211 */
670  if (ret < 0) return ret;
671  }
672  lab8:
673  ;
674  }
675  { int m6 = z->l - z->c; (void)m6; /* do, line 214 */
676  { int ret = r_derivational(z);
677  if (ret == 0) goto lab9; /* call derivational, line 214 */
678  if (ret < 0) return ret;
679  }
680  lab9:
681  z->c = z->l - m6;
682  }
683  { int m7 = z->l - z->c; (void)m7; /* do, line 215 */
684  { int ret = r_tidy_up(z);
685  if (ret == 0) goto lab10; /* call tidy_up, line 215 */
686  if (ret < 0) return ret;
687  }
688  lab10:
689  z->c = z->l - m7;
690  }
691  z->lb = mlimit;
692  }
693  z->c = z->lb;
694  return 1;
695 }
int eq_s_b(struct SN_env *z, int s_size, const symbol *s)
Definition: utilities.c:194
int * I
Definition: api.h:18
int ket
Definition: api.h:16
int slice_del(struct SN_env *z)
Definition: utilities.c:401
int bra
Definition: api.h:16
int c
Definition: api.h:16
static int r_mark_regions(struct SN_env *z)
static int r_reflexive(struct SN_env *z)
int lb
Definition: api.h:16
static const symbol s_9[]
static int r_verb(struct SN_env *z)
static int r_adjectival(struct SN_env *z)
static int r_derivational(struct SN_env *z)
static int r_tidy_up(struct SN_env *z)
static int r_noun(struct SN_env *z)
static int r_perfective_gerund(struct SN_env *z)
int l
Definition: api.h:16

Variable Documentation

◆ a_0

const struct among a_0[9]
static
Initial value:
=
{
{ 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_0_5[2]
static const symbol s_0_2[4]
static const symbol s_0_4[2]
static const symbol s_0_3[1]
static const symbol s_0_6[5]
static const symbol s_0_7[6]
static const symbol s_0_1[4]
static const symbol s_0_0[3]
static const symbol s_0_8[6]

Definition at line 45 of file stem_KOI8_R_russian.c.

◆ a_1

const struct among a_1[26]
static
Initial value:
=
{
{ 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_1_19[2]
static const symbol s_1_2[2]
static const symbol s_1_7[2]
static const symbol s_1_16[2]
static const symbol s_1_23[2]
static const symbol s_1_22[2]
static const symbol s_1_24[3]
static const symbol s_1_10[3]
static const symbol s_1_13[2]
static const symbol s_1_21[3]
static const symbol s_1_6[2]
static const symbol s_1_5[2]
static const symbol s_1_15[2]
static const symbol s_1_1[2]
static const symbol s_1_4[2]
static const symbol s_1_17[2]
static const symbol s_1_12[2]
static const symbol s_1_0[2]
static const symbol s_1_25[3]
static const symbol s_1_8[2]
static const symbol s_1_18[2]
static const symbol s_1_9[2]
static const symbol s_1_11[3]
static const symbol s_1_3[2]
static const symbol s_1_14[2]
static const symbol s_1_20[3]

Definition at line 85 of file stem_KOI8_R_russian.c.

◆ a_2

const struct among a_2[8]
static
Initial value:
=
{
{ 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_2_4[3]
static const symbol s_2_7[3]
static const symbol s_2_5[1]
static const symbol s_2_3[3]
static const symbol s_2_1[2]
static const symbol s_2_2[2]
static const symbol s_2_0[2]
static const symbol s_2_6[2]

Definition at line 124 of file stem_KOI8_R_russian.c.

◆ a_3

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

Definition at line 139 of file stem_KOI8_R_russian.c.

◆ a_4

const struct among a_4[46]
static

Definition at line 192 of file stem_KOI8_R_russian.c.

◆ a_5

const struct among a_5[36]
static

Definition at line 279 of file stem_KOI8_R_russian.c.

◆ a_6

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

Definition at line 322 of file stem_KOI8_R_russian.c.

◆ a_7

const struct among a_7[4]
static
Initial value:
=
{
{ 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 symbol s_7_2[1]
static const symbol s_7_0[4]
static const symbol s_7_3[3]
static const symbol s_7_1[1]

Definition at line 333 of file stem_KOI8_R_russian.c.

◆ g_v

const unsigned char g_v[] = { 35, 130, 34, 18 }
static

Definition at line 341 of file stem_KOI8_R_russian.c.

Referenced by r_mark_regions().

◆ s_0

const symbol s_0[] = { 0xC1 }
static

Definition at line 343 of file stem_KOI8_R_russian.c.

Referenced by r_perfective_gerund().

◆ s_0_0

const symbol s_0_0[3] = { 0xD7, 0xDB, 0xC9 }
static

Definition at line 35 of file stem_KOI8_R_russian.c.

◆ s_0_1

const symbol s_0_1[4] = { 0xC9, 0xD7, 0xDB, 0xC9 }
static

Definition at line 36 of file stem_KOI8_R_russian.c.

◆ s_0_2

const symbol s_0_2[4] = { 0xD9, 0xD7, 0xDB, 0xC9 }
static

Definition at line 37 of file stem_KOI8_R_russian.c.

◆ s_0_3

const symbol s_0_3[1] = { 0xD7 }
static

Definition at line 38 of file stem_KOI8_R_russian.c.

◆ s_0_4

const symbol s_0_4[2] = { 0xC9, 0xD7 }
static

Definition at line 39 of file stem_KOI8_R_russian.c.

◆ s_0_5

const symbol s_0_5[2] = { 0xD9, 0xD7 }
static

Definition at line 40 of file stem_KOI8_R_russian.c.

◆ s_0_6

const symbol s_0_6[5] = { 0xD7, 0xDB, 0xC9, 0xD3, 0xD8 }
static

Definition at line 41 of file stem_KOI8_R_russian.c.

◆ s_0_7

const symbol s_0_7[6] = { 0xC9, 0xD7, 0xDB, 0xC9, 0xD3, 0xD8 }
static

Definition at line 42 of file stem_KOI8_R_russian.c.

◆ s_0_8

const symbol s_0_8[6] = { 0xD9, 0xD7, 0xDB, 0xC9, 0xD3, 0xD8 }
static

Definition at line 43 of file stem_KOI8_R_russian.c.

◆ s_1

const symbol s_1[] = { 0xD1 }
static

Definition at line 344 of file stem_KOI8_R_russian.c.

Referenced by r_perfective_gerund().

◆ s_1_0

const symbol s_1_0[2] = { 0xC0, 0xC0 }
static

Definition at line 58 of file stem_KOI8_R_russian.c.

◆ s_1_1

const symbol s_1_1[2] = { 0xC5, 0xC0 }
static

Definition at line 59 of file stem_KOI8_R_russian.c.

◆ s_1_10

const symbol s_1_10[3] = { 0xC9, 0xCD, 0xC9 }
static

Definition at line 68 of file stem_KOI8_R_russian.c.

◆ s_1_11

const symbol s_1_11[3] = { 0xD9, 0xCD, 0xC9 }
static

Definition at line 69 of file stem_KOI8_R_russian.c.

◆ s_1_12

const symbol s_1_12[2] = { 0xC5, 0xCA }
static

Definition at line 70 of file stem_KOI8_R_russian.c.

◆ s_1_13

const symbol s_1_13[2] = { 0xC9, 0xCA }
static

Definition at line 71 of file stem_KOI8_R_russian.c.

◆ s_1_14

const symbol s_1_14[2] = { 0xCF, 0xCA }
static

Definition at line 72 of file stem_KOI8_R_russian.c.

◆ s_1_15

const symbol s_1_15[2] = { 0xD9, 0xCA }
static

Definition at line 73 of file stem_KOI8_R_russian.c.

◆ s_1_16

const symbol s_1_16[2] = { 0xC5, 0xCD }
static

Definition at line 74 of file stem_KOI8_R_russian.c.

◆ s_1_17

const symbol s_1_17[2] = { 0xC9, 0xCD }
static

Definition at line 75 of file stem_KOI8_R_russian.c.

◆ s_1_18

const symbol s_1_18[2] = { 0xCF, 0xCD }
static

Definition at line 76 of file stem_KOI8_R_russian.c.

◆ s_1_19

const symbol s_1_19[2] = { 0xD9, 0xCD }
static

Definition at line 77 of file stem_KOI8_R_russian.c.

◆ s_1_2

const symbol s_1_2[2] = { 0xCF, 0xC0 }
static

Definition at line 60 of file stem_KOI8_R_russian.c.

◆ s_1_20

const symbol s_1_20[3] = { 0xC5, 0xC7, 0xCF }
static

Definition at line 78 of file stem_KOI8_R_russian.c.

◆ s_1_21

const symbol s_1_21[3] = { 0xCF, 0xC7, 0xCF }
static

Definition at line 79 of file stem_KOI8_R_russian.c.

◆ s_1_22

const symbol s_1_22[2] = { 0xC1, 0xD1 }
static

Definition at line 80 of file stem_KOI8_R_russian.c.

◆ s_1_23

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

Definition at line 81 of file stem_KOI8_R_russian.c.

◆ s_1_24

const symbol s_1_24[3] = { 0xC5, 0xCD, 0xD5 }
static

Definition at line 82 of file stem_KOI8_R_russian.c.

◆ s_1_25

const symbol s_1_25[3] = { 0xCF, 0xCD, 0xD5 }
static

Definition at line 83 of file stem_KOI8_R_russian.c.

◆ s_1_3

const symbol s_1_3[2] = { 0xD5, 0xC0 }
static

Definition at line 61 of file stem_KOI8_R_russian.c.

◆ s_1_4

const symbol s_1_4[2] = { 0xC5, 0xC5 }
static

Definition at line 62 of file stem_KOI8_R_russian.c.

◆ s_1_5

const symbol s_1_5[2] = { 0xC9, 0xC5 }
static

Definition at line 63 of file stem_KOI8_R_russian.c.

◆ s_1_6

const symbol s_1_6[2] = { 0xCF, 0xC5 }
static

Definition at line 64 of file stem_KOI8_R_russian.c.

◆ s_1_7

const symbol s_1_7[2] = { 0xD9, 0xC5 }
static

Definition at line 65 of file stem_KOI8_R_russian.c.

◆ s_1_8

const symbol s_1_8[2] = { 0xC9, 0xC8 }
static

Definition at line 66 of file stem_KOI8_R_russian.c.

◆ s_1_9

const symbol s_1_9[2] = { 0xD9, 0xC8 }
static

Definition at line 67 of file stem_KOI8_R_russian.c.

◆ s_2

const symbol s_2[] = { 0xC1 }
static

Definition at line 345 of file stem_KOI8_R_russian.c.

Referenced by r_adjectival().

◆ s_2_0

const symbol s_2_0[2] = { 0xC5, 0xCD }
static

Definition at line 115 of file stem_KOI8_R_russian.c.

◆ s_2_1

const symbol s_2_1[2] = { 0xCE, 0xCE }
static

Definition at line 116 of file stem_KOI8_R_russian.c.

◆ s_2_2

const symbol s_2_2[2] = { 0xD7, 0xDB }
static

Definition at line 117 of file stem_KOI8_R_russian.c.

◆ s_2_3

const symbol s_2_3[3] = { 0xC9, 0xD7, 0xDB }
static

Definition at line 118 of file stem_KOI8_R_russian.c.

◆ s_2_4

const symbol s_2_4[3] = { 0xD9, 0xD7, 0xDB }
static

Definition at line 119 of file stem_KOI8_R_russian.c.

◆ s_2_5

const symbol s_2_5[1] = { 0xDD }
static

Definition at line 120 of file stem_KOI8_R_russian.c.

◆ s_2_6

const symbol s_2_6[2] = { 0xC0, 0xDD }
static

Definition at line 121 of file stem_KOI8_R_russian.c.

◆ s_2_7

const symbol s_2_7[3] = { 0xD5, 0xC0, 0xDD }
static

Definition at line 122 of file stem_KOI8_R_russian.c.

◆ s_3

const symbol s_3[] = { 0xD1 }
static

Definition at line 346 of file stem_KOI8_R_russian.c.

Referenced by r_adjectival().

◆ s_3_0

const symbol s_3_0[2] = { 0xD3, 0xD1 }
static

Definition at line 136 of file stem_KOI8_R_russian.c.

◆ s_3_1

const symbol s_3_1[2] = { 0xD3, 0xD8 }
static

Definition at line 137 of file stem_KOI8_R_russian.c.

◆ s_4

const symbol s_4[] = { 0xC1 }
static

Definition at line 347 of file stem_KOI8_R_russian.c.

Referenced by r_verb().

◆ s_4_0

const symbol s_4_0[1] = { 0xC0 }
static

Definition at line 145 of file stem_KOI8_R_russian.c.

◆ s_4_1

const symbol s_4_1[2] = { 0xD5, 0xC0 }
static

Definition at line 146 of file stem_KOI8_R_russian.c.

◆ s_4_10

const symbol s_4_10[4] = { 0xC5, 0xCA, 0xD4, 0xC5 }
static

Definition at line 155 of file stem_KOI8_R_russian.c.

◆ s_4_11

const symbol s_4_11[4] = { 0xD5, 0xCA, 0xD4, 0xC5 }
static

Definition at line 156 of file stem_KOI8_R_russian.c.

◆ s_4_12

const symbol s_4_12[2] = { 0xCC, 0xC9 }
static

Definition at line 157 of file stem_KOI8_R_russian.c.

◆ s_4_13

const symbol s_4_13[3] = { 0xC9, 0xCC, 0xC9 }
static

Definition at line 158 of file stem_KOI8_R_russian.c.

◆ s_4_14

const symbol s_4_14[3] = { 0xD9, 0xCC, 0xC9 }
static

Definition at line 159 of file stem_KOI8_R_russian.c.

◆ s_4_15

const symbol s_4_15[1] = { 0xCA }
static

Definition at line 160 of file stem_KOI8_R_russian.c.

◆ s_4_16

const symbol s_4_16[2] = { 0xC5, 0xCA }
static

Definition at line 161 of file stem_KOI8_R_russian.c.

◆ s_4_17

const symbol s_4_17[2] = { 0xD5, 0xCA }
static

Definition at line 162 of file stem_KOI8_R_russian.c.

◆ s_4_18

const symbol s_4_18[1] = { 0xCC }
static

Definition at line 163 of file stem_KOI8_R_russian.c.

◆ s_4_19

const symbol s_4_19[2] = { 0xC9, 0xCC }
static

Definition at line 164 of file stem_KOI8_R_russian.c.

◆ s_4_2

const symbol s_4_2[2] = { 0xCC, 0xC1 }
static

Definition at line 147 of file stem_KOI8_R_russian.c.

◆ s_4_20

const symbol s_4_20[2] = { 0xD9, 0xCC }
static

Definition at line 165 of file stem_KOI8_R_russian.c.

◆ s_4_21

const symbol s_4_21[2] = { 0xC5, 0xCD }
static

Definition at line 166 of file stem_KOI8_R_russian.c.

◆ s_4_22

const symbol s_4_22[2] = { 0xC9, 0xCD }
static

Definition at line 167 of file stem_KOI8_R_russian.c.

◆ s_4_23

const symbol s_4_23[2] = { 0xD9, 0xCD }
static

Definition at line 168 of file stem_KOI8_R_russian.c.

◆ s_4_24

const symbol s_4_24[1] = { 0xCE }
static

Definition at line 169 of file stem_KOI8_R_russian.c.

◆ s_4_25

const symbol s_4_25[2] = { 0xC5, 0xCE }
static

Definition at line 170 of file stem_KOI8_R_russian.c.

◆ s_4_26

const symbol s_4_26[2] = { 0xCC, 0xCF }
static

Definition at line 171 of file stem_KOI8_R_russian.c.

◆ s_4_27

const symbol s_4_27[3] = { 0xC9, 0xCC, 0xCF }
static

Definition at line 172 of file stem_KOI8_R_russian.c.

◆ s_4_28

const symbol s_4_28[3] = { 0xD9, 0xCC, 0xCF }
static

Definition at line 173 of file stem_KOI8_R_russian.c.

◆ s_4_29

const symbol s_4_29[2] = { 0xCE, 0xCF }
static

Definition at line 174 of file stem_KOI8_R_russian.c.

◆ s_4_3

const symbol s_4_3[3] = { 0xC9, 0xCC, 0xC1 }
static

Definition at line 148 of file stem_KOI8_R_russian.c.

◆ s_4_30

const symbol s_4_30[3] = { 0xC5, 0xCE, 0xCF }
static

Definition at line 175 of file stem_KOI8_R_russian.c.

◆ s_4_31

const symbol s_4_31[3] = { 0xCE, 0xCE, 0xCF }
static

Definition at line 176 of file stem_KOI8_R_russian.c.

◆ s_4_32

const symbol s_4_32[2] = { 0xC0, 0xD4 }
static

Definition at line 177 of file stem_KOI8_R_russian.c.

◆ s_4_33

const symbol s_4_33[3] = { 0xD5, 0xC0, 0xD4 }
static

Definition at line 178 of file stem_KOI8_R_russian.c.

◆ s_4_34

const symbol s_4_34[2] = { 0xC5, 0xD4 }
static

Definition at line 179 of file stem_KOI8_R_russian.c.

◆ s_4_35

const symbol s_4_35[3] = { 0xD5, 0xC5, 0xD4 }
static

Definition at line 180 of file stem_KOI8_R_russian.c.

◆ s_4_36

const symbol s_4_36[2] = { 0xC9, 0xD4 }
static

Definition at line 181 of file stem_KOI8_R_russian.c.

◆ s_4_37

const symbol s_4_37[2] = { 0xD1, 0xD4 }
static

Definition at line 182 of file stem_KOI8_R_russian.c.

◆ s_4_38

const symbol s_4_38[2] = { 0xD9, 0xD4 }
static

Definition at line 183 of file stem_KOI8_R_russian.c.

◆ s_4_39

const symbol s_4_39[2] = { 0xD4, 0xD8 }
static

Definition at line 184 of file stem_KOI8_R_russian.c.

◆ s_4_4

const symbol s_4_4[3] = { 0xD9, 0xCC, 0xC1 }
static

Definition at line 149 of file stem_KOI8_R_russian.c.

◆ s_4_40

const symbol s_4_40[3] = { 0xC9, 0xD4, 0xD8 }
static

Definition at line 185 of file stem_KOI8_R_russian.c.

◆ s_4_41

const symbol s_4_41[3] = { 0xD9, 0xD4, 0xD8 }
static

Definition at line 186 of file stem_KOI8_R_russian.c.

◆ s_4_42

const symbol s_4_42[3] = { 0xC5, 0xDB, 0xD8 }
static

Definition at line 187 of file stem_KOI8_R_russian.c.

◆ s_4_43

const symbol s_4_43[3] = { 0xC9, 0xDB, 0xD8 }
static

Definition at line 188 of file stem_KOI8_R_russian.c.

◆ s_4_44

const symbol s_4_44[2] = { 0xCE, 0xD9 }
static

Definition at line 189 of file stem_KOI8_R_russian.c.

◆ s_4_45

const symbol s_4_45[3] = { 0xC5, 0xCE, 0xD9 }
static

Definition at line 190 of file stem_KOI8_R_russian.c.

◆ s_4_5

const symbol s_4_5[2] = { 0xCE, 0xC1 }
static

Definition at line 150 of file stem_KOI8_R_russian.c.

◆ s_4_6

const symbol s_4_6[3] = { 0xC5, 0xCE, 0xC1 }
static

Definition at line 151 of file stem_KOI8_R_russian.c.

◆ s_4_7

const symbol s_4_7[3] = { 0xC5, 0xD4, 0xC5 }
static

Definition at line 152 of file stem_KOI8_R_russian.c.

◆ s_4_8

const symbol s_4_8[3] = { 0xC9, 0xD4, 0xC5 }
static

Definition at line 153 of file stem_KOI8_R_russian.c.

◆ s_4_9

const symbol s_4_9[3] = { 0xCA, 0xD4, 0xC5 }
static

Definition at line 154 of file stem_KOI8_R_russian.c.

◆ s_5

const symbol s_5[] = { 0xD1 }
static

Definition at line 348 of file stem_KOI8_R_russian.c.

Referenced by r_verb().

◆ s_5_0

const symbol s_5_0[1] = { 0xC0 }
static

Definition at line 242 of file stem_KOI8_R_russian.c.

◆ s_5_1

const symbol s_5_1[2] = { 0xC9, 0xC0 }
static

Definition at line 243 of file stem_KOI8_R_russian.c.

◆ s_5_10

const symbol s_5_10[1] = { 0xC9 }
static

Definition at line 252 of file stem_KOI8_R_russian.c.

◆ s_5_11

const symbol s_5_11[2] = { 0xC5, 0xC9 }
static

Definition at line 253 of file stem_KOI8_R_russian.c.

◆ s_5_12

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

Definition at line 254 of file stem_KOI8_R_russian.c.

◆ s_5_13

const symbol s_5_13[3] = { 0xC1, 0xCD, 0xC9 }
static

Definition at line 255 of file stem_KOI8_R_russian.c.

◆ s_5_14

const symbol s_5_14[3] = { 0xD1, 0xCD, 0xC9 }
static

Definition at line 256 of file stem_KOI8_R_russian.c.

◆ s_5_15

const symbol s_5_15[4] = { 0xC9, 0xD1, 0xCD, 0xC9 }
static

Definition at line 257 of file stem_KOI8_R_russian.c.

◆ s_5_16

const symbol s_5_16[1] = { 0xCA }
static

Definition at line 258 of file stem_KOI8_R_russian.c.

◆ s_5_17

const symbol s_5_17[2] = { 0xC5, 0xCA }
static

Definition at line 259 of file stem_KOI8_R_russian.c.

◆ s_5_18

const symbol s_5_18[3] = { 0xC9, 0xC5, 0xCA }
static

Definition at line 260 of file stem_KOI8_R_russian.c.

◆ s_5_19

const symbol s_5_19[2] = { 0xC9, 0xCA }
static

Definition at line 261 of file stem_KOI8_R_russian.c.

◆ s_5_2

const symbol s_5_2[2] = { 0xD8, 0xC0 }
static

Definition at line 244 of file stem_KOI8_R_russian.c.

◆ s_5_20

const symbol s_5_20[2] = { 0xCF, 0xCA }
static

Definition at line 262 of file stem_KOI8_R_russian.c.

◆ s_5_21

const symbol s_5_21[2] = { 0xC1, 0xCD }
static

Definition at line 263 of file stem_KOI8_R_russian.c.

◆ s_5_22

const symbol s_5_22[2] = { 0xC5, 0xCD }
static

Definition at line 264 of file stem_KOI8_R_russian.c.

◆ s_5_23

const symbol s_5_23[3] = { 0xC9, 0xC5, 0xCD }
static

Definition at line 265 of file stem_KOI8_R_russian.c.

◆ s_5_24

const symbol s_5_24[2] = { 0xCF, 0xCD }
static

Definition at line 266 of file stem_KOI8_R_russian.c.

◆ s_5_25

const symbol s_5_25[2] = { 0xD1, 0xCD }
static

Definition at line 267 of file stem_KOI8_R_russian.c.

◆ s_5_26

const symbol s_5_26[3] = { 0xC9, 0xD1, 0xCD }
static

Definition at line 268 of file stem_KOI8_R_russian.c.

◆ s_5_27

const symbol s_5_27[1] = { 0xCF }
static

Definition at line 269 of file stem_KOI8_R_russian.c.

◆ s_5_28

const symbol s_5_28[1] = { 0xD1 }
static

Definition at line 270 of file stem_KOI8_R_russian.c.

◆ s_5_29

const symbol s_5_29[2] = { 0xC9, 0xD1 }
static

Definition at line 271 of file stem_KOI8_R_russian.c.

◆ s_5_3

const symbol s_5_3[1] = { 0xC1 }
static

Definition at line 245 of file stem_KOI8_R_russian.c.

◆ s_5_30

const symbol s_5_30[2] = { 0xD8, 0xD1 }
static

Definition at line 272 of file stem_KOI8_R_russian.c.

◆ s_5_31

const symbol s_5_31[1] = { 0xD5 }
static

Definition at line 273 of file stem_KOI8_R_russian.c.

◆ s_5_32

const symbol s_5_32[2] = { 0xC5, 0xD7 }
static

Definition at line 274 of file stem_KOI8_R_russian.c.

◆ s_5_33

const symbol s_5_33[2] = { 0xCF, 0xD7 }
static

Definition at line 275 of file stem_KOI8_R_russian.c.

◆ s_5_34

const symbol s_5_34[1] = { 0xD8 }
static

Definition at line 276 of file stem_KOI8_R_russian.c.

◆ s_5_35

const symbol s_5_35[1] = { 0xD9 }
static

Definition at line 277 of file stem_KOI8_R_russian.c.

◆ s_5_4

const symbol s_5_4[1] = { 0xC5 }
static

Definition at line 246 of file stem_KOI8_R_russian.c.

◆ s_5_5

const symbol s_5_5[2] = { 0xC9, 0xC5 }
static

Definition at line 247 of file stem_KOI8_R_russian.c.

◆ s_5_6

const symbol s_5_6[2] = { 0xD8, 0xC5 }
static

Definition at line 248 of file stem_KOI8_R_russian.c.

◆ s_5_7

const symbol s_5_7[2] = { 0xC1, 0xC8 }
static

Definition at line 249 of file stem_KOI8_R_russian.c.

◆ s_5_8

const symbol s_5_8[2] = { 0xD1, 0xC8 }
static

Definition at line 250 of file stem_KOI8_R_russian.c.

◆ s_5_9

const symbol s_5_9[3] = { 0xC9, 0xD1, 0xC8 }
static

Definition at line 251 of file stem_KOI8_R_russian.c.

◆ s_6

const symbol s_6[] = { 0xCE }
static

Definition at line 349 of file stem_KOI8_R_russian.c.

Referenced by r_tidy_up().

◆ s_6_0

const symbol s_6_0[3] = { 0xCF, 0xD3, 0xD4 }
static

Definition at line 319 of file stem_KOI8_R_russian.c.

◆ s_6_1

const symbol s_6_1[4] = { 0xCF, 0xD3, 0xD4, 0xD8 }
static

Definition at line 320 of file stem_KOI8_R_russian.c.

◆ s_7

const symbol s_7[] = { 0xCE }
static

Definition at line 350 of file stem_KOI8_R_russian.c.

Referenced by r_tidy_up().

◆ s_7_0

const symbol s_7_0[4] = { 0xC5, 0xCA, 0xDB, 0xC5 }
static

Definition at line 328 of file stem_KOI8_R_russian.c.

◆ s_7_1

const symbol s_7_1[1] = { 0xCE }
static

Definition at line 329 of file stem_KOI8_R_russian.c.

◆ s_7_2

const symbol s_7_2[1] = { 0xD8 }
static

Definition at line 330 of file stem_KOI8_R_russian.c.

◆ s_7_3

const symbol s_7_3[3] = { 0xC5, 0xCA, 0xDB }
static

Definition at line 331 of file stem_KOI8_R_russian.c.

◆ s_8

const symbol s_8[] = { 0xCE }
static

Definition at line 351 of file stem_KOI8_R_russian.c.

Referenced by r_tidy_up().

◆ s_9

const symbol s_9[] = { 0xC9 }
static

Definition at line 352 of file stem_KOI8_R_russian.c.

Referenced by russian_KOI8_R_stem().