9 return (static_cast<Xapian::InternalStemFinnish *>(this_ptr))->r_VI();
13 return (static_cast<Xapian::InternalStemFinnish *>(this_ptr))->r_LONG();
36 'k', 0xC3, 0xA4, 0xC3, 0xA4,
'n',
49 #define s_1_3 (s_1_4 + 1) 60 #define s_2_3 (s_2_4 + 1) 98 0xC3, 0xA4, 0xC3, 0xA4,
100 0xC3, 0xB6, 0xC3, 0xB6,
101 #define s_6_0 (s_6_1 + 2) 108 #define s_6_4 (s_6_5 + 1) 139 'h', 0xC3, 0xA4,
'n',
141 'h', 0xC3, 0xB6,
'n',
142 #define s_6_22 (s_6_20 + 1) 144 'l',
'l', 0xC3, 0xA4,
148 's',
's', 0xC3, 0xA4,
149 #define s_6_26 (s_6_27 + 1) 151 'l',
't', 0xC3, 0xA4,
153 's',
't', 0xC3, 0xA4,
155 't',
't', 0xC3, 0xA4,
158 #define s_7_1 (s_7_2 + 1) 161 #define s_7_3 (s_7_4 + 1) 164 #define s_7_5 (s_7_6 + 1) 167 #define s_7_7 (s_7_8 + 1) 171 'e',
'j', 0xC3, 0xA4,
172 #define s_7_10 (s_7_11 + 1) 174 'i',
'm',
'm', 0xC3, 0xA4,
175 #define s_7_12 (s_7_13 + 1) 177 'i',
'm',
'p', 0xC3, 0xA4,
182 #define s_9_0 (s_9_1 + 1) 292 static const unsigned char af_6[30] =
359 static const unsigned char g_AEI[] = { 17, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8 };
361 static const unsigned char g_V1[] = { 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 32 };
363 static const unsigned char g_V2[] = { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 32 };
365 static const unsigned char g_particle_end[] = { 17, 97, 24, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 32 };
381 if (ret < 0)
return 0;
388 if (ret < 0)
return 0;
396 if (!(
I_p2 <=
c))
return 0;
404 if (
c <
I_p1)
return 0;
408 if (!(among_var)) {
lb = mlimit1;
return 0; }
418 if (ret <= 0)
return ret;
423 if (ret < 0)
return ret;
432 if (
c <
I_p1)
return 0;
436 if (!(among_var)) {
lb = mlimit1;
return 0; }
442 {
int m2 =
l -
c; (void)m2;
443 if (c <=
lb ||
p[c - 1] !=
'k')
goto lab0;
450 if (ret < 0)
return ret;
455 if (ret < 0)
return ret;
461 if (ret < 0)
return ret;
466 if (ret < 0)
return ret;
470 if (
c - 1 <=
lb ||
p[
c - 1] != 97)
return 0;
473 if (ret < 0)
return ret;
477 if (
c - 2 <=
lb ||
p[
c - 1] != 164)
return 0;
480 if (ret < 0)
return ret;
484 if (
c - 2 <=
lb ||
p[
c - 1] != 101)
return 0;
487 if (ret < 0)
return ret;
500 if (
c <=
lb ||
p[
c - 1] !=
'i')
return 0;
510 if (
c <
I_p1)
return 0;
514 if (!(among_var)) {
lb = mlimit1;
return 0; }
520 if (
c <=
lb ||
p[
c - 1] !=
'a')
return 0;
524 if (
c <=
lb ||
p[
c - 1] !=
'e')
return 0;
528 if (
c <=
lb ||
p[
c - 1] !=
'i')
return 0;
532 if (
c <=
lb ||
p[
c - 1] !=
'o')
return 0;
542 {
int m2 =
l -
c; (void)m2;
543 {
int m3 =
l -
c; (void)m3;
544 {
int m4 =
l -
c; (void)m4;
546 if (ret == 0)
goto lab2;
547 if (ret < 0)
return ret;
552 if (!(
eq_s_b(2,
s_4))) { c =
l - m2;
goto lab0; }
557 if (ret < 0) { c =
l - m2;
goto lab0; }
572 if (ret < 0)
return ret;
582 if (
c <
I_p2)
return 0;
586 if (!(among_var)) {
lb = mlimit1;
return 0; }
592 {
int m2 =
l -
c; (void)m2;
601 if (ret < 0)
return ret;
609 if (
c <
I_p1)
return 0;
612 if (
c <=
lb || (
p[
c - 1] != 105 &&
p[
c - 1] != 106)) {
lb = mlimit1;
return 0; }
618 if (ret < 0)
return ret;
627 if (
c <
I_p1)
return 0;
630 if (
c <=
lb ||
p[
c - 1] !=
't') {
lb = mlimit1;
return 0; }
633 {
int m_test2 =
l -
c;
638 if (ret < 0)
return ret;
644 if (
c <
I_p2)
return 0;
647 if (
c - 2 <=
lb ||
p[
c - 1] != 97) {
lb = mlimit3;
return 0; }
649 if (!(among_var)) {
lb = mlimit3;
return 0; }
655 {
int m4 =
l -
c; (void)m4;
664 if (ret < 0)
return ret;
672 if (
c <
I_p1)
return 0;
674 {
int m2 =
l -
c; (void)m2;
675 {
int m3 =
l -
c; (void)m3;
677 if (ret == 0)
goto lab0;
678 if (ret < 0)
return ret;
683 if (ret < 0)
goto lab0;
688 if (ret < 0)
return ret;
694 {
int m4 =
l -
c; (void)m4;
700 if (ret < 0)
return ret;
705 {
int m5 =
l -
c; (void)m5;
707 if (c <=
lb ||
p[c - 1] !=
'j')
goto lab2;
710 {
int m6 =
l -
c; (void)m6;
711 if (c <=
lb ||
p[c - 1] !=
'o')
goto lab4;
716 if (c <=
lb ||
p[c - 1] !=
'u')
goto lab2;
721 if (ret < 0)
return ret;
726 {
int m7 =
l -
c; (void)m7;
728 if (c <=
lb ||
p[c - 1] !=
'o')
goto lab5;
731 if (c <=
lb ||
p[c - 1] !=
'j')
goto lab5;
734 if (ret < 0)
return ret;
744 if (ret < 0)
return 0;
749 if (ret == 0)
return -1;
754 if (ret < 0)
return ret;
762 if (ret < 0)
return ret;
769 {
int m2 =
l -
c; (void)m2;
771 if (ret < 0)
return ret;
775 {
int m3 =
l -
c; (void)m3;
777 if (ret < 0)
return ret;
781 {
int m4 =
l -
c; (void)m4;
783 if (ret < 0)
return ret;
787 {
int m5 =
l -
c; (void)m5;
789 if (ret < 0)
return ret;
795 {
int m6 =
l -
c; (void)m6;
797 if (ret < 0)
return ret;
803 {
int m7 =
l -
c; (void)m7;
805 if (ret < 0)
return ret;
810 {
int m8 =
l -
c; (void)m8;
812 if (ret < 0)
return ret;
static const among_function af[2]
unsigned char I_ending_removed
int find_among_b(const symbol *pool, const struct among *v, int v_size, const unsigned char *fnum, const among_function *f)
static const struct among a_2[6]
static const struct among a_5[7]
int eq_v_b(const symbol *v)
static const unsigned char g_AEI[]
int eq_s_b(int s_size, const symbol *s)
static const struct among a_9[2]
static const symbol s_0[]
static const symbol s_1[]
static const struct among a_6[30]
static const symbol s_6[]
static const struct among a_0[10]
symbol * slice_to(symbol *v)
int slice_from_s(int s_size, const symbol *s)
static const symbol s_pool[]
static const unsigned char g_particle_end[]
static const struct among a_4[9]
static const unsigned char g_V2[]
int(* among_function)(Xapian::StemImplementation *)
static const symbol s_5[]
static const struct among a_1[6]
static const struct among a_8[2]
Class representing a stemming algorithm implementation.
static const struct among a_3[2]
static const struct among a_7[14]
static int skip_utf8(const symbol *p, int c, int lb, int l, int n)
static const unsigned char g_V1[]
std::string get_description() const
Return a string describing this object.
int in_grouping_b_U(const unsigned char *s, int min, int max, int repeat)
static const symbol s_3[]
static const unsigned char af_6[30]
int out_grouping_b_U(const unsigned char *s, int min, int max, int repeat)
static int tr_VI(Xapian::StemImplementation *this_ptr)
static const symbol s_4[]
static symbol * create_s()
int out_grouping_U(const unsigned char *s, int min, int max, int repeat)
int stem()
Virtual method implemented by the subclass to actually do the work.
int in_grouping_U(const unsigned char *s, int min, int max, int repeat)
static int tr_LONG(Xapian::StemImplementation *this_ptr)
static const symbol s_2[]