diff options
Diffstat (limited to 'web/server/h2o/libh2o/misc/oktavia/src/stemmer/german-stemmer.jsx')
-rw-r--r-- | web/server/h2o/libh2o/misc/oktavia/src/stemmer/german-stemmer.jsx | 894 |
1 files changed, 0 insertions, 894 deletions
diff --git a/web/server/h2o/libh2o/misc/oktavia/src/stemmer/german-stemmer.jsx b/web/server/h2o/libh2o/misc/oktavia/src/stemmer/german-stemmer.jsx deleted file mode 100644 index 7659b3a7c..000000000 --- a/web/server/h2o/libh2o/misc/oktavia/src/stemmer/german-stemmer.jsx +++ /dev/null @@ -1,894 +0,0 @@ -// This file was generated automatically by the Snowball to JSX compiler - -import "base-stemmer.jsx"; -import "among.jsx"; - - /** - * This class was automatically generated by a Snowball to JSX compiler - * It implements the stemming algorithm defined by a snowball script. - */ - -class GermanStemmer extends BaseStemmer -{ - static const serialVersionUID = 1; - static const methodObject = new GermanStemmer(); - - static const a_0 = [ - new Among("", -1, 6), - new Among("U", 0, 2), - new Among("Y", 0, 1), - new Among("\u00E4", 0, 3), - new Among("\u00F6", 0, 4), - new Among("\u00FC", 0, 5) - ]; - - static const a_1 = [ - new Among("e", -1, 2), - new Among("em", -1, 1), - new Among("en", -1, 2), - new Among("ern", -1, 1), - new Among("er", -1, 1), - new Among("s", -1, 3), - new Among("es", 5, 2) - ]; - - static const a_2 = [ - new Among("en", -1, 1), - new Among("er", -1, 1), - new Among("st", -1, 2), - new Among("est", 2, 1) - ]; - - static const a_3 = [ - new Among("ig", -1, 1), - new Among("lich", -1, 1) - ]; - - static const a_4 = [ - new Among("end", -1, 1), - new Among("ig", -1, 2), - new Among("ung", -1, 1), - new Among("lich", -1, 3), - new Among("isch", -1, 2), - new Among("ik", -1, 2), - new Among("heit", -1, 3), - new Among("keit", -1, 4) - ]; - - static const g_v = [17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 32, 8] : int[]; - - static const g_s_ending = [117, 30, 5] : int[]; - - static const g_st_ending = [117, 30, 4] : int[]; - - var I_x : int = 0; - var I_p2 : int = 0; - var I_p1 : int = 0; - - function copy_from (other : GermanStemmer) : void - { - this.I_x = other.I_x; - this.I_p2 = other.I_p2; - this.I_p1 = other.I_p1; - super.copy_from(other); - } - - function r_prelude () : boolean - { - var v_1 : int; - var v_2 : int; - var v_3 : int; - var v_4 : int; - var v_5 : int; - var v_6 : int; - // (, line 33 - // test, line 35 - v_1 = this.cursor; - // repeat, line 35 - replab0: while(true) - { - v_2 = this.cursor; - var lab1 = true; - lab1: while (lab1 == true) - { - lab1 = false; - // (, line 35 - // or, line 38 - var lab2 = true; - lab2: while (lab2 == true) - { - lab2 = false; - v_3 = this.cursor; - var lab3 = true; - lab3: while (lab3 == true) - { - lab3 = false; - // (, line 36 - // [, line 37 - this.bra = this.cursor; - // literal, line 37 - if (!(this.eq_s(1, "\u00DF"))) - { - break lab3; - } - // ], line 37 - this.ket = this.cursor; - // <-, line 37 - if (!this.slice_from("ss")) - { - return false; - } - break lab2; - } - this.cursor = v_3; - // next, line 38 - if (this.cursor >= this.limit) - { - break lab1; - } - this.cursor++; - } - continue replab0; - } - this.cursor = v_2; - break replab0; - } - this.cursor = v_1; - // repeat, line 41 - replab4: while(true) - { - v_4 = this.cursor; - var lab5 = true; - lab5: while (lab5 == true) - { - lab5 = false; - // goto, line 41 - golab6: while(true) - { - v_5 = this.cursor; - var lab7 = true; - lab7: while (lab7 == true) - { - lab7 = false; - // (, line 41 - if (!(this.in_grouping(GermanStemmer.g_v, 97, 252))) - { - break lab7; - } - // [, line 42 - this.bra = this.cursor; - // or, line 42 - var lab8 = true; - lab8: while (lab8 == true) - { - lab8 = false; - v_6 = this.cursor; - var lab9 = true; - lab9: while (lab9 == true) - { - lab9 = false; - // (, line 42 - // literal, line 42 - if (!(this.eq_s(1, "u"))) - { - break lab9; - } - // ], line 42 - this.ket = this.cursor; - if (!(this.in_grouping(GermanStemmer.g_v, 97, 252))) - { - break lab9; - } - // <-, line 42 - if (!this.slice_from("U")) - { - return false; - } - break lab8; - } - this.cursor = v_6; - // (, line 43 - // literal, line 43 - if (!(this.eq_s(1, "y"))) - { - break lab7; - } - // ], line 43 - this.ket = this.cursor; - if (!(this.in_grouping(GermanStemmer.g_v, 97, 252))) - { - break lab7; - } - // <-, line 43 - if (!this.slice_from("Y")) - { - return false; - } - } - this.cursor = v_5; - break golab6; - } - this.cursor = v_5; - if (this.cursor >= this.limit) - { - break lab5; - } - this.cursor++; - } - continue replab4; - } - this.cursor = v_4; - break replab4; - } - return true; - } - - function r_mark_regions () : boolean - { - var v_1 : int; - // (, line 47 - this.I_p1 = this.limit; - this.I_p2 = this.limit; - // test, line 52 - v_1 = this.cursor; - // (, line 52 - // hop, line 52 - { - var c : int = this.cursor + 3; - if (0 > c || c > this.limit) - { - return false; - } - this.cursor = c; - } - // setmark x, line 52 - this.I_x = this.cursor; - this.cursor = v_1; - // gopast, line 54 - golab0: while(true) - { - var lab1 = true; - lab1: while (lab1 == true) - { - lab1 = false; - if (!(this.in_grouping(GermanStemmer.g_v, 97, 252))) - { - break lab1; - } - break golab0; - } - if (this.cursor >= this.limit) - { - return false; - } - this.cursor++; - } - // gopast, line 54 - golab2: while(true) - { - var lab3 = true; - lab3: while (lab3 == true) - { - lab3 = false; - if (!(this.out_grouping(GermanStemmer.g_v, 97, 252))) - { - break lab3; - } - break golab2; - } - if (this.cursor >= this.limit) - { - return false; - } - this.cursor++; - } - // setmark p1, line 54 - this.I_p1 = this.cursor; - // try, line 55 - var lab4 = true; - lab4: while (lab4 == true) - { - lab4 = false; - // (, line 55 - if (!(this.I_p1 < this.I_x)) - { - break lab4; - } - this.I_p1 = this.I_x; - } - // gopast, line 56 - golab5: while(true) - { - var lab6 = true; - lab6: while (lab6 == true) - { - lab6 = false; - if (!(this.in_grouping(GermanStemmer.g_v, 97, 252))) - { - break lab6; - } - break golab5; - } - if (this.cursor >= this.limit) - { - return false; - } - this.cursor++; - } - // gopast, line 56 - golab7: while(true) - { - var lab8 = true; - lab8: while (lab8 == true) - { - lab8 = false; - if (!(this.out_grouping(GermanStemmer.g_v, 97, 252))) - { - break lab8; - } - break golab7; - } - if (this.cursor >= this.limit) - { - return false; - } - this.cursor++; - } - // setmark p2, line 56 - this.I_p2 = this.cursor; - return true; - } - - function r_postlude () : boolean - { - var among_var : int; - var v_1 : int; - // repeat, line 60 - replab0: while(true) - { - v_1 = this.cursor; - var lab1 = true; - lab1: while (lab1 == true) - { - lab1 = false; - // (, line 60 - // [, line 62 - this.bra = this.cursor; - // substring, line 62 - among_var = this.find_among(GermanStemmer.a_0, 6); - if (among_var == 0) - { - break lab1; - } - // ], line 62 - this.ket = this.cursor; - switch (among_var) { - case 0: - break lab1; - case 1: - // (, line 63 - // <-, line 63 - if (!this.slice_from("y")) - { - return false; - } - break; - case 2: - // (, line 64 - // <-, line 64 - if (!this.slice_from("u")) - { - return false; - } - break; - case 3: - // (, line 65 - // <-, line 65 - if (!this.slice_from("a")) - { - return false; - } - break; - case 4: - // (, line 66 - // <-, line 66 - if (!this.slice_from("o")) - { - return false; - } - break; - case 5: - // (, line 67 - // <-, line 67 - if (!this.slice_from("u")) - { - return false; - } - break; - case 6: - // (, line 68 - // next, line 68 - if (this.cursor >= this.limit) - { - break lab1; - } - this.cursor++; - break; - } - continue replab0; - } - this.cursor = v_1; - break replab0; - } - return true; - } - - function r_R1 () : boolean - { - if (!(this.I_p1 <= this.cursor)) - { - return false; - } - return true; - } - - function r_R2 () : boolean - { - if (!(this.I_p2 <= this.cursor)) - { - return false; - } - return true; - } - - function r_standard_suffix () : boolean - { - var among_var : int; - var v_1 : int; - var v_2 : int; - var v_3 : int; - var v_4 : int; - var v_5 : int; - var v_6 : int; - var v_7 : int; - var v_8 : int; - var v_9 : int; - var v_10 : int; - // (, line 78 - // do, line 79 - v_1 = this.limit - this.cursor; - var lab0 = true; - lab0: while (lab0 == true) - { - lab0 = false; - // (, line 79 - // [, line 80 - this.ket = this.cursor; - // substring, line 80 - among_var = this.find_among_b(GermanStemmer.a_1, 7); - if (among_var == 0) - { - break lab0; - } - // ], line 80 - this.bra = this.cursor; - // call R1, line 80 - if (!this.r_R1()) - { - break lab0; - } - switch (among_var) { - case 0: - break lab0; - case 1: - // (, line 82 - // delete, line 82 - if (!this.slice_del()) - { - return false; - } - break; - case 2: - // (, line 85 - // delete, line 85 - if (!this.slice_del()) - { - return false; - } - // try, line 86 - v_2 = this.limit - this.cursor; - var lab1 = true; - lab1: while (lab1 == true) - { - lab1 = false; - // (, line 86 - // [, line 86 - this.ket = this.cursor; - // literal, line 86 - if (!(this.eq_s_b(1, "s"))) - { - this.cursor = this.limit - v_2; - break lab1; - } - // ], line 86 - this.bra = this.cursor; - // literal, line 86 - if (!(this.eq_s_b(3, "nis"))) - { - this.cursor = this.limit - v_2; - break lab1; - } - // delete, line 86 - if (!this.slice_del()) - { - return false; - } - } - break; - case 3: - // (, line 89 - if (!(this.in_grouping_b(GermanStemmer.g_s_ending, 98, 116))) - { - break lab0; - } - // delete, line 89 - if (!this.slice_del()) - { - return false; - } - break; - } - } - this.cursor = this.limit - v_1; - // do, line 93 - v_3 = this.limit - this.cursor; - var lab2 = true; - lab2: while (lab2 == true) - { - lab2 = false; - // (, line 93 - // [, line 94 - this.ket = this.cursor; - // substring, line 94 - among_var = this.find_among_b(GermanStemmer.a_2, 4); - if (among_var == 0) - { - break lab2; - } - // ], line 94 - this.bra = this.cursor; - // call R1, line 94 - if (!this.r_R1()) - { - break lab2; - } - switch (among_var) { - case 0: - break lab2; - case 1: - // (, line 96 - // delete, line 96 - if (!this.slice_del()) - { - return false; - } - break; - case 2: - // (, line 99 - if (!(this.in_grouping_b(GermanStemmer.g_st_ending, 98, 116))) - { - break lab2; - } - // hop, line 99 - { - var c : int = this.cursor - 3; - if (this.limit_backward > c || c > this.limit) - { - break lab2; - } - this.cursor = c; - } - // delete, line 99 - if (!this.slice_del()) - { - return false; - } - break; - } - } - this.cursor = this.limit - v_3; - // do, line 103 - v_4 = this.limit - this.cursor; - var lab3 = true; - lab3: while (lab3 == true) - { - lab3 = false; - // (, line 103 - // [, line 104 - this.ket = this.cursor; - // substring, line 104 - among_var = this.find_among_b(GermanStemmer.a_4, 8); - if (among_var == 0) - { - break lab3; - } - // ], line 104 - this.bra = this.cursor; - // call R2, line 104 - if (!this.r_R2()) - { - break lab3; - } - switch (among_var) { - case 0: - break lab3; - case 1: - // (, line 106 - // delete, line 106 - if (!this.slice_del()) - { - return false; - } - // try, line 107 - v_5 = this.limit - this.cursor; - var lab4 = true; - lab4: while (lab4 == true) - { - lab4 = false; - // (, line 107 - // [, line 107 - this.ket = this.cursor; - // literal, line 107 - if (!(this.eq_s_b(2, "ig"))) - { - this.cursor = this.limit - v_5; - break lab4; - } - // ], line 107 - this.bra = this.cursor; - // not, line 107 - { - v_6 = this.limit - this.cursor; - var lab5 = true; - lab5: while (lab5 == true) - { - lab5 = false; - // literal, line 107 - if (!(this.eq_s_b(1, "e"))) - { - break lab5; - } - this.cursor = this.limit - v_5; - break lab4; - } - this.cursor = this.limit - v_6; - } - // call R2, line 107 - if (!this.r_R2()) - { - this.cursor = this.limit - v_5; - break lab4; - } - // delete, line 107 - if (!this.slice_del()) - { - return false; - } - } - break; - case 2: - // (, line 110 - // not, line 110 - { - v_7 = this.limit - this.cursor; - var lab6 = true; - lab6: while (lab6 == true) - { - lab6 = false; - // literal, line 110 - if (!(this.eq_s_b(1, "e"))) - { - break lab6; - } - break lab3; - } - this.cursor = this.limit - v_7; - } - // delete, line 110 - if (!this.slice_del()) - { - return false; - } - break; - case 3: - // (, line 113 - // delete, line 113 - if (!this.slice_del()) - { - return false; - } - // try, line 114 - v_8 = this.limit - this.cursor; - var lab7 = true; - lab7: while (lab7 == true) - { - lab7 = false; - // (, line 114 - // [, line 115 - this.ket = this.cursor; - // or, line 115 - var lab8 = true; - lab8: while (lab8 == true) - { - lab8 = false; - v_9 = this.limit - this.cursor; - var lab9 = true; - lab9: while (lab9 == true) - { - lab9 = false; - // literal, line 115 - if (!(this.eq_s_b(2, "er"))) - { - break lab9; - } - break lab8; - } - this.cursor = this.limit - v_9; - // literal, line 115 - if (!(this.eq_s_b(2, "en"))) - { - this.cursor = this.limit - v_8; - break lab7; - } - } - // ], line 115 - this.bra = this.cursor; - // call R1, line 115 - if (!this.r_R1()) - { - this.cursor = this.limit - v_8; - break lab7; - } - // delete, line 115 - if (!this.slice_del()) - { - return false; - } - } - break; - case 4: - // (, line 119 - // delete, line 119 - if (!this.slice_del()) - { - return false; - } - // try, line 120 - v_10 = this.limit - this.cursor; - var lab10 = true; - lab10: while (lab10 == true) - { - lab10 = false; - // (, line 120 - // [, line 121 - this.ket = this.cursor; - // substring, line 121 - among_var = this.find_among_b(GermanStemmer.a_3, 2); - if (among_var == 0) - { - this.cursor = this.limit - v_10; - break lab10; - } - // ], line 121 - this.bra = this.cursor; - // call R2, line 121 - if (!this.r_R2()) - { - this.cursor = this.limit - v_10; - break lab10; - } - switch (among_var) { - case 0: - this.cursor = this.limit - v_10; - break lab10; - case 1: - // (, line 123 - // delete, line 123 - if (!this.slice_del()) - { - return false; - } - break; - } - } - break; - } - } - this.cursor = this.limit - v_4; - return true; - } - - override function stem () : boolean - { - var v_1 : int; - var v_2 : int; - var v_3 : int; - var v_4 : int; - // (, line 133 - // do, line 134 - v_1 = this.cursor; - var lab0 = true; - lab0: while (lab0 == true) - { - lab0 = false; - // call prelude, line 134 - if (!this.r_prelude()) - { - break lab0; - } - } - this.cursor = v_1; - // do, line 135 - v_2 = this.cursor; - var lab1 = true; - lab1: while (lab1 == true) - { - lab1 = false; - // call mark_regions, line 135 - if (!this.r_mark_regions()) - { - break lab1; - } - } - this.cursor = v_2; - // backwards, line 136 - this.limit_backward = this.cursor; this.cursor = this.limit; - // do, line 137 - v_3 = this.limit - this.cursor; - var lab2 = true; - lab2: while (lab2 == true) - { - lab2 = false; - // call standard_suffix, line 137 - if (!this.r_standard_suffix()) - { - break lab2; - } - } - this.cursor = this.limit - v_3; - this.cursor = this.limit_backward; // do, line 138 - v_4 = this.cursor; - var lab3 = true; - lab3: while (lab3 == true) - { - lab3 = false; - // call postlude, line 138 - if (!this.r_postlude()) - { - break lab3; - } - } - this.cursor = v_4; - return true; - } - - function equals (o : variant) : boolean { - return o instanceof GermanStemmer; - } - - function hashCode() : int - { - //http://stackoverflow.com/questions/194846/is-there-any-kind-of-hashcode-function-in-javascript - var classname = "GermanStemmer"; - var hash = 0; - if (classname.length == 0) return hash; - for (var i = 0; i < classname.length; i++) { - var char = classname.charCodeAt(i); - hash = ((hash << 5) - hash) + char; - hash = hash & hash; // Convert to 32bit integer - } - return hash; - } - -} - |