public DmdTypeDefMD(DmdEcma335MetadataReader reader, uint rid, IList <DmdCustomModifier> customModifiers) : base(rid, customModifiers) { this.reader = reader ?? throw new ArgumentNullException(nameof(reader)); var row = reader.TablesStream.ReadTypeDefRow(rid); string ns = reader.StringsStream.Read(row.Namespace); MetadataNamespace = string.IsNullOrEmpty(ns) ? null : ns; MetadataName = reader.StringsStream.ReadNoNull(row.Name); Attributes = FixAttributes((DmdTypeAttributes)row.Flags); }
public DmdTypeDefCOMD(DmdComMetadataReader reader, uint rid, IList <DmdCustomModifier> customModifiers) : base(rid, customModifiers) { this.reader = reader ?? throw new ArgumentNullException(nameof(reader)); reader.Dispatcher.VerifyAccess(); uint token = 0x02000000 + rid; DmdTypeUtilities.SplitFullName(MDAPI.GetTypeDefName(reader.MetaDataImport, token) ?? string.Empty, out var @namespace, out var name); MetadataNamespace = @namespace; MetadataName = name; Attributes = FixAttributes(MDAPI.GetTypeDefAttributes(reader.MetaDataImport, token) ?? 0); }