private void ScanToNextToken()
{
// Until the next token is not find.
for (;;)
{
// Eat whitespaces.
// Tabs are allowed:
// - in the flow context;
// - in the block context, but not at the beginning of the line or
// after '-', '?', or ':' (complex value).
while (CheckWhiteSpace())
{
Skip();
}
ProcessComment();
// If it is a line break, eat it.
if (analyzer.IsBreak())
{
SkipLine();
// In the block context, a new line may start a simple key.
if (flowLevel == 0)
{
simpleKeyAllowed = true;
}
}
else
{
// We have find a token.
break;
}
}
}