public void Write(Procedure proc)
{
proc.Signature.Emit(proc.QualifiedName(), FunctionType.EmitFlags.None, writer, this, new TypeFormatter(writer));
writer.WriteLine();
writer.Write("{");
writer.WriteLine();
if (proc.Body.Count > 0)
{
for (int i = 0; i < proc.Body.Count; ++i)
{
proc.Body[i].Accept(this);
}
}
else
{
new ProcedureFormatter(proc, new BlockDecorator { ShowEdges=false }, this).WriteProcedureBlocks();
}
writer.Write("}");
writer.WriteLine();
}