public void Emit(Emitter e) { e.EmitLine(".method static void " + Name + "()"); e.Indent(); Variables.Emit(e); foreach (var item in Body) item.Emit(e); e.EmitLine("ret"); e.Outdent(); }
public void Emit(Emitter e) { foreach (var arg in Args) arg.Emit(e); e.EmitLine("call " + ReturnType.Name + " " + Name.Value); }
public void Emit(Emitter e) { e.Emit(".locals init ("); e.Emit(string.Join(", ", variables.Select(v => v.Type.Name))); e.EmitLine(")"); }