in src/Lucene.Net.Analysis.Common/Tartarus/Snowball/Ext/KpStemmer.cs [451:750]
private bool r_Step_1()
{
int among_var;
int v_1;
int v_2;
int v_3;
int v_4;
// (, line 48
// [, line 49
m_ket = m_cursor;
// among, line 49
among_var = FindAmongB(a_0, 7);
if (among_var == 0)
{
return false;
}
// (, line 49
// ], line 49
m_bra = m_cursor;
switch (among_var)
{
case 0:
return false;
case 1:
// (, line 51
// delete, line 51
SliceDel();
break;
case 2:
// (, line 52
// call R1, line 52
if (!r_R1())
{
return false;
}
// not, line 52
{
v_1 = m_limit - m_cursor;
do
{
// (, line 52
// literal, line 52
if (!(Eq_S_B(1, "t")))
{
goto lab0;
}
// call R1, line 52
if (!r_R1())
{
goto lab0;
}
return false;
} while (false);
lab0:
m_cursor = m_limit - v_1;
}
// call C, line 52
if (!r_C())
{
return false;
}
// delete, line 52
SliceDel();
break;
case 3:
// (, line 53
// call R1, line 53
if (!r_R1())
{
return false;
}
// <-, line 53
SliceFrom("ie");
break;
case 4:
// (, line 55
// or, line 55
do
{
v_2 = m_limit - m_cursor;
do
{
// (, line 55
// literal, line 55
if (!(Eq_S_B(2, "ar")))
{
goto lab2;
}
// call R1, line 55
if (!r_R1())
{
goto lab2;
}
// call C, line 55
if (!r_C())
{
goto lab2;
}
// ], line 55
m_bra = m_cursor;
// delete, line 55
SliceDel();
// call lengthen_V, line 55
if (!r_lengthen_V())
{
goto lab2;
}
goto lab1;
} while (false);
lab2:
m_cursor = m_limit - v_2;
do
{
// (, line 56
// literal, line 56
if (!(Eq_S_B(2, "er")))
{
goto lab3;
}
// call R1, line 56
if (!r_R1())
{
goto lab3;
}
// call C, line 56
if (!r_C())
{
goto lab3;
}
// ], line 56
m_bra = m_cursor;
// delete, line 56
SliceDel();
goto lab1;
} while (false);
lab3:
m_cursor = m_limit - v_2;
// (, line 57
// call R1, line 57
if (!r_R1())
{
return false;
}
// call C, line 57
if (!r_C())
{
return false;
}
// <-, line 57
SliceFrom("e");
} while (false);
lab1:
break;
case 5:
// (, line 59
// call R1, line 59
if (!r_R1())
{
return false;
}
// call V, line 59
if (!r_V())
{
return false;
}
// <-, line 59
SliceFrom("au");
break;
case 6:
// (, line 60
// or, line 60
do
{
v_3 = m_limit - m_cursor;
do
{
// (, line 60
// literal, line 60
if (!(Eq_S_B(3, "hed")))
{
goto lab5;
}
// call R1, line 60
if (!r_R1())
{
goto lab5;
}
// ], line 60
m_bra = m_cursor;
// <-, line 60
SliceFrom("heid");
goto lab4;
} while (false);
lab5:
m_cursor = m_limit - v_3;
do
{
// (, line 61
// literal, line 61
if (!(Eq_S_B(2, "nd")))
{
goto lab6;
}
// delete, line 61
SliceDel();
goto lab4;
} while (false);
lab6:
m_cursor = m_limit - v_3;
do
{
// (, line 62
// literal, line 62
if (!(Eq_S_B(1, "d")))
{
goto lab7;
}
// call R1, line 62
if (!r_R1())
{
goto lab7;
}
// call C, line 62
if (!r_C())
{
goto lab7;
}
// ], line 62
m_bra = m_cursor;
// delete, line 62
SliceDel();
goto lab4;
} while (false);
lab7:
m_cursor = m_limit - v_3;
do
{
// (, line 63
// or, line 63
do
{
v_4 = m_limit - m_cursor;
do
{
// literal, line 63
if (!(Eq_S_B(1, "i")))
{
goto lab10;
}
goto lab9;
} while (false);
lab10:
m_cursor = m_limit - v_4;
// literal, line 63
if (!(Eq_S_B(1, "j")))
{
goto lab8;
}
} while (false);
lab9:
// call V, line 63
if (!r_V())
{
goto lab8;
}
// delete, line 63
SliceDel();
goto lab4;
} while (false);
lab8:
m_cursor = m_limit - v_3;
// (, line 64
// call R1, line 64
if (!r_R1())
{
return false;
}
// call C, line 64
if (!r_C())
{
return false;
}
// delete, line 64
SliceDel();
// call lengthen_V, line 64
if (!r_lengthen_V())
{
return false;
}
} while (false);
lab4:
break;
case 7:
// (, line 65
// <-, line 65
SliceFrom("nd");
break;
}
return true;
}