private bool r_check_vowel_harmony()

in src/Lucene.Net.Analysis.Common/Tartarus/Snowball/Ext/TurkishStemmer.cs [262:594]


        private bool r_check_vowel_harmony()
        {
            int v_1;
            int v_2;
            int v_3;
            int v_4;
            int v_5;
            int v_6;
            int v_7;
            int v_8;
            int v_9;
            int v_10;
            int v_11;
            // (, line 111
            // test, line 112
            v_1 = m_limit - m_cursor;
            // (, line 113
            // (, line 114
            // goto, line 114

            while (true)
            {
                v_2 = m_limit - m_cursor;
                do
                {
                    if (!(InGroupingB(g_vowel, 97, 305)))
                    {
                        goto lab1;
                    }
                    m_cursor = m_limit - v_2;
                    goto golab0;
                } while (false);
                lab1:
                m_cursor = m_limit - v_2;
                if (m_cursor <= m_limit_backward)
                {
                    return false;
                }
                m_cursor--;
            }
            golab0:
            // (, line 115
            // or, line 116
            do
            {
                v_3 = m_limit - m_cursor;
                do
                {
                    // (, line 116
                    // literal, line 116
                    if (!(Eq_S_B(1, "a")))
                    {
                        goto lab3;
                    }
                    // goto, line 116
                    while (true)
                    {
                        v_4 = m_limit - m_cursor;
                        do
                        {
                            if (!(InGroupingB(g_vowel1, 97, 305)))
                            {
                                goto lab5;
                            }
                            m_cursor = m_limit - v_4;
                            goto golab4;
                        } while (false);
                        lab5:
                        m_cursor = m_limit - v_4;
                        if (m_cursor <= m_limit_backward)
                        {
                            goto lab3;
                        }
                        m_cursor--;
                    }
                    golab4:
                    goto lab2;
                } while (false);
                lab3:
                m_cursor = m_limit - v_3;
                do
                {
                    // (, line 117
                    // literal, line 117
                    if (!(Eq_S_B(1, "e")))
                    {
                        goto lab6;
                    }
                    // goto, line 117

                    while (true)
                    {
                        v_5 = m_limit - m_cursor;

                        do
                        {
                            if (!(InGroupingB(g_vowel2, 101, 252)))
                            {
                                goto lab8;
                            }
                            m_cursor = m_limit - v_5;
                            goto golab7;
                        } while (false);
                        lab8:
                        m_cursor = m_limit - v_5;
                        if (m_cursor <= m_limit_backward)
                        {
                            goto lab6;
                        }
                        m_cursor--;
                    }
                    golab7:
                    goto lab2;
                } while (false);
                lab6:
                m_cursor = m_limit - v_3;

                do
                {
                    // (, line 118
                    // literal, line 118
                    if (!(Eq_S_B(1, "\u0131")))
                    {
                        goto lab9;
                    }
                    // goto, line 118

                    while (true)
                    {
                        v_6 = m_limit - m_cursor;

                        do
                        {
                            if (!(InGroupingB(g_vowel3, 97, 305)))
                            {
                                goto lab11;
                            }
                            m_cursor = m_limit - v_6;
                            goto golab10;
                        } while (false);
                        lab11:
                        m_cursor = m_limit - v_6;
                        if (m_cursor <= m_limit_backward)
                        {
                            goto lab9;
                        }
                        m_cursor--;
                    }
                    golab10:
                    goto lab2;
                } while (false);
                lab9:
                m_cursor = m_limit - v_3;

                do
                {
                    // (, line 119
                    // literal, line 119
                    if (!(Eq_S_B(1, "i")))
                    {
                        goto lab12;
                    }
                    // goto, line 119

                    while (true)
                    {
                        v_7 = m_limit - m_cursor;

                        do
                        {
                            if (!(InGroupingB(g_vowel4, 101, 105)))
                            {
                                goto lab14;
                            }
                            m_cursor = m_limit - v_7;
                            goto golab13;
                        } while (false);
                        lab14:
                        m_cursor = m_limit - v_7;
                        if (m_cursor <= m_limit_backward)
                        {
                            goto lab12;
                        }
                        m_cursor--;
                    }
                    golab13:
                    goto lab2;
                } while (false);
                lab12:
                m_cursor = m_limit - v_3;
                do
                {
                    // (, line 120
                    // literal, line 120
                    if (!(Eq_S_B(1, "o")))
                    {
                        goto lab15;
                    }
                    // goto, line 120

                    while (true)
                    {
                        v_8 = m_limit - m_cursor;

                        do
                        {
                            if (!(InGroupingB(g_vowel5, 111, 117)))
                            {
                                goto lab17;
                            }
                            m_cursor = m_limit - v_8;
                            goto golab16;
                        } while (false);
                        lab17:
                        m_cursor = m_limit - v_8;
                        if (m_cursor <= m_limit_backward)
                        {
                            goto lab15;
                        }
                        m_cursor--;
                    }
                    golab16:
                    goto lab2;
                } while (false);
                lab15:
                m_cursor = m_limit - v_3;
                do
                {
                    // (, line 121
                    // literal, line 121
                    if (!(Eq_S_B(1, "\u00F6")))
                    {
                        goto lab18;
                    }
                    // goto, line 121

                    while (true)
                    {
                        v_9 = m_limit - m_cursor;

                        do
                        {
                            if (!(InGroupingB(g_vowel6, 246, 252)))
                            {
                                goto lab20;
                            }
                            m_cursor = m_limit - v_9;
                            goto golab19;
                        } while (false);
                        lab20:
                        m_cursor = m_limit - v_9;
                        if (m_cursor <= m_limit_backward)
                        {
                            goto lab18;
                        }
                        m_cursor--;
                    }
                    golab19:
                    goto lab2;
                } while (false);
                lab18:
                m_cursor = m_limit - v_3;
                do
                {
                    // (, line 122
                    // literal, line 122
                    if (!(Eq_S_B(1, "u")))
                    {
                        goto lab21;
                    }
                    // goto, line 122

                    while (true)
                    {
                        v_10 = m_limit - m_cursor;

                        do
                        {
                            if (!(InGroupingB(g_vowel5, 111, 117)))
                            {
                                goto lab23;
                            }
                            m_cursor = m_limit - v_10;
                            goto golab22;
                        } while (false);
                        lab23:
                        m_cursor = m_limit - v_10;
                        if (m_cursor <= m_limit_backward)
                        {
                            goto lab21;
                        }
                        m_cursor--;
                    }
                    golab22:
                    goto lab2;
                } while (false);
                lab21:
                m_cursor = m_limit - v_3;
                // (, line 123
                // literal, line 123
                if (!(Eq_S_B(1, "\u00FC")))
                {
                    return false;
                }
                // goto, line 123

                while (true)
                {
                    v_11 = m_limit - m_cursor;

                    do
                    {
                        if (!(InGroupingB(g_vowel6, 246, 252)))
                        {
                            goto lab25;
                        }
                        m_cursor = m_limit - v_11;
                        goto golab24;
                    } while (false);
                    lab25:
                    m_cursor = m_limit - v_11;
                    if (m_cursor <= m_limit_backward)
                    {
                        return false;
                    }
                    m_cursor--;
                }
                golab24: {/* LUCENENET: intentionally blank */}
            } while (false);
            lab2:
            m_cursor = m_limit - v_1;
            return true;
        }