public override void Write(WritingContext context)
{
var writer = context.Writer;
if (IsFat)
{
writer.WriteUInt16((ushort)((ExceptionHandlers.Count > 0 ? 0x8 : 0) |
(InitLocals ? 0x10 : 0) | 0x3003));
writer.WriteUInt16((ushort)MaxStack);
writer.WriteUInt32(GetCodeSize());
writer.WriteUInt32(Signature == null ? 0 : Signature.MetadataToken.ToUInt32());
}
else
{
writer.WriteByte((byte)(0x2 | GetCodeSize() << 2));
}
WriteCode(context);
if (ExceptionHandlers.Count > 0)
WriteExceptionHandlers(context);
}