34 internal struct Record : IRecord
40 readonly
int IRecord.FilterKey => Field;
42 public readonly
int CompareTo(Record other) => Comparer<int>.Default.Compare(Field, other.Field);
46 internal const int Index = 0x1D;
48 internal override void Read(Reader.MetadataReader mr)
50 for (
int i = 0; i < records.Length; i++)
52 records[i].RVA = mr.ReadInt32();
53 records[i].Field = mr.ReadField();
57 internal override void Write(ModuleBuilder module)
59 for (
int i = 0; i < rowCount; i++)
60 module.Metadata.AddFieldRelativeVirtualAddress(
61 System.Reflection.Metadata.Ecma335.MetadataTokens.FieldDefinitionHandle(records[i].Field),
65 internal void Fixup(ModuleBuilder moduleBuilder)
67 for (
int i = 0; i < rowCount; i++)
70 moduleBuilder.FixupPseudoToken(
ref records[i].Field);