public MetaDataTableNode(HexDocument doc, MDTable mdTable, IMetaData md) : base((ulong)mdTable.StartOffset, (ulong)mdTable.EndOffset - 1) { this.doc = doc; this.tableInfo = mdTable.TableInfo; this.tablesStreamVM = MetaDataTableVM.Create(this, doc, StartOffset, mdTable); this.tablesStreamVM.FindMetaDataTable = FindMetaDataTable; this.tablesStreamVM.InitializeHeapOffsets((ulong)md.StringsStream.StartOffset, (ulong)md.StringsStream.EndOffset - 1); }
public MetaDataTableNode(HexBuffer buffer, MDTable mdTable, IMetaData md) : base(HexSpan.FromBounds((ulong)mdTable.StartOffset, (ulong)mdTable.EndOffset)) { Buffer = buffer; TableInfo = mdTable.TableInfo; var stringsHeapSpan = HexSpan.FromBounds((ulong)md.StringsStream.StartOffset, (ulong)md.StringsStream.EndOffset); var guidHeapSpan = HexSpan.FromBounds((ulong)md.GuidStream.StartOffset, (ulong)md.GuidStream.EndOffset); MetaDataTableVM = MetaDataTableVM.Create(this, buffer, Span.Start, mdTable, stringsHeapSpan, guidHeapSpan); MetaDataTableVM.FindMetaDataTable = FindMetaDataTable; }