public override int Read()
{
int ret = base.Read();
_prevLineStart = _atLineStart;
if (ret == -1)
{
_atLineStart = true;
return ret;
}
++_index;
_atLineStart = false;
++_columnNumber;
if (ret == '\r')
{
if (Peek() == '\n')
{
ret = BaseReader.Read();
++_index;
}
else
{
NoteLineAdvance();
}
}
if ( ret == '\n' )
NoteLineAdvance();
return ret;
}