// dnlib: See LICENSE.txt for more info namespace dnlib.DotNet.MD { #pragma warning disable 1591 // Missing XML comment for publicly visible type or member /// /// Raw contents of an uncompressed Module table row /// public readonly struct RawModuleRow { public readonly ushort Generation; public readonly uint Name; public readonly uint Mvid; public readonly uint EncId; public readonly uint EncBaseId; public RawModuleRow(ushort Generation, uint Name, uint Mvid, uint EncId, uint EncBaseId) { this.Generation = Generation; this.Name = Name; this.Mvid = Mvid; this.EncId = EncId; this.EncBaseId = EncBaseId; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Generation, 1 => Name, 2 => Mvid, 3 => EncId, 4 => EncBaseId, _ => 0, }; } /// /// Raw contents of an uncompressed TypeRef table row /// public readonly struct RawTypeRefRow { public readonly uint ResolutionScope; public readonly uint Name; public readonly uint Namespace; public RawTypeRefRow(uint ResolutionScope, uint Name, uint Namespace) { this.ResolutionScope = ResolutionScope; this.Name = Name; this.Namespace = Namespace; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => ResolutionScope, 1 => Name, 2 => Namespace, _ => 0, }; } /// /// Raw contents of an uncompressed TypeDef table row /// public readonly struct RawTypeDefRow { public readonly uint Flags; public readonly uint Name; public readonly uint Namespace; public readonly uint Extends; public readonly uint FieldList; public readonly uint MethodList; public RawTypeDefRow(uint Flags, uint Name, uint Namespace, uint Extends, uint FieldList, uint MethodList) { this.Flags = Flags; this.Name = Name; this.Namespace = Namespace; this.Extends = Extends; this.FieldList = FieldList; this.MethodList = MethodList; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Flags, 1 => Name, 2 => Namespace, 3 => Extends, 4 => FieldList, 5 => MethodList, _ => 0, }; } /// /// Raw contents of an uncompressed FieldPtr table row /// public readonly struct RawFieldPtrRow { public readonly uint Field; public RawFieldPtrRow(uint Field) => this.Field = Field; /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Field, _ => 0, }; } /// /// Raw contents of an uncompressed Field table row /// public readonly struct RawFieldRow { public readonly ushort Flags; public readonly uint Name; public readonly uint Signature; public RawFieldRow(ushort Flags, uint Name, uint Signature) { this.Flags = Flags; this.Name = Name; this.Signature = Signature; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Flags, 1 => Name, 2 => Signature, _ => 0, }; } /// /// Raw contents of an uncompressed MethodPtr table row /// public readonly struct RawMethodPtrRow { public readonly uint Method; public RawMethodPtrRow(uint Method) => this.Method = Method; /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Method, _ => 0, }; } /// /// Raw contents of an uncompressed Method table row /// public readonly struct RawMethodRow { public readonly uint RVA; public readonly ushort ImplFlags; public readonly ushort Flags; public readonly uint Name; public readonly uint Signature; public readonly uint ParamList; public RawMethodRow(uint RVA, ushort ImplFlags, ushort Flags, uint Name, uint Signature, uint ParamList) { this.RVA = RVA; this.ImplFlags = ImplFlags; this.Flags = Flags; this.Name = Name; this.Signature = Signature; this.ParamList = ParamList; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => RVA, 1 => ImplFlags, 2 => Flags, 3 => Name, 4 => Signature, 5 => ParamList, _ => 0, }; } /// /// Raw contents of an uncompressed ParamPtr table row /// public readonly struct RawParamPtrRow { public readonly uint Param; public RawParamPtrRow(uint Param) => this.Param = Param; /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Param, _ => 0, }; } /// /// Raw contents of an uncompressed Param table row /// public readonly struct RawParamRow { public readonly ushort Flags; public readonly ushort Sequence; public readonly uint Name; public RawParamRow(ushort Flags, ushort Sequence, uint Name) { this.Flags = Flags; this.Sequence = Sequence; this.Name = Name; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Flags, 1 => Sequence, 2 => Name, _ => 0, }; } /// /// Raw contents of an uncompressed InterfaceImpl table row /// public readonly struct RawInterfaceImplRow { public readonly uint Class; public readonly uint Interface; public RawInterfaceImplRow(uint Class, uint Interface) { this.Class = Class; this.Interface = Interface; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Class, 1 => Interface, _ => 0, }; } /// /// Raw contents of an uncompressed MemberRef table row /// public readonly struct RawMemberRefRow { public readonly uint Class; public readonly uint Name; public readonly uint Signature; public RawMemberRefRow(uint Class, uint Name, uint Signature) { this.Class = Class; this.Name = Name; this.Signature = Signature; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Class, 1 => Name, 2 => Signature, _ => 0, }; } /// /// Raw contents of an uncompressed Constant table row /// public readonly struct RawConstantRow { public readonly byte Type; public readonly byte Padding; public readonly uint Parent; public readonly uint Value; public RawConstantRow(byte Type, byte Padding, uint Parent, uint Value) { this.Type = Type; this.Padding = Padding; this.Parent = Parent; this.Value = Value; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Type, 1 => Padding, 2 => Parent, 3 => Value, _ => 0, }; } /// /// Raw contents of an uncompressed CustomAttribute table row /// public readonly struct RawCustomAttributeRow { public readonly uint Parent; public readonly uint Type; public readonly uint Value; public RawCustomAttributeRow(uint Parent, uint Type, uint Value) { this.Parent = Parent; this.Type = Type; this.Value = Value; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Parent, 1 => Type, 2 => Value, _ => 0, }; } /// /// Raw contents of an uncompressed FieldMarshal table row /// public readonly struct RawFieldMarshalRow { public readonly uint Parent; public readonly uint NativeType; public RawFieldMarshalRow(uint Parent, uint NativeType) { this.Parent = Parent; this.NativeType = NativeType; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Parent, 1 => NativeType, _ => 0, }; } /// /// Raw contents of an uncompressed DeclSecurity table row /// public readonly struct RawDeclSecurityRow { public readonly short Action; public readonly uint Parent; public readonly uint PermissionSet; public RawDeclSecurityRow(short Action, uint Parent, uint PermissionSet) { this.Action = Action; this.Parent = Parent; this.PermissionSet = PermissionSet; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => (uint)(int)Action, 1 => Parent, 2 => PermissionSet, _ => 0, }; } /// /// Raw contents of an uncompressed ClassLayout table row /// public readonly struct RawClassLayoutRow { public readonly ushort PackingSize; public readonly uint ClassSize; public readonly uint Parent; public RawClassLayoutRow(ushort PackingSize, uint ClassSize, uint Parent) { this.PackingSize = PackingSize; this.ClassSize = ClassSize; this.Parent = Parent; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => PackingSize, 1 => ClassSize, 2 => Parent, _ => 0, }; } /// /// Raw contents of an uncompressed FieldLayout table row /// public readonly struct RawFieldLayoutRow { public readonly uint OffSet; public readonly uint Field; public RawFieldLayoutRow(uint OffSet, uint Field) { this.OffSet = OffSet; this.Field = Field; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => OffSet, 1 => Field, _ => 0, }; } /// /// Raw contents of an uncompressed StandAloneSig table row /// public readonly struct RawStandAloneSigRow { public readonly uint Signature; public RawStandAloneSigRow(uint Signature) => this.Signature = Signature; /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Signature, _ => 0, }; } /// /// Raw contents of an uncompressed EventMap table row /// public readonly struct RawEventMapRow { public readonly uint Parent; public readonly uint EventList; public RawEventMapRow(uint Parent, uint EventList) { this.Parent = Parent; this.EventList = EventList; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Parent, 1 => EventList, _ => 0, }; } /// /// Raw contents of an uncompressed EventPtr table row /// public readonly struct RawEventPtrRow { public readonly uint Event; public RawEventPtrRow(uint Event) => this.Event = Event; /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Event, _ => 0, }; } /// /// Raw contents of an uncompressed Event table row /// public readonly struct RawEventRow { public readonly ushort EventFlags; public readonly uint Name; public readonly uint EventType; public RawEventRow(ushort EventFlags, uint Name, uint EventType) { this.EventFlags = EventFlags; this.Name = Name; this.EventType = EventType; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => EventFlags, 1 => Name, 2 => EventType, _ => 0, }; } /// /// Raw contents of an uncompressed PropertyMap table row /// public readonly struct RawPropertyMapRow { public readonly uint Parent; public readonly uint PropertyList; public RawPropertyMapRow(uint Parent, uint PropertyList) { this.Parent = Parent; this.PropertyList = PropertyList; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Parent, 1 => PropertyList, _ => 0, }; } /// /// Raw contents of an uncompressed PropertyPtr table row /// public readonly struct RawPropertyPtrRow { public readonly uint Property; public RawPropertyPtrRow(uint Property) => this.Property = Property; /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Property, _ => 0, }; } /// /// Raw contents of an uncompressed Property table row /// public readonly struct RawPropertyRow { public readonly ushort PropFlags; public readonly uint Name; public readonly uint Type; public RawPropertyRow(ushort PropFlags, uint Name, uint Type) { this.PropFlags = PropFlags; this.Name = Name; this.Type = Type; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => PropFlags, 1 => Name, 2 => Type, _ => 0, }; } /// /// Raw contents of an uncompressed MethodSemantics table row /// public readonly struct RawMethodSemanticsRow { public readonly ushort Semantic; public readonly uint Method; public readonly uint Association; public RawMethodSemanticsRow(ushort Semantic, uint Method, uint Association) { this.Semantic = Semantic; this.Method = Method; this.Association = Association; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Semantic, 1 => Method, 2 => Association, _ => 0, }; } /// /// Raw contents of an uncompressed MethodImpl table row /// public readonly struct RawMethodImplRow { public readonly uint Class; public readonly uint MethodBody; public readonly uint MethodDeclaration; public RawMethodImplRow(uint Class, uint MethodBody, uint MethodDeclaration) { this.Class = Class; this.MethodBody = MethodBody; this.MethodDeclaration = MethodDeclaration; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Class, 1 => MethodBody, 2 => MethodDeclaration, _ => 0, }; } /// /// Raw contents of an uncompressed ModuleRef table row /// public readonly struct RawModuleRefRow { public readonly uint Name; public RawModuleRefRow(uint Name) => this.Name = Name; /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Name, _ => 0, }; } /// /// Raw contents of an uncompressed TypeSpec table row /// public readonly struct RawTypeSpecRow { public readonly uint Signature; public RawTypeSpecRow(uint Signature) => this.Signature = Signature; /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Signature, _ => 0, }; } /// /// Raw contents of an uncompressed ImplMap table row /// public readonly struct RawImplMapRow { public readonly ushort MappingFlags; public readonly uint MemberForwarded; public readonly uint ImportName; public readonly uint ImportScope; public RawImplMapRow(ushort MappingFlags, uint MemberForwarded, uint ImportName, uint ImportScope) { this.MappingFlags = MappingFlags; this.MemberForwarded = MemberForwarded; this.ImportName = ImportName; this.ImportScope = ImportScope; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => MappingFlags, 1 => MemberForwarded, 2 => ImportName, 3 => ImportScope, _ => 0, }; } /// /// Raw contents of an uncompressed FieldRVA table row /// public readonly struct RawFieldRVARow { public readonly uint RVA; public readonly uint Field; public RawFieldRVARow(uint RVA, uint Field) { this.RVA = RVA; this.Field = Field; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => RVA, 1 => Field, _ => 0, }; } /// /// Raw contents of an uncompressed ENCLog table row /// public readonly struct RawENCLogRow { public readonly uint Token; public readonly uint FuncCode; public RawENCLogRow(uint Token, uint FuncCode) { this.Token = Token; this.FuncCode = FuncCode; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Token, 1 => FuncCode, _ => 0, }; } /// /// Raw contents of an uncompressed ENCMap table row /// public readonly struct RawENCMapRow { public readonly uint Token; public RawENCMapRow(uint Token) => this.Token = Token; /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Token, _ => 0, }; } /// /// Raw contents of an uncompressed Assembly table row /// public readonly struct RawAssemblyRow { public readonly uint HashAlgId; public readonly ushort MajorVersion; public readonly ushort MinorVersion; public readonly ushort BuildNumber; public readonly ushort RevisionNumber; public readonly uint Flags; public readonly uint PublicKey; public readonly uint Name; public readonly uint Locale; public RawAssemblyRow(uint HashAlgId, ushort MajorVersion, ushort MinorVersion, ushort BuildNumber, ushort RevisionNumber, uint Flags, uint PublicKey, uint Name, uint Locale) { this.HashAlgId = HashAlgId; this.MajorVersion = MajorVersion; this.MinorVersion = MinorVersion; this.BuildNumber = BuildNumber; this.RevisionNumber = RevisionNumber; this.Flags = Flags; this.PublicKey = PublicKey; this.Name = Name; this.Locale = Locale; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => HashAlgId, 1 => MajorVersion, 2 => MinorVersion, 3 => BuildNumber, 4 => RevisionNumber, 5 => Flags, 6 => PublicKey, 7 => Name, 8 => Locale, _ => 0, }; } /// /// Raw contents of an uncompressed AssemblyProcessor table row /// public readonly struct RawAssemblyProcessorRow { public readonly uint Processor; public RawAssemblyProcessorRow(uint Processor) => this.Processor = Processor; /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Processor, _ => 0, }; } /// /// Raw contents of an uncompressed AssemblyOS table row /// public readonly struct RawAssemblyOSRow { public readonly uint OSPlatformId; public readonly uint OSMajorVersion; public readonly uint OSMinorVersion; public RawAssemblyOSRow(uint OSPlatformId, uint OSMajorVersion, uint OSMinorVersion) { this.OSPlatformId = OSPlatformId; this.OSMajorVersion = OSMajorVersion; this.OSMinorVersion = OSMinorVersion; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => OSPlatformId, 1 => OSMajorVersion, 2 => OSMinorVersion, _ => 0, }; } /// /// Raw contents of an uncompressed AssemblyRef table row /// public readonly struct RawAssemblyRefRow { public readonly ushort MajorVersion; public readonly ushort MinorVersion; public readonly ushort BuildNumber; public readonly ushort RevisionNumber; public readonly uint Flags; public readonly uint PublicKeyOrToken; public readonly uint Name; public readonly uint Locale; public readonly uint HashValue; public RawAssemblyRefRow(ushort MajorVersion, ushort MinorVersion, ushort BuildNumber, ushort RevisionNumber, uint Flags, uint PublicKeyOrToken, uint Name, uint Locale, uint HashValue) { this.MajorVersion = MajorVersion; this.MinorVersion = MinorVersion; this.BuildNumber = BuildNumber; this.RevisionNumber = RevisionNumber; this.Flags = Flags; this.PublicKeyOrToken = PublicKeyOrToken; this.Name = Name; this.Locale = Locale; this.HashValue = HashValue; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => MajorVersion, 1 => MinorVersion, 2 => BuildNumber, 3 => RevisionNumber, 4 => Flags, 5 => PublicKeyOrToken, 6 => Name, 7 => Locale, 8 => HashValue, _ => 0, }; } /// /// Raw contents of an uncompressed AssemblyRefProcessor table row /// public readonly struct RawAssemblyRefProcessorRow { public readonly uint Processor; public readonly uint AssemblyRef; public RawAssemblyRefProcessorRow(uint Processor, uint AssemblyRef) { this.Processor = Processor; this.AssemblyRef = AssemblyRef; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Processor, 1 => AssemblyRef, _ => 0, }; } /// /// Raw contents of an uncompressed AssemblyRefOS table row /// public readonly struct RawAssemblyRefOSRow { public readonly uint OSPlatformId; public readonly uint OSMajorVersion; public readonly uint OSMinorVersion; public readonly uint AssemblyRef; public RawAssemblyRefOSRow(uint OSPlatformId, uint OSMajorVersion, uint OSMinorVersion, uint AssemblyRef) { this.OSPlatformId = OSPlatformId; this.OSMajorVersion = OSMajorVersion; this.OSMinorVersion = OSMinorVersion; this.AssemblyRef = AssemblyRef; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => OSPlatformId, 1 => OSMajorVersion, 2 => OSMinorVersion, 3 => AssemblyRef, _ => 0, }; } /// /// Raw contents of an uncompressed File table row /// public readonly struct RawFileRow { public readonly uint Flags; public readonly uint Name; public readonly uint HashValue; public RawFileRow(uint Flags, uint Name, uint HashValue) { this.Flags = Flags; this.Name = Name; this.HashValue = HashValue; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Flags, 1 => Name, 2 => HashValue, _ => 0, }; } /// /// Raw contents of an uncompressed ExportedType table row /// public readonly struct RawExportedTypeRow { public readonly uint Flags; public readonly uint TypeDefId; public readonly uint TypeName; public readonly uint TypeNamespace; public readonly uint Implementation; public RawExportedTypeRow(uint Flags, uint TypeDefId, uint TypeName, uint TypeNamespace, uint Implementation) { this.Flags = Flags; this.TypeDefId = TypeDefId; this.TypeName = TypeName; this.TypeNamespace = TypeNamespace; this.Implementation = Implementation; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Flags, 1 => TypeDefId, 2 => TypeName, 3 => TypeNamespace, 4 => Implementation, _ => 0, }; } /// /// Raw contents of an uncompressed ManifestResource table row /// public readonly struct RawManifestResourceRow { public readonly uint Offset; public readonly uint Flags; public readonly uint Name; public readonly uint Implementation; public RawManifestResourceRow(uint Offset, uint Flags, uint Name, uint Implementation) { this.Offset = Offset; this.Flags = Flags; this.Name = Name; this.Implementation = Implementation; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Offset, 1 => Flags, 2 => Name, 3 => Implementation, _ => 0, }; } /// /// Raw contents of an uncompressed NestedClass table row /// public readonly struct RawNestedClassRow { public readonly uint NestedClass; public readonly uint EnclosingClass; public RawNestedClassRow(uint NestedClass, uint EnclosingClass) { this.NestedClass = NestedClass; this.EnclosingClass = EnclosingClass; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => NestedClass, 1 => EnclosingClass, _ => 0, }; } /// /// Raw contents of an uncompressed GenericParam table row /// public readonly struct RawGenericParamRow { public readonly ushort Number; public readonly ushort Flags; public readonly uint Owner; public readonly uint Name; public readonly uint Kind; public RawGenericParamRow(ushort Number, ushort Flags, uint Owner, uint Name, uint Kind) { this.Number = Number; this.Flags = Flags; this.Owner = Owner; this.Name = Name; this.Kind = Kind; } public RawGenericParamRow(ushort Number, ushort Flags, uint Owner, uint Name) { this.Number = Number; this.Flags = Flags; this.Owner = Owner; this.Name = Name; Kind = 0; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Number, 1 => Flags, 2 => Owner, 3 => Name, 4 => Kind, _ => 0, }; } /// /// Raw contents of an uncompressed MethodSpec table row /// public readonly struct RawMethodSpecRow { public readonly uint Method; public readonly uint Instantiation; public RawMethodSpecRow(uint Method, uint Instantiation) { this.Method = Method; this.Instantiation = Instantiation; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Method, 1 => Instantiation, _ => 0, }; } /// /// Raw contents of an uncompressed GenericParamConstraint table row /// public readonly struct RawGenericParamConstraintRow { public readonly uint Owner; public readonly uint Constraint; public RawGenericParamConstraintRow(uint Owner, uint Constraint) { this.Owner = Owner; this.Constraint = Constraint; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Owner, 1 => Constraint, _ => 0, }; } /// /// Raw contents of an uncompressed Document table row /// public readonly struct RawDocumentRow { public readonly uint Name; public readonly uint HashAlgorithm; public readonly uint Hash; public readonly uint Language; public RawDocumentRow(uint Name, uint HashAlgorithm, uint Hash, uint Language) { this.Name = Name; this.HashAlgorithm = HashAlgorithm; this.Hash = Hash; this.Language = Language; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Name, 1 => HashAlgorithm, 2 => Hash, 3 => Language, _ => 0, }; } /// /// Raw contents of an uncompressed MethodDebugInformation table row /// public readonly struct RawMethodDebugInformationRow { public readonly uint Document; public readonly uint SequencePoints; public RawMethodDebugInformationRow(uint Document, uint SequencePoints) { this.Document = Document; this.SequencePoints = SequencePoints; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Document, 1 => SequencePoints, _ => 0, }; } /// /// Raw contents of an uncompressed LocalScope table row /// public readonly struct RawLocalScopeRow { public readonly uint Method; public readonly uint ImportScope; public readonly uint VariableList; public readonly uint ConstantList; public readonly uint StartOffset; public readonly uint Length; public RawLocalScopeRow(uint Method, uint ImportScope, uint VariableList, uint ConstantList, uint StartOffset, uint Length) { this.Method = Method; this.ImportScope = ImportScope; this.VariableList = VariableList; this.ConstantList = ConstantList; this.StartOffset = StartOffset; this.Length = Length; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Method, 1 => ImportScope, 2 => VariableList, 3 => ConstantList, 4 => StartOffset, 5 => Length, _ => 0, }; } /// /// Raw contents of an uncompressed LocalVariable table row /// public readonly struct RawLocalVariableRow { public readonly ushort Attributes; public readonly ushort Index; public readonly uint Name; public RawLocalVariableRow(ushort Attributes, ushort Index, uint Name) { this.Attributes = Attributes; this.Index = Index; this.Name = Name; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Attributes, 1 => Index, 2 => Name, _ => 0, }; } /// /// Raw contents of an uncompressed LocalConstant table row /// public readonly struct RawLocalConstantRow { public readonly uint Name; public readonly uint Signature; public RawLocalConstantRow(uint Name, uint Signature) { this.Name = Name; this.Signature = Signature; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Name, 1 => Signature, _ => 0, }; } /// /// Raw contents of an uncompressed ImportScope table row /// public readonly struct RawImportScopeRow { public readonly uint Parent; public readonly uint Imports; public RawImportScopeRow(uint Parent, uint Imports) { this.Parent = Parent; this.Imports = Imports; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Parent, 1 => Imports, _ => 0, }; } /// /// Raw contents of an uncompressed StateMachineMethod table row /// public readonly struct RawStateMachineMethodRow { public readonly uint MoveNextMethod; public readonly uint KickoffMethod; public RawStateMachineMethodRow(uint MoveNextMethod, uint KickoffMethod) { this.MoveNextMethod = MoveNextMethod; this.KickoffMethod = KickoffMethod; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => MoveNextMethod, 1 => KickoffMethod, _ => 0, }; } /// /// Raw contents of an uncompressed CustomDebugInformation table row /// public readonly struct RawCustomDebugInformationRow { public readonly uint Parent; public readonly uint Kind; public readonly uint Value; public RawCustomDebugInformationRow(uint Parent, uint Kind, uint Value) { this.Parent = Parent; this.Kind = Kind; this.Value = Value; } /// /// Gets a column /// /// Index of column /// public uint this[int index] => index switch { 0 => Parent, 1 => Kind, 2 => Value, _ => 0, }; } #pragma warning restore 1591 // Missing XML comment for publicly visible type or member }