JS backend: pass diagnostics to TranslationContext using config
This commit is contained in:
@@ -23,8 +23,13 @@ import kotlin.Unit;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
import org.jetbrains.jet.lang.descriptors.ModuleDescriptor;
|
||||
import org.jetbrains.jet.lang.diagnostics.Diagnostic;
|
||||
import org.jetbrains.jet.lang.diagnostics.DiagnosticSink;
|
||||
import org.jetbrains.jet.lang.psi.JetFile;
|
||||
import org.jetbrains.jet.lang.resolve.BindingContext;
|
||||
import org.jetbrains.jet.lang.resolve.BindingTrace;
|
||||
import org.jetbrains.jet.lang.resolve.BindingTraceContext;
|
||||
import org.jetbrains.jet.lang.resolve.DelegatingBindingTrace;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
@@ -47,6 +52,9 @@ public abstract class Config {
|
||||
|
||||
private final boolean sourcemap;
|
||||
|
||||
@NotNull
|
||||
private DiagnosticSink trace = new BindingTraceContext();
|
||||
|
||||
public Config(
|
||||
@NotNull Project project,
|
||||
@NotNull String moduleId,
|
||||
@@ -102,6 +110,15 @@ public abstract class Config {
|
||||
return null;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public DiagnosticSink getTrace() {
|
||||
return trace;
|
||||
}
|
||||
|
||||
public void setTrace(@NotNull DiagnosticSink trace) {
|
||||
this.trace = trace;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public ModuleDescriptor getLibraryModule() {
|
||||
return null;
|
||||
|
||||
@@ -24,9 +24,11 @@ import org.jetbrains.jet.lang.descriptors.CallableDescriptor;
|
||||
import org.jetbrains.jet.lang.descriptors.DeclarationDescriptor;
|
||||
import org.jetbrains.jet.lang.descriptors.MemberDescriptor;
|
||||
import org.jetbrains.jet.lang.descriptors.ReceiverParameterDescriptor;
|
||||
import org.jetbrains.jet.lang.diagnostics.DiagnosticSink;
|
||||
import org.jetbrains.jet.lang.psi.JetExpression;
|
||||
import org.jetbrains.jet.lang.reflect.ReflectionTypes;
|
||||
import org.jetbrains.jet.lang.resolve.BindingContext;
|
||||
import org.jetbrains.jet.lang.resolve.BindingTraceContext;
|
||||
import org.jetbrains.jet.lang.resolve.name.FqName;
|
||||
import org.jetbrains.k2js.config.Config;
|
||||
import org.jetbrains.k2js.translate.intrinsic.Intrinsics;
|
||||
@@ -163,6 +165,9 @@ public class TranslationContext {
|
||||
return staticContext.getBindingContext();
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public DiagnosticSink getTrace() { return staticContext.getConfig().getTrace(); }
|
||||
|
||||
@NotNull
|
||||
public JsScope getScopeForDescriptor(@NotNull DeclarationDescriptor descriptor) {
|
||||
return staticContext.getScopeForDescriptor(descriptor);
|
||||
|
||||
Reference in New Issue
Block a user