private static IDictionary<SyntaxKind, IList<string>> ParseTokens(IEnumerable<SyntaxToken> tokens, IEnumerable<SyntaxKind> filter)
{
IDictionary<SyntaxKind, IList<string>> dictionary = new Dictionary<SyntaxKind, IList<string>>();
foreach (var token in tokens)
{
var kind = token.Kind();
if (filter.Any(x => x == kind))
{
IList<string> list;
var valueText = token.ValueText;
if (!dictionary.TryGetValue(kind, out list))
{
dictionary[kind] = new List<string>();
list = dictionary[kind];
}
list.Add(valueText);
}
}
return dictionary;
}
}