bool ReadWhitespaceUntil (char ch) { var old = index; while (index < value.Length && char.IsWhiteSpace (value [index])) { index++; } if (Current == ch) { index++; return true; } index = old; return false; }