private bool MatchValue(string value)
{
if (!EnsureChars(value.Length - 1, true))
{
_charPos = _charsUsed;
throw CreateUnexpectedEndException();
}
for (int i = 0; i < value.Length; i++)
{
if (_chars[_charPos + i] != value[i])
{
_charPos += i;
return false;
}
}
_charPos += value.Length;
return true;
}