public IEnumerable<TokenType> GetColorTypes(string text, Lexer lexer)
{
int position = 0;
foreach (var token in lexer.GetTokens(text))
{
while (position < token.Start)
{
yield return TokenType.Space;
position++;
}
while (position < token.Start + token.Length)
{
yield return token.Type;
position++;
}
}
int length = text.Length;
while (position < length)
{
yield return TokenType.Space;
position++;
}
}