package org.simantics.scl.compiler.elaboration.chr.plan; import org.simantics.scl.compiler.compilation.CompilationContext; import org.simantics.scl.compiler.internal.codegen.writer.CodeWriter; public abstract class PlanOp { public long location; public PlanOp(long location) { this.location = location; } @Override public String toString() { StringBuilder b = new StringBuilder(); toString(b); return b.toString(); } public abstract void toString(StringBuilder b); public abstract void generateCode(CompilationContext context, PlanContext planContext, CodeWriter w); }