/// unread unreads the previous read Rune and updates the source position
 private void Unread()
 {
     _buf.UnreadRune();
     _srcPos = _prevPos; // put back last position
 }