Frontend: added the support file annotations to TopDownAnalyzer.

This commit is contained in:
Zalim Bashorov
2014-09-09 13:48:49 +04:00
parent 486b6be32c
commit 6d0bcf8b32
3 changed files with 60 additions and 21 deletions
@@ -85,6 +85,7 @@ public class DeclarationResolver {
resolveConstructorHeaders(c);
resolveAnnotationStubsOnClassesAndConstructors(c);
resolveFunctionAndPropertyHeaders(c);
resolveAnnotationsOnFiles(c.getFileScopes());
// SCRIPT: Resolve script declarations
resolveScriptDeclarations(c);
@@ -96,6 +97,14 @@ public class DeclarationResolver {
checkRedeclarationsInInnerClassNames(c);
}
private void resolveAnnotationsOnFiles(@NotNull Map<JetFile, ? extends JetScope> file2scope) {
for (Map.Entry<JetFile, ? extends JetScope> entry : file2scope.entrySet()) {
JetFile file = entry.getKey();
JetScope fileScope = entry.getValue();
annotationResolver.resolveAnnotationsWithArguments(fileScope, file.getAnnotationEntries(), trace);
}
}
private void resolveAnnotationConstructors(@NotNull TopDownAnalysisContext c) {
for (Map.Entry<JetClassOrObject, ClassDescriptorWithResolutionScopes> entry : c.getDeclaredClasses().entrySet()) {
JetClassOrObject classOrObject = entry.getKey();