package org.simantics.scl.compiler.elaboration.contexts;
+import org.simantics.scl.compiler.compilation.CompilationContext;
import org.simantics.scl.compiler.environment.Environment;
import org.simantics.scl.compiler.errors.ErrorLog;
import org.simantics.scl.compiler.internal.parsing.exceptions.SCLSyntaxErrorException;
public class TypeTranslationContext {
+ CompilationContext compilationContext;
+
Environment environment;
ErrorLog errorLog;
THashMap<String, TVar> typeVariables = new THashMap<String, TVar>();
- public TypeTranslationContext(ErrorLog errorLog, Environment environment) {
- this.errorLog = errorLog;
- this.environment = environment;
+ public TypeTranslationContext(CompilationContext compilationContext) {
+ this.compilationContext = compilationContext;
+ this.errorLog = compilationContext.errorLog;
+ this.environment = compilationContext.environment;
}
/**
}
public Kind getKind(TCon con) {
- return environment.getTypeConstructor(con).kind;
+ return environment.getTypeDescriptor(con).getKind();
}
/**
errorLog.log(loc, "Expected a type with kind " + expectedKind + " but got " + provided + ".");
}
}
+
+ public CompilationContext getCompilationContext() {
+ return compilationContext;
+ }
}