Minor. Passing Diagnostics instead of BindingContext

This commit is contained in:
Andrey Breslav
2014-06-04 17:06:09 +04:00
parent 74deb58734
commit f79ddbd523
5 changed files with 11 additions and 12 deletions
@@ -31,10 +31,7 @@ import org.jetbrains.jet.lang.descriptors.DeclarationDescriptor;
import org.jetbrains.jet.lang.diagnostics.*; import org.jetbrains.jet.lang.diagnostics.*;
import org.jetbrains.jet.lang.diagnostics.rendering.DefaultErrorMessages; import org.jetbrains.jet.lang.diagnostics.rendering.DefaultErrorMessages;
import org.jetbrains.jet.lang.psi.JetFile; import org.jetbrains.jet.lang.psi.JetFile;
import org.jetbrains.jet.lang.resolve.AnalyzingUtils; import org.jetbrains.jet.lang.resolve.*;
import org.jetbrains.jet.lang.resolve.BindingContext;
import org.jetbrains.jet.lang.resolve.BindingContextUtils;
import org.jetbrains.jet.lang.resolve.DescriptorUtils;
import org.jetbrains.jet.lang.resolve.java.JavaBindingContext; import org.jetbrains.jet.lang.resolve.java.JavaBindingContext;
import org.jetbrains.jet.lang.resolve.java.JvmAbi; import org.jetbrains.jet.lang.resolve.java.JvmAbi;
import org.jetbrains.jet.lang.resolve.java.resolver.TraceBasedErrorReporter; import org.jetbrains.jet.lang.resolve.java.resolver.TraceBasedErrorReporter;
@@ -154,9 +151,9 @@ public final class AnalyzerWithCompilerReport {
} }
} }
public static boolean reportDiagnostics(@NotNull BindingContext bindingContext, @NotNull MessageCollector messageCollector) { public static boolean reportDiagnostics(@NotNull Diagnostics diagnostics, @NotNull MessageCollector messageCollector) {
boolean hasErrors = false; boolean hasErrors = false;
for (Diagnostic diagnostic : sortedDiagnostics(bindingContext.getDiagnostics().all())) { for (Diagnostic diagnostic : sortedDiagnostics(diagnostics.all())) {
hasErrors |= reportDiagnostic(diagnostic, messageCollector); hasErrors |= reportDiagnostic(diagnostic, messageCollector);
} }
return hasErrors; return hasErrors;
@@ -227,7 +224,7 @@ public final class AnalyzerWithCompilerReport {
reportAbiVersionErrors(); reportAbiVersionErrors();
reportSyntaxErrors(files); reportSyntaxErrors(files);
//noinspection ConstantConditions //noinspection ConstantConditions
reportDiagnostics(analyzeExhaust.getBindingContext(), messageCollectorWrapper); reportDiagnostics(analyzeExhaust.getBindingContext().getDiagnostics(), messageCollectorWrapper);
reportIncompleteHierarchies(); reportIncompleteHierarchies();
reportAlternativeSignatureErrors(); reportAlternativeSignatureErrors();
} }
@@ -345,8 +345,10 @@ public class KotlinToJVMBytecodeCompiler {
diagnosticHolder diagnosticHolder
); );
KotlinCodegenFacade.compileCorrectFiles(generationState, CompilationErrorHandler.THROW_EXCEPTION); KotlinCodegenFacade.compileCorrectFiles(generationState, CompilationErrorHandler.THROW_EXCEPTION);
AnalyzerWithCompilerReport.reportDiagnostics(diagnosticHolder.getBindingContext(), AnalyzerWithCompilerReport.reportDiagnostics(
environment.getConfiguration().get(CLIConfigurationKeys.MESSAGE_COLLECTOR_KEY)); diagnosticHolder.getBindingContext().getDiagnostics(),
environment.getConfiguration().get(CLIConfigurationKeys.MESSAGE_COLLECTOR_KEY)
);
return generationState; return generationState;
} }
} }
@@ -319,7 +319,7 @@ public class ReplInterpreter {
injector.getTopDownAnalyzer().doProcess(topDownAnalysisContext, injector.getTopDownAnalyzer().doProcess(topDownAnalysisContext,
scope, new PackageLikeBuilderDummy(), Collections.singletonList(psiFile)); scope, new PackageLikeBuilderDummy(), Collections.singletonList(psiFile));
boolean hasErrors = AnalyzerWithCompilerReport.reportDiagnostics(trace.getBindingContext(), messageCollector); boolean hasErrors = AnalyzerWithCompilerReport.reportDiagnostics(trace.getBindingContext().getDiagnostics(), messageCollector);
if (hasErrors) { if (hasErrors) {
return null; return null;
} }
@@ -180,7 +180,7 @@ public class CompileKotlinAgainstCustomBinariesTest extends TestCaseWithTmpdir {
exhaust.throwIfError(); exhaust.throwIfError();
BindingContext bindingContext = exhaust.getBindingContext(); BindingContext bindingContext = exhaust.getBindingContext();
AnalyzerWithCompilerReport.reportDiagnostics(bindingContext, MessageCollectorPlainTextToStream.PLAIN_TEXT_TO_SYSTEM_ERR); AnalyzerWithCompilerReport.reportDiagnostics(bindingContext.getDiagnostics(), MessageCollectorPlainTextToStream.PLAIN_TEXT_TO_SYSTEM_ERR);
assertEquals("There should be no diagnostics", 0, Iterables.size(bindingContext.getDiagnostics())); assertEquals("There should be no diagnostics", 0, Iterables.size(bindingContext.getDiagnostics()));
} }
@@ -52,7 +52,7 @@ public class NoErrorsInStdlibTest: LightCodeInsightFixtureTestCase() {
if (!errors.isEmpty()) { if (!errors.isEmpty()) {
System.err.println("${psiFile.getName()}: ${errors.size()} errors") System.err.println("${psiFile.getName()}: ${errors.size()} errors")
AnalyzerWithCompilerReport.reportDiagnostics( AnalyzerWithCompilerReport.reportDiagnostics(
bindingContext, MessageCollectorPlainTextToStream.PLAIN_TEXT_TO_SYSTEM_ERR) bindingContext.getDiagnostics(), MessageCollectorPlainTextToStream.PLAIN_TEXT_TO_SYSTEM_ERR)
totalErrors += errors.size() totalErrors += errors.size()
} }