1 package org.simantics.scl.compiler.elaboration.query.compilation;
3 import org.simantics.scl.compiler.compilation.CompilationContext;
4 import org.simantics.scl.compiler.elaboration.contexts.TypingContext;
5 import org.simantics.scl.compiler.elaboration.expressions.EVariable;
6 import org.simantics.scl.compiler.errors.ErrorLog;
7 import org.simantics.scl.compiler.types.TPred;
9 public class EnforcingContext {
10 TypingContext context;
12 public EnforcingContext(TypingContext context) {
13 this.context = context;
16 public ErrorLog getErrorLog() {
17 return context.getErrorLog();
20 public TypingContext getTypingContext() {
24 public EVariable getEvidence(long location, TPred pred) {
25 EVariable evidence = new EVariable(location, null);
26 evidence.setType(pred);
27 context.addConstraintDemand(evidence);
31 public CompilationContext getCompilationContext() {
32 return context.getCompilationContext();