in src/Lucene.Net.Analysis.Common/Tartarus/Snowball/Ext/TurkishStemmer.cs [3151:3466]
private bool r_append_U_to_stems_ending_with_d_or_g()
{
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;
int v_12;
int v_13;
int v_14;
int v_15;
// (, line 430
// test, line 431
v_1 = m_limit - m_cursor;
// (, line 431
// or, line 431
do
{
v_2 = m_limit - m_cursor;
do
{
// literal, line 431
if (!(Eq_S_B(1, "d")))
{
goto lab1;
}
goto lab0;
} while (false);
lab1:
m_cursor = m_limit - v_2;
// literal, line 431
if (!(Eq_S_B(1, "g")))
{
return false;
}
} while (false);
lab0:
m_cursor = m_limit - v_1;
// or, line 433
do
{
v_3 = m_limit - m_cursor;
do
{
// (, line 432
// test, line 432
v_4 = m_limit - m_cursor;
// (, line 432
// (, line 432
// goto, line 432
while (true)
{
v_5 = m_limit - m_cursor;
do
{
if (!(InGroupingB(g_vowel, 97, 305)))
{
goto lab5;
}
m_cursor = m_limit - v_5;
goto golab4;
} while (false);
lab5:
m_cursor = m_limit - v_5;
if (m_cursor <= m_limit_backward)
{
goto lab3;
}
m_cursor--;
}
golab4:
// or, line 432
do
{
v_6 = m_limit - m_cursor;
do
{
// literal, line 432
if (!(Eq_S_B(1, "a")))
{
goto lab7;
}
goto lab6;
} while (false);
lab7:
m_cursor = m_limit - v_6;
// literal, line 432
if (!(Eq_S_B(1, "\u0131")))
{
goto lab3;
}
} while (false);
lab6:
m_cursor = m_limit - v_4;
// <+, line 432
{
int c = m_cursor;
Insert(m_cursor, m_cursor, "\u0131");
m_cursor = c;
}
goto lab2;
} while (false);
lab3:
m_cursor = m_limit - v_3;
do
{
// (, line 434
// test, line 434
v_7 = m_limit - m_cursor;
// (, line 434
// (, line 434
// goto, line 434
while (true)
{
v_8 = m_limit - m_cursor;
do
{
if (!(InGroupingB(g_vowel, 97, 305)))
{
goto lab10;
}
m_cursor = m_limit - v_8;
goto golab9;
} while (false);
lab10:
m_cursor = m_limit - v_8;
if (m_cursor <= m_limit_backward)
{
goto lab8;
}
m_cursor--;
}
golab9:
// or, line 434
do
{
v_9 = m_limit - m_cursor;
do
{
// literal, line 434
if (!(Eq_S_B(1, "e")))
{
goto lab12;
}
goto lab11;
} while (false);
lab12:
m_cursor = m_limit - v_9;
// literal, line 434
if (!(Eq_S_B(1, "i")))
{
goto lab8;
}
} while (false);
lab11:
m_cursor = m_limit - v_7;
// <+, line 434
{
int c = m_cursor;
Insert(m_cursor, m_cursor, "i");
m_cursor = c;
}
goto lab2;
} while (false);
lab8:
m_cursor = m_limit - v_3;
do
{
// (, line 436
// test, line 436
v_10 = m_limit - m_cursor;
// (, line 436
// (, line 436
// goto, line 436
while (true)
{
v_11 = m_limit - m_cursor;
do
{
if (!(InGroupingB(g_vowel, 97, 305)))
{
goto lab15;
}
m_cursor = m_limit - v_11;
goto golab14;
} while (false);
lab15:
m_cursor = m_limit - v_11;
if (m_cursor <= m_limit_backward)
{
goto lab13;
}
m_cursor--;
}
golab14:
// or, line 436
do
{
v_12 = m_limit - m_cursor;
do
{
// literal, line 436
if (!(Eq_S_B(1, "o")))
{
goto lab17;
}
goto lab16;
} while (false);
lab17:
m_cursor = m_limit - v_12;
// literal, line 436
if (!(Eq_S_B(1, "u")))
{
goto lab13;
}
} while (false);
lab16:
m_cursor = m_limit - v_10;
// <+, line 436
{
int c = m_cursor;
Insert(m_cursor, m_cursor, "u");
m_cursor = c;
}
goto lab2;
} while (false);
lab13:
m_cursor = m_limit - v_3;
// (, line 438
// test, line 438
v_13 = m_limit - m_cursor;
// (, line 438
// (, line 438
// goto, line 438
while (true)
{
v_14 = m_limit - m_cursor;
do
{
if (!(InGroupingB(g_vowel, 97, 305)))
{
goto lab19;
}
m_cursor = m_limit - v_14;
goto golab18;
} while (false);
lab19:
m_cursor = m_limit - v_14;
if (m_cursor <= m_limit_backward)
{
return false;
}
m_cursor--;
}
golab18:
// or, line 438
do
{
v_15 = m_limit - m_cursor;
do
{
// literal, line 438
if (!(Eq_S_B(1, "\u00F6")))
{
goto lab21;
}
goto lab20;
} while (false);
lab21:
m_cursor = m_limit - v_15;
// literal, line 438
if (!(Eq_S_B(1, "\u00FC")))
{
return false;
}
} while (false);
lab20:
m_cursor = m_limit - v_13;
// <+, line 438
{
int c = m_cursor;
Insert(m_cursor, m_cursor, "\u00FC");
m_cursor = c;
}
} while (false);
lab2:
return true;
}