private void ScanNumeric()
{
char[] text = _text;
bool fDot = false;
bool fSientific = false;
Debug.Assert(_pos != 0, "We have at least one digit in the buffer, ScanNumeric()");
Debug.Assert(IsDigit(text[_pos - 1]), "We have at least one digit in the buffer, ScanNumeric(), not a digit");
while (IsDigit(text[_pos]))
{
_pos++;
}
if (text[_pos] == _decimalSeparator)
{
fDot = true;
_pos++;
}
while (IsDigit(text[_pos]))
{
_pos++;
}
if (text[_pos] == _exponentL || text[_pos] == _exponentU)
{
fSientific = true;
_pos++;
if (text[_pos] == '-' || text[_pos] == '+')
{
_pos++;
}
while (IsDigit(text[_pos]))
{
_pos++;
}
}
if (fSientific)
_token = Tokens.Float;
else if (fDot)
_token = Tokens.Decimal;
else
_token = Tokens.Numeric;
}
/// <summary>