private void ProcessFile(IFile psiFile, DefaultHighlightingConsumer consumer)
{
foreach (var declaration in psiFile.ThisAndDescendants<ITypeDeclaration>())
{
if (declaration.DeclaredElement == null) // type is not (yet) declared
{
return;
}
RegistrationInfo registrationInfo = patternManager.GetRegistrationsForFile(psiFile.GetSourceFile()).
FirstOrDefault(c => c.Registration.IsSatisfiedBy(declaration.DeclaredElement));
if (registrationInfo != null)
{
consumer.AddHighlighting(new RegisteredByContainerHighlighting(registrationInfo), declaration.GetNameDocumentRange(), psiFile);
}
}
}