Beispiel #1
0
 /// <summary>
 ///     Constructor
 /// </summary>
 /// <param name="options">Options</param>
 public TablesHeap(TablesHeapOptions options)
 {
     this.options   = options ?? new TablesHeapOptions();
     HasDeletedRows = this.options.HasDeletedRows ?? false;
     Tables         = new IMDTable[]
     {
         ModuleTable,
         TypeRefTable,
         TypeDefTable,
         FieldPtrTable,
         FieldTable,
         MethodPtrTable,
         MethodTable,
         ParamPtrTable,
         ParamTable,
         InterfaceImplTable,
         MemberRefTable,
         ConstantTable,
         CustomAttributeTable,
         FieldMarshalTable,
         DeclSecurityTable,
         ClassLayoutTable,
         FieldLayoutTable,
         StandAloneSigTable,
         EventMapTable,
         EventPtrTable,
         EventTable,
         PropertyMapTable,
         PropertyPtrTable,
         PropertyTable,
         MethodSemanticsTable,
         MethodImplTable,
         ModuleRefTable,
         TypeSpecTable,
         ImplMapTable,
         FieldRVATable,
         ENCLogTable,
         ENCMapTable,
         AssemblyTable,
         AssemblyProcessorTable,
         AssemblyOSTable,
         AssemblyRefTable,
         AssemblyRefProcessorTable,
         AssemblyRefOSTable,
         FileTable,
         ExportedTypeTable,
         ManifestResourceTable,
         NestedClassTable,
         GenericParamTable,
         MethodSpecTable,
         GenericParamConstraintTable
     };
 }
Beispiel #2
0
		/// <summary>
		/// Constructor
		/// </summary>
		/// <param name="options">Options</param>
		public TablesHeap(TablesHeapOptions options) {
			this.options = options ?? new TablesHeapOptions();
			this.hasDeletedRows = this.options.HasDeletedRows ?? false;
			this.Tables = new IMDTable[] {
				ModuleTable,
				TypeRefTable,
				TypeDefTable,
				FieldPtrTable,
				FieldTable,
				MethodPtrTable,
				MethodTable,
				ParamPtrTable,
				ParamTable,
				InterfaceImplTable,
				MemberRefTable,
				ConstantTable,
				CustomAttributeTable,
				FieldMarshalTable,
				DeclSecurityTable,
				ClassLayoutTable,
				FieldLayoutTable,
				StandAloneSigTable,
				EventMapTable,
				EventPtrTable,
				EventTable,
				PropertyMapTable,
				PropertyPtrTable,
				PropertyTable,
				MethodSemanticsTable,
				MethodImplTable,
				ModuleRefTable,
				TypeSpecTable,
				ImplMapTable,
				FieldRVATable,
				ENCLogTable,
				ENCMapTable,
				AssemblyTable,
				AssemblyProcessorTable,
				AssemblyOSTable,
				AssemblyRefTable,
				AssemblyRefProcessorTable,
				AssemblyRefOSTable,
				FileTable,
				ExportedTypeTable,
				ManifestResourceTable,
				NestedClassTable,
				GenericParamTable,
				MethodSpecTable,
				GenericParamConstraintTable,
			};
		}
Beispiel #3
0
		public void CopyTo(TablesHeapOptions options) {
			options.Reserved1 = Reserved1.Value;
			options.MajorVersion = MajorVersion.Value;
			options.MinorVersion = MinorVersion.Value;
			options.UseENC = UseENC;
			options.ExtraData = ExtraData.Value;
			options.HasDeletedRows = HasDeletedRows;
		}
Beispiel #4
0
		public void InitializeFrom(TablesHeapOptions options) {
			Reserved1.Value = options.Reserved1;
			MajorVersion.Value = options.MajorVersion;
			MinorVersion.Value = options.MinorVersion;
			UseENC = options.UseENC;
			ExtraData.Value = options.ExtraData;
			HasDeletedRows = options.HasDeletedRows;
		}
Beispiel #5
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="options">Options</param>
 public TablesHeap(TablesHeapOptions options)
 {
     this.options        = options ?? new TablesHeapOptions();
     this.hasDeletedRows = this.options.HasDeletedRows ?? false;
     this.Tables         = new IMDTable[] {
         ModuleTable,
         TypeRefTable,
         TypeDefTable,
         FieldPtrTable,
         FieldTable,
         MethodPtrTable,
         MethodTable,
         ParamPtrTable,
         ParamTable,
         InterfaceImplTable,
         MemberRefTable,
         ConstantTable,
         CustomAttributeTable,
         FieldMarshalTable,
         DeclSecurityTable,
         ClassLayoutTable,
         FieldLayoutTable,
         StandAloneSigTable,
         EventMapTable,
         EventPtrTable,
         EventTable,
         PropertyMapTable,
         PropertyPtrTable,
         PropertyTable,
         MethodSemanticsTable,
         MethodImplTable,
         ModuleRefTable,
         TypeSpecTable,
         ImplMapTable,
         FieldRVATable,
         ENCLogTable,
         ENCMapTable,
         AssemblyTable,
         AssemblyProcessorTable,
         AssemblyOSTable,
         AssemblyRefTable,
         AssemblyRefProcessorTable,
         AssemblyRefOSTable,
         FileTable,
         ExportedTypeTable,
         ManifestResourceTable,
         NestedClassTable,
         GenericParamTable,
         MethodSpecTable,
         GenericParamConstraintTable,
         new MDTable <RawDummyRow>((Table)0x2D, RawDummyRow.Comparer),
         new MDTable <RawDummyRow>((Table)0x2E, RawDummyRow.Comparer),
         new MDTable <RawDummyRow>((Table)0x2F, RawDummyRow.Comparer),
         DocumentTable,
         MethodDebugInformationTable,
         LocalScopeTable,
         LocalVariableTable,
         LocalConstantTable,
         ImportScopeTable,
         StateMachineMethodTable,
         CustomDebugInformationTable,
     };
 }