private void Next()
{
currentIndex++;
currentColumnIndex++;
if (currentIndex >= totalChars)
{
currentChar = Eof;
}
else
{
currentChar = sourceChars[currentIndex];
var previousChar = currentIndex >= 1 ? sourceChars[currentIndex - 1] : Eof;
if (currentChar == '\r' ||
(currentChar == '\n' && (previousChar == Eof || previousChar != '\r')))
{
currentLineIndex++;
currentColumnIndex = 1;
}
}
}