package org.simantics.scl.compiler.elaboration.chr.ast; import java.util.ArrayList; import org.simantics.scl.compiler.elaboration.chr.CHRLiteral; import org.simantics.scl.compiler.elaboration.chr.relations.SpecialCHRRelation; import org.simantics.scl.compiler.elaboration.contexts.TranslationContext; import org.simantics.scl.compiler.elaboration.expressions.Expression; public class CHRAstEquals extends CHRAstQuery { public Expression left; public Expression right; public CHRAstEquals(Expression left, Expression right) { this.left = left; this.right = right; } @Override public void accept(CHRAstQueryVisitor visitor) { visitor.visit(this); } @Override protected void translate(TranslationContext context, boolean isHead, ArrayList literals) { literals.add(new CHRLiteral(location, SpecialCHRRelation.EQUALS, new Expression[] { left, right }, false, false)); } }