All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.tartarus.snowball.ext.TamilStemmer Maven / Gradle / Ivy

The newest version!
// Generated by Snowball 2.2.0 - https://snowballstem.org/

package org.tartarus.snowball.ext;

import org.tartarus.snowball.Among;

/**
 * This class implements the stemming algorithm defined by a snowball script.
 *
 * 

Generated by Snowball 2.2.0 - https://snowballstem.org/ */ @SuppressWarnings("unused") public class TamilStemmer extends org.tartarus.snowball.SnowballStemmer { private static final long serialVersionUID = 1L; private static final Among a_0[] = { new Among("\u0BB5\u0BC1", -1, 3), new Among("\u0BB5\u0BC2", -1, 4), new Among("\u0BB5\u0BCA", -1, 2), new Among("\u0BB5\u0BCB", -1, 1) }; private static final Among a_1[] = { new Among("\u0B95", -1, -1), new Among("\u0B99", -1, -1), new Among("\u0B9A", -1, -1), new Among("\u0B9E", -1, -1), new Among("\u0BA4", -1, -1), new Among("\u0BA8", -1, -1), new Among("\u0BAA", -1, -1), new Among("\u0BAE", -1, -1), new Among("\u0BAF", -1, -1), new Among("\u0BB5", -1, -1) }; private static final Among a_2[] = { new Among("\u0BBF", -1, -1), new Among("\u0BC0", -1, -1), new Among("\u0BC8", -1, -1) }; private static final Among a_3[] = { new Among("\u0BBE", -1, -1), new Among("\u0BBF", -1, -1), new Among("\u0BC0", -1, -1), new Among("\u0BC1", -1, -1), new Among("\u0BC2", -1, -1), new Among("\u0BC6", -1, -1), new Among("\u0BC7", -1, -1), new Among("\u0BC8", -1, -1) }; private static final Among a_4[] = { new Among("", -1, 2), new Among("\u0BC8", 0, 1), new Among("\u0BCD", 0, 1) }; private static final Among a_5[] = { new Among("\u0BA8\u0BCD\u0BA4", -1, 1), new Among("\u0BAF", -1, 1), new Among("\u0BB5", -1, 1), new Among("\u0BA9\u0BC1", -1, 8), new Among("\u0BC1\u0B95\u0BCD", -1, 7), new Among("\u0BC1\u0B95\u0BCD\u0B95\u0BCD", -1, 7), new Among("\u0B9F\u0BCD\u0B95\u0BCD", -1, 3), new Among("\u0BB1\u0BCD\u0B95\u0BCD", -1, 4), new Among("\u0B99\u0BCD", -1, 9), new Among("\u0B9F\u0BCD\u0B9F\u0BCD", -1, 5), new Among("\u0BA4\u0BCD\u0BA4\u0BCD", -1, 6), new Among("\u0BA8\u0BCD\u0BA4\u0BCD", -1, 1), new Among("\u0BA8\u0BCD", -1, 1), new Among("\u0B9F\u0BCD\u0BAA\u0BCD", -1, 3), new Among("\u0BAF\u0BCD", -1, 2), new Among("\u0BA9\u0BCD\u0BB1\u0BCD", -1, 4), new Among("\u0BB5\u0BCD", -1, 1) }; private static final Among a_6[] = { new Among("\u0B95", -1, -1), new Among("\u0B9A", -1, -1), new Among("\u0B9F", -1, -1), new Among("\u0BA4", -1, -1), new Among("\u0BAA", -1, -1), new Among("\u0BB1", -1, -1) }; private static final Among a_7[] = { new Among("\u0B95", -1, -1), new Among("\u0B9A", -1, -1), new Among("\u0B9F", -1, -1), new Among("\u0BA4", -1, -1), new Among("\u0BAA", -1, -1), new Among("\u0BB1", -1, -1) }; private static final Among a_8[] = { new Among("\u0B9E", -1, -1), new Among("\u0BA3", -1, -1), new Among("\u0BA8", -1, -1), new Among("\u0BA9", -1, -1), new Among("\u0BAE", -1, -1), new Among("\u0BAF", -1, -1), new Among("\u0BB0", -1, -1), new Among("\u0BB2", -1, -1), new Among("\u0BB3", -1, -1), new Among("\u0BB4", -1, -1), new Among("\u0BB5", -1, -1) }; private static final Among a_9[] = { new Among("\u0BBE", -1, -1), new Among("\u0BBF", -1, -1), new Among("\u0BC0", -1, -1), new Among("\u0BC1", -1, -1), new Among("\u0BC2", -1, -1), new Among("\u0BC6", -1, -1), new Among("\u0BC7", -1, -1), new Among("\u0BC8", -1, -1), new Among("\u0BCD", -1, -1) }; private static final Among a_10[] = { new Among("\u0B85", -1, -1), new Among("\u0B87", -1, -1), new Among("\u0B89", -1, -1) }; private static final Among a_11[] = { new Among("\u0B95", -1, -1), new Among("\u0B99", -1, -1), new Among("\u0B9A", -1, -1), new Among("\u0B9E", -1, -1), new Among("\u0BA4", -1, -1), new Among("\u0BA8", -1, -1), new Among("\u0BAA", -1, -1), new Among("\u0BAE", -1, -1), new Among("\u0BAF", -1, -1), new Among("\u0BB5", -1, -1) }; private static final Among a_12[] = { new Among("\u0B95", -1, -1), new Among("\u0B9A", -1, -1), new Among("\u0B9F", -1, -1), new Among("\u0BA4", -1, -1), new Among("\u0BAA", -1, -1), new Among("\u0BB1", -1, -1) }; private static final Among a_13[] = { new Among("\u0B95\u0BB3\u0BCD", -1, 4), new Among("\u0BC1\u0B99\u0BCD\u0B95\u0BB3\u0BCD", 0, 1), new Among("\u0B9F\u0BCD\u0B95\u0BB3\u0BCD", 0, 3), new Among("\u0BB1\u0BCD\u0B95\u0BB3\u0BCD", 0, 2) }; private static final Among a_14[] = { new Among("\u0BBE", -1, -1), new Among("\u0BC7", -1, -1), new Among("\u0BCB", -1, -1) }; private static final Among a_15[] = { new Among("\u0BAA\u0BBF", -1, -1), new Among("\u0BB5\u0BBF", -1, -1) }; private static final Among a_16[] = { new Among("\u0BBE", -1, -1), new Among("\u0BBF", -1, -1), new Among("\u0BC0", -1, -1), new Among("\u0BC1", -1, -1), new Among("\u0BC2", -1, -1), new Among("\u0BC6", -1, -1), new Among("\u0BC7", -1, -1), new Among("\u0BC8", -1, -1) }; private static final Among a_17[] = { new Among("\u0BAA\u0B9F\u0BCD\u0B9F", -1, 3), new Among("\u0BAA\u0B9F\u0BCD\u0B9F\u0BA3", -1, 3), new Among("\u0BA4\u0BBE\u0BA9", -1, 3), new Among("\u0BAA\u0B9F\u0BBF\u0BA4\u0BBE\u0BA9", 2, 3), new Among("\u0BC6\u0BA9", -1, 1), new Among("\u0BBE\u0B95\u0BBF\u0BAF", -1, 1), new Among("\u0B95\u0BC1\u0BB0\u0BBF\u0BAF", -1, 3), new Among("\u0BC1\u0B9F\u0BC8\u0BAF", -1, 1), new Among("\u0BB2\u0BCD\u0BB2", -1, 2), new Among("\u0BC1\u0BB3\u0BCD\u0BB3", -1, 1), new Among("\u0BBE\u0B95\u0BBF", -1, 1), new Among("\u0BAA\u0B9F\u0BBF", -1, 3), new Among("\u0BBF\u0BA9\u0BCD\u0BB1\u0BBF", -1, 1), new Among("\u0BAA\u0BB1\u0BCD\u0BB1\u0BBF", -1, 3), new Among("\u0BAA\u0B9F\u0BC1", -1, 3), new Among("\u0BB5\u0BBF\u0B9F\u0BC1", -1, 3), new Among("\u0BAA\u0B9F\u0BCD\u0B9F\u0BC1", -1, 3), new Among("\u0BB5\u0BBF\u0B9F\u0BCD\u0B9F\u0BC1", -1, 3), new Among("\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1", -1, 3), new Among("\u0BC6\u0BA9\u0BCD\u0BB1\u0BC1", -1, 1), new Among("\u0BC1\u0B9F\u0BC8", -1, 1), new Among("\u0BBF\u0BB2\u0BCD\u0BB2\u0BC8", -1, 1), new Among("\u0BC1\u0B9F\u0BA9\u0BCD", -1, 1), new Among("\u0BBF\u0B9F\u0BAE\u0BCD", -1, 1), new Among("\u0BC6\u0BB2\u0BCD\u0BB2\u0BBE\u0BAE\u0BCD", -1, 3), new Among("\u0BC6\u0BA9\u0BC1\u0BAE\u0BCD", -1, 1) }; private static final Among a_18[] = { new Among("\u0BBE", -1, -1), new Among("\u0BBF", -1, -1), new Among("\u0BC0", -1, -1), new Among("\u0BC1", -1, -1), new Among("\u0BC2", -1, -1), new Among("\u0BC6", -1, -1), new Among("\u0BC7", -1, -1), new Among("\u0BC8", -1, -1) }; private static final Among a_19[] = { new Among("\u0BBE", -1, -1), new Among("\u0BBF", -1, -1), new Among("\u0BC0", -1, -1), new Among("\u0BC1", -1, -1), new Among("\u0BC2", -1, -1), new Among("\u0BC6", -1, -1), new Among("\u0BC7", -1, -1), new Among("\u0BC8", -1, -1) }; private static final Among a_20[] = { new Among("\u0BB5\u0BBF\u0B9F", -1, 2), new Among("\u0BC0", -1, 7), new Among("\u0BCA\u0B9F\u0BC1", -1, 2), new Among("\u0BCB\u0B9F\u0BC1", -1, 2), new Among("\u0BA4\u0BC1", -1, 6), new Among("\u0BBF\u0BB0\u0BC1\u0BA8\u0BCD\u0BA4\u0BC1", 4, 2), new Among("\u0BBF\u0BA9\u0BCD\u0BB1\u0BC1", -1, 2), new Among("\u0BC1\u0B9F\u0BC8", -1, 2), new Among("\u0BA9\u0BC8", -1, 1), new Among("\u0B95\u0BA3\u0BCD", -1, 1), new Among("\u0BBF\u0BA9\u0BCD", -1, 3), new Among("\u0BAE\u0BC1\u0BA9\u0BCD", -1, 1), new Among("\u0BBF\u0B9F\u0BAE\u0BCD", -1, 4), new Among("\u0BBF\u0BB1\u0BCD", -1, 2), new Among("\u0BAE\u0BC7\u0BB1\u0BCD", -1, 1), new Among("\u0BB2\u0BCD", -1, 5), new Among("\u0BBE\u0BAE\u0BB2\u0BCD", 15, 2), new Among("\u0BBE\u0BB2\u0BCD", 15, 2), new Among("\u0BBF\u0BB2\u0BCD", 15, 2), new Among("\u0BAE\u0BC7\u0BB2\u0BCD", 15, 1), new Among("\u0BC1\u0BB3\u0BCD", -1, 2), new Among("\u0B95\u0BC0\u0BB4\u0BCD", -1, 1) }; private static final Among a_21[] = { new Among("\u0B95", -1, -1), new Among("\u0B9A", -1, -1), new Among("\u0B9F", -1, -1), new Among("\u0BA4", -1, -1), new Among("\u0BAA", -1, -1), new Among("\u0BB1", -1, -1) }; private static final Among a_22[] = { new Among("\u0B95", -1, -1), new Among("\u0B9A", -1, -1), new Among("\u0B9F", -1, -1), new Among("\u0BA4", -1, -1), new Among("\u0BAA", -1, -1), new Among("\u0BB1", -1, -1) }; private static final Among a_23[] = { new Among("\u0B85", -1, -1), new Among("\u0B86", -1, -1), new Among("\u0B87", -1, -1), new Among("\u0B88", -1, -1), new Among("\u0B89", -1, -1), new Among("\u0B8A", -1, -1), new Among("\u0B8E", -1, -1), new Among("\u0B8F", -1, -1), new Among("\u0B90", -1, -1), new Among("\u0B92", -1, -1), new Among("\u0B93", -1, -1), new Among("\u0B94", -1, -1) }; private static final Among a_24[] = { new Among("\u0BBE", -1, -1), new Among("\u0BBF", -1, -1), new Among("\u0BC0", -1, -1), new Among("\u0BC1", -1, -1), new Among("\u0BC2", -1, -1), new Among("\u0BC6", -1, -1), new Among("\u0BC7", -1, -1), new Among("\u0BC8", -1, -1) }; private static final Among a_25[] = { new Among("\u0B95", -1, 1), new Among("\u0BA4", -1, 1), new Among("\u0BA9", -1, 1), new Among("\u0BAA", -1, 1), new Among("\u0BAF", -1, 1), new Among("\u0BBE", -1, 5), new Among("\u0B95\u0BC1", -1, 6), new Among("\u0BAA\u0B9F\u0BC1", -1, 1), new Among("\u0BA4\u0BC1", -1, 3), new Among("\u0BBF\u0BB1\u0BCD\u0BB1\u0BC1", -1, 1), new Among("\u0BA9\u0BC8", -1, 1), new Among("\u0BB5\u0BC8", -1, 1), new Among("\u0BA9\u0BA9\u0BCD", -1, 1), new Among("\u0BAA\u0BA9\u0BCD", -1, 1), new Among("\u0BB5\u0BA9\u0BCD", -1, 2), new Among("\u0BBE\u0BA9\u0BCD", -1, 4), new Among("\u0BA9\u0BBE\u0BA9\u0BCD", 15, 1), new Among("\u0BAE\u0BBF\u0BA9\u0BCD", -1, 1), new Among("\u0BA9\u0BC6\u0BA9\u0BCD", -1, 1), new Among("\u0BC7\u0BA9\u0BCD", -1, 5), new Among("\u0BA9\u0BAE\u0BCD", -1, 1), new Among("\u0BAA\u0BAE\u0BCD", -1, 1), new Among("\u0BBE\u0BAE\u0BCD", -1, 5), new Among("\u0B95\u0BC1\u0BAE\u0BCD", -1, 1), new Among("\u0B9F\u0BC1\u0BAE\u0BCD", -1, 5), new Among("\u0BA4\u0BC1\u0BAE\u0BCD", -1, 1), new Among("\u0BB1\u0BC1\u0BAE\u0BCD", -1, 1), new Among("\u0BC6\u0BAE\u0BCD", -1, 5), new Among("\u0BC7\u0BAE\u0BCD", -1, 5), new Among("\u0BCB\u0BAE\u0BCD", -1, 5), new Among("\u0BBE\u0BAF\u0BCD", -1, 5), new Among("\u0BA9\u0BB0\u0BCD", -1, 1), new Among("\u0BAA\u0BB0\u0BCD", -1, 1), new Among("\u0BC0\u0BAF\u0BB0\u0BCD", -1, 5), new Among("\u0BB5\u0BB0\u0BCD", -1, 1), new Among("\u0BBE\u0BB0\u0BCD", -1, 5), new Among("\u0BA9\u0BBE\u0BB0\u0BCD", 35, 1), new Among("\u0BAE\u0BBE\u0BB0\u0BCD", 35, 1), new Among("\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BCD", -1, 1), new Among("\u0BA9\u0BBF\u0BB0\u0BCD", -1, 5), new Among("\u0BC0\u0BB0\u0BCD", -1, 5), new Among("\u0BA9\u0BB3\u0BCD", -1, 1), new Among("\u0BAA\u0BB3\u0BCD", -1, 1), new Among("\u0BB5\u0BB3\u0BCD", -1, 1), new Among("\u0BBE\u0BB3\u0BCD", -1, 5), new Among("\u0BA9\u0BBE\u0BB3\u0BCD", 44, 1) }; private static final Among a_26[] = { new Among("\u0B95\u0BBF\u0BB1", -1, -1), new Among("\u0B95\u0BBF\u0BA9\u0BCD\u0BB1", -1, -1), new Among("\u0BBE\u0BA8\u0BBF\u0BA9\u0BCD\u0BB1", -1, -1), new Among("\u0B95\u0BBF\u0BB1\u0BCD", -1, -1), new Among("\u0B95\u0BBF\u0BA9\u0BCD\u0BB1\u0BCD", -1, -1), new Among("\u0BBE\u0BA8\u0BBF\u0BA9\u0BCD\u0BB1\u0BCD", -1, -1) }; private boolean B_found_vetrumai_urupu; private boolean B_found_a_match; private boolean r_has_min_length() { return length > 4; } private boolean r_fix_va_start() { int among_var; bra = cursor; among_var = find_among(a_0); if (among_var == 0) { return false; } ket = cursor; switch (among_var) { case 1: slice_from("\u0B93"); break; case 2: slice_from("\u0B92"); break; case 3: slice_from("\u0B89"); break; case 4: slice_from("\u0B8A"); break; } return true; } private boolean r_fix_endings() { int v_1 = cursor; lab0: { while (true) { int v_2 = cursor; lab1: { if (!r_fix_ending()) { break lab1; } continue; } cursor = v_2; break; } } cursor = v_1; return true; } private boolean r_remove_question_prefixes() { bra = cursor; if (!(eq_s("\u0B8E"))) { return false; } if (find_among(a_1) == 0) { return false; } if (!(eq_s("\u0BCD"))) { return false; } ket = cursor; slice_del(); int v_1 = cursor; r_fix_va_start(); cursor = v_1; return true; } private boolean r_fix_ending() { int among_var; if (length <= 3) { return false; } limit_backward = cursor; cursor = limit; lab0: { int v_1 = limit - cursor; lab1: { ket = cursor; among_var = find_among_b(a_5); if (among_var == 0) { break lab1; } bra = cursor; switch (among_var) { case 1: slice_del(); break; case 2: int v_2 = limit - cursor; if (find_among_b(a_2) == 0) { break lab1; } cursor = limit - v_2; slice_del(); break; case 3: slice_from("\u0BB3\u0BCD"); break; case 4: slice_from("\u0BB2\u0BCD"); break; case 5: slice_from("\u0B9F\u0BC1"); break; case 6: if (!(B_found_vetrumai_urupu)) { break lab1; } { int v_3 = limit - cursor; lab2: { if (!(eq_s_b("\u0BC8"))) { break lab2; } break lab1; } cursor = limit - v_3; } slice_from("\u0BAE\u0BCD"); break; case 7: slice_from("\u0BCD"); break; case 8: { int v_4 = limit - cursor; lab3: { if (find_among_b(a_3) == 0) { break lab3; } break lab1; } cursor = limit - v_4; } slice_del(); break; case 9: among_var = find_among_b(a_4); switch (among_var) { case 1: slice_del(); break; case 2: slice_from("\u0BAE\u0BCD"); break; } break; } break lab0; } cursor = limit - v_1; ket = cursor; if (!(eq_s_b("\u0BCD"))) { return false; } lab4: { int v_5 = limit - cursor; lab5: { if (find_among_b(a_6) == 0) { break lab5; } int v_6 = limit - cursor; lab6: { if (!(eq_s_b("\u0BCD"))) { cursor = limit - v_6; break lab6; } if (find_among_b(a_7) == 0) { cursor = limit - v_6; break lab6; } } bra = cursor; slice_del(); break lab4; } cursor = limit - v_5; lab7: { if (find_among_b(a_8) == 0) { break lab7; } bra = cursor; if (!(eq_s_b("\u0BCD"))) { break lab7; } slice_del(); break lab4; } cursor = limit - v_5; int v_7 = limit - cursor; if (find_among_b(a_9) == 0) { return false; } cursor = limit - v_7; bra = cursor; slice_del(); } } cursor = limit_backward; return true; } private boolean r_remove_pronoun_prefixes() { bra = cursor; if (find_among(a_10) == 0) { return false; } if (find_among(a_11) == 0) { return false; } if (!(eq_s("\u0BCD"))) { return false; } ket = cursor; slice_del(); int v_1 = cursor; r_fix_va_start(); cursor = v_1; return true; } private boolean r_remove_plural_suffix() { int among_var; limit_backward = cursor; cursor = limit; ket = cursor; among_var = find_among_b(a_13); if (among_var == 0) { return false; } bra = cursor; switch (among_var) { case 1: lab0: { int v_1 = limit - cursor; lab1: { if (find_among_b(a_12) == 0) { break lab1; } slice_from("\u0BC1\u0B99\u0BCD"); break lab0; } cursor = limit - v_1; slice_from("\u0BCD"); } break; case 2: slice_from("\u0BB2\u0BCD"); break; case 3: slice_from("\u0BB3\u0BCD"); break; case 4: slice_del(); break; } cursor = limit_backward; return true; } private boolean r_remove_question_suffixes() { if (!r_has_min_length()) { return false; } limit_backward = cursor; cursor = limit; int v_1 = limit - cursor; lab0: { ket = cursor; if (find_among_b(a_14) == 0) { break lab0; } bra = cursor; slice_from("\u0BCD"); } cursor = limit - v_1; cursor = limit_backward; r_fix_endings(); return true; } private boolean r_remove_command_suffixes() { if (!r_has_min_length()) { return false; } limit_backward = cursor; cursor = limit; ket = cursor; if (find_among_b(a_15) == 0) { return false; } bra = cursor; slice_del(); cursor = limit_backward; return true; } private boolean r_remove_um() { if (!r_has_min_length()) { return false; } limit_backward = cursor; cursor = limit; ket = cursor; if (!(eq_s_b("\u0BC1\u0BAE\u0BCD"))) { return false; } bra = cursor; slice_from("\u0BCD"); cursor = limit_backward; int v_1 = cursor; r_fix_ending(); cursor = v_1; return true; } private boolean r_remove_common_word_endings() { int among_var; if (!r_has_min_length()) { return false; } limit_backward = cursor; cursor = limit; ket = cursor; among_var = find_among_b(a_17); if (among_var == 0) { return false; } bra = cursor; switch (among_var) { case 1: slice_from("\u0BCD"); break; case 2: { int v_1 = limit - cursor; lab0: { if (find_among_b(a_16) == 0) { break lab0; } return false; } cursor = limit - v_1; } slice_from("\u0BCD"); break; case 3: slice_del(); break; } cursor = limit_backward; r_fix_endings(); return true; } private boolean r_remove_vetrumai_urupukal() { int among_var; B_found_vetrumai_urupu = false; if (!r_has_min_length()) { return false; } limit_backward = cursor; cursor = limit; lab0: { int v_1 = limit - cursor; lab1: { int v_2 = limit - cursor; ket = cursor; among_var = find_among_b(a_20); if (among_var == 0) { break lab1; } bra = cursor; switch (among_var) { case 1: slice_del(); break; case 2: slice_from("\u0BCD"); break; case 3: { int v_3 = limit - cursor; lab2: { if (!(eq_s_b("\u0BAE"))) { break lab2; } break lab1; } cursor = limit - v_3; } slice_from("\u0BCD"); break; case 4: if (length < 7) { break lab1; } slice_from("\u0BCD"); break; case 5: { int v_4 = limit - cursor; lab3: { if (find_among_b(a_18) == 0) { break lab3; } break lab1; } cursor = limit - v_4; } slice_from("\u0BCD"); break; case 6: { int v_5 = limit - cursor; lab4: { if (find_among_b(a_19) == 0) { break lab4; } break lab1; } cursor = limit - v_5; } slice_del(); break; case 7: slice_from("\u0BBF"); break; } cursor = limit - v_2; break lab0; } cursor = limit - v_1; int v_6 = limit - cursor; ket = cursor; if (!(eq_s_b("\u0BC8"))) { return false; } lab5: { int v_7 = limit - cursor; lab6: { { int v_8 = limit - cursor; lab7: { if (find_among_b(a_21) == 0) { break lab7; } break lab6; } cursor = limit - v_8; } break lab5; } cursor = limit - v_7; int v_9 = limit - cursor; if (find_among_b(a_22) == 0) { return false; } if (!(eq_s_b("\u0BCD"))) { return false; } cursor = limit - v_9; } bra = cursor; slice_from("\u0BCD"); cursor = limit - v_6; } B_found_vetrumai_urupu = true; int v_10 = limit - cursor; lab8: { ket = cursor; if (!(eq_s_b("\u0BBF\u0BA9\u0BCD"))) { break lab8; } bra = cursor; slice_from("\u0BCD"); } cursor = limit - v_10; cursor = limit_backward; r_fix_endings(); return true; } private boolean r_remove_tense_suffixes() { B_found_a_match = true; while (true) { int v_1 = cursor; lab0: { if (!(B_found_a_match)) { break lab0; } int v_2 = cursor; r_remove_tense_suffix(); cursor = v_2; continue; } cursor = v_1; break; } return true; } private boolean r_remove_tense_suffix() { int among_var; B_found_a_match = false; if (!r_has_min_length()) { return false; } limit_backward = cursor; cursor = limit; int v_1 = limit - cursor; lab0: { int v_2 = limit - cursor; ket = cursor; among_var = find_among_b(a_25); if (among_var == 0) { break lab0; } bra = cursor; switch (among_var) { case 1: slice_del(); break; case 2: { int v_3 = limit - cursor; lab1: { if (find_among_b(a_23) == 0) { break lab1; } break lab0; } cursor = limit - v_3; } slice_del(); break; case 3: { int v_4 = limit - cursor; lab2: { if (find_among_b(a_24) == 0) { break lab2; } break lab0; } cursor = limit - v_4; } slice_del(); break; case 4: { int v_5 = limit - cursor; lab3: { if (!(eq_s_b("\u0B9A"))) { break lab3; } break lab0; } cursor = limit - v_5; } slice_from("\u0BCD"); break; case 5: slice_from("\u0BCD"); break; case 6: int v_6 = limit - cursor; if (!(eq_s_b("\u0BCD"))) { break lab0; } cursor = limit - v_6; slice_del(); break; } B_found_a_match = true; cursor = limit - v_2; } cursor = limit - v_1; int v_7 = limit - cursor; lab4: { ket = cursor; if (find_among_b(a_26) == 0) { break lab4; } bra = cursor; slice_del(); B_found_a_match = true; } cursor = limit - v_7; cursor = limit_backward; r_fix_endings(); return true; } @Override public boolean stem() { B_found_vetrumai_urupu = false; int v_1 = cursor; r_fix_ending(); cursor = v_1; if (!r_has_min_length()) { return false; } int v_2 = cursor; r_remove_question_prefixes(); cursor = v_2; int v_3 = cursor; r_remove_pronoun_prefixes(); cursor = v_3; int v_4 = cursor; r_remove_question_suffixes(); cursor = v_4; int v_5 = cursor; r_remove_um(); cursor = v_5; int v_6 = cursor; r_remove_common_word_endings(); cursor = v_6; int v_7 = cursor; r_remove_vetrumai_urupukal(); cursor = v_7; int v_8 = cursor; r_remove_plural_suffix(); cursor = v_8; int v_9 = cursor; r_remove_command_suffixes(); cursor = v_9; int v_10 = cursor; r_remove_tense_suffixes(); cursor = v_10; return true; } @Override public boolean equals(Object o) { return o instanceof TamilStemmer; } @Override public int hashCode() { return TamilStemmer.class.getName().hashCode(); } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy