// dnlib: See LICENSE.txt for more info namespace dnlib.DotNet.Writer { /// /// All / events /// public enum ModuleWriterEvent { /// /// Writing has just begun /// Begin, /// /// All PE sections have been created /// PESectionsCreated, /// /// All chunks have been created /// ChunksCreated, /// /// All chunks have been added to their sections /// ChunksAddedToSections, /// /// Original event: . /// Creating the metadata tables has just begun /// MDBeginCreateTables, /// /// Original event: . /// Before allocating all TypeDef RIDs /// MDAllocateTypeDefRids, /// /// Original event: . /// Before allocating all MemberDef RIDs /// MDAllocateMemberDefRids, /// /// Original event: . /// The rids of types, fields, methods, events, properties and parameters are /// now known. /// MDMemberDefRidsAllocated, /// /// Original event: . /// The tables and rows of all types, fields, methods, events, properties and parameters /// have been initialized. Method body RVAs are still not known, and no method has been /// written yet. /// MDMemberDefsInitialized, /// /// Original event: . /// Before sorting most tables /// MDBeforeSortTables, /// /// Original event: . /// Most of the tables that should be sorted have been sorted. The CustomAttribute /// table is still unsorted since it hasn't been created yet. /// MDMostTablesSorted, /// /// Original event: . /// Custom attributes of all types, fields, methods, events, properties and parameters /// have now been written. /// MDMemberDefCustomAttributesWritten, /// /// Original event: . /// All resources are about to be added to the .NET resources table /// MDBeginAddResources, /// /// Original event: . /// All resources have been added to the .NET resources table /// MDEndAddResources, /// /// Original event: . /// All method bodies are about to be written /// MDBeginWriteMethodBodies, /// /// Original event: . /// All method bodies have been written. Their RVAs are still not known. /// MDEndWriteMethodBodies, /// /// Original event: . /// All tables are now sorted, including the CustomAttribute table. /// MDOnAllTablesSorted, /// /// Original event: . /// All tables have been created and all rows populated. The only columns that haven't /// been initialized yet are the ones that are RVAs. /// MDEndCreateTables, /// /// This event occurs before the PDB file is written. This event occurs even if no PDB file /// will be written. /// BeginWritePdb, /// /// The PDB file has been written. This event occurs even if no PDB file has been written. /// EndWritePdb, /// /// This event occurs just before all RVAs and file offsets of the chunks are calculated. /// BeginCalculateRvasAndFileOffsets, /// /// File offsets and RVAs of all chunks are now known. This includes method body and /// field RVAs. Nothing has been written to the destination stream yet. /// EndCalculateRvasAndFileOffsets, /// /// This event occurs before all chunks are written to the destination stream, and after /// all RVAs and file offsets are known. /// BeginWriteChunks, /// /// All chunks have been written to the destination stream. /// EndWriteChunks, /// /// This event occurs before the strong name signature is calculated. This event /// occurs even if the assembly isn't strong name signed. /// BeginStrongNameSign, /// /// This event occurs after the strong name signature has been calculated. This event /// occurs even if the assembly isn't strong name signed. /// EndStrongNameSign, /// /// This event occurs before the checksum in the PE header is updated. This event /// occurs even if the checksum isn't updated. /// BeginWritePEChecksum, /// /// This event occurs after the checksum in the PE header has been updated. This event /// occurs even if the checksum isn't updated. /// EndWritePEChecksum, /// /// Writing has ended /// End, } }