# System.Reflection.Metadata ``` diff namespace System.Reflection.Metadata { - public struct ArrayShape + public readonly struct ArrayShape - public struct AssemblyDefinition { + public readonly struct AssemblyDefinition { + public AssemblyName GetAssemblyName(); } - public struct AssemblyDefinitionHandle : IEquatable + public readonly struct AssemblyDefinitionHandle : IEquatable - public struct AssemblyFile + public readonly struct AssemblyFile - public struct AssemblyFileHandle : IEquatable + public readonly struct AssemblyFileHandle : IEquatable - public struct AssemblyFileHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection + public readonly struct AssemblyFileHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection - public struct AssemblyReference { + public readonly struct AssemblyReference { + public AssemblyName GetAssemblyName(); } - public struct AssemblyReferenceHandle : IEquatable + public readonly struct AssemblyReferenceHandle : IEquatable - public struct AssemblyReferenceHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection + public readonly struct AssemblyReferenceHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection - public struct Blob + public readonly struct Blob - public struct BlobContentId : IEquatable + public readonly struct BlobContentId : IEquatable - public struct BlobHandle : IEquatable + public readonly struct BlobHandle : IEquatable - public struct Constant + public readonly struct Constant - public struct ConstantHandle : IEquatable + public readonly struct ConstantHandle : IEquatable - public struct CustomAttribute + public readonly struct CustomAttribute - public struct CustomAttributeHandle : IEquatable + public readonly struct CustomAttributeHandle : IEquatable - public struct CustomAttributeHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection + public readonly struct CustomAttributeHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection - public struct CustomAttributeNamedArgument + public readonly struct CustomAttributeNamedArgument - public struct CustomAttributeTypedArgument + public readonly struct CustomAttributeTypedArgument - public struct CustomAttributeValue + public readonly struct CustomAttributeValue - public struct CustomDebugInformation + public readonly struct CustomDebugInformation - public struct CustomDebugInformationHandle : IEquatable + public readonly struct CustomDebugInformationHandle : IEquatable - public struct CustomDebugInformationHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection + public readonly struct CustomDebugInformationHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection public sealed class DebugMetadataHeader { + public int IdStartOffset { get; } } - public struct DeclarativeSecurityAttribute + public readonly struct DeclarativeSecurityAttribute - public struct DeclarativeSecurityAttributeHandle : IEquatable + public readonly struct DeclarativeSecurityAttributeHandle : IEquatable - public struct DeclarativeSecurityAttributeHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection + public readonly struct DeclarativeSecurityAttributeHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection - public struct Document + public readonly struct Document - public struct DocumentHandle : IEquatable + public readonly struct DocumentHandle : IEquatable - public struct DocumentHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection + public readonly struct DocumentHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection - public struct DocumentNameBlobHandle : IEquatable + public readonly struct DocumentNameBlobHandle : IEquatable - public struct EntityHandle : IEquatable + public readonly struct EntityHandle : IEquatable - public struct EventAccessors { + public readonly struct EventAccessors { + public ImmutableArray Others { get; } } - public struct EventDefinition + public readonly struct EventDefinition - public struct EventDefinitionHandle : IEquatable + public readonly struct EventDefinitionHandle : IEquatable - public struct EventDefinitionHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection + public readonly struct EventDefinitionHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection - public struct ExceptionRegion + public readonly struct ExceptionRegion - public struct ExportedType + public readonly struct ExportedType - public struct ExportedTypeHandle : IEquatable + public readonly struct ExportedTypeHandle : IEquatable - public struct ExportedTypeHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection + public readonly struct ExportedTypeHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection - public struct FieldDefinition + public readonly struct FieldDefinition - public struct FieldDefinitionHandle : IEquatable + public readonly struct FieldDefinitionHandle : IEquatable - public struct FieldDefinitionHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection + public readonly struct FieldDefinitionHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection - public struct GenericParameter + public readonly struct GenericParameter - public struct GenericParameterConstraint + public readonly struct GenericParameterConstraint - public struct GenericParameterConstraintHandle : IEquatable + public readonly struct GenericParameterConstraintHandle : IEquatable - public struct GenericParameterConstraintHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection, IReadOnlyList + public readonly struct GenericParameterConstraintHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection, IReadOnlyList - public struct GenericParameterHandle : IEquatable + public readonly struct GenericParameterHandle : IEquatable - public struct GenericParameterHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection, IReadOnlyList + public readonly struct GenericParameterHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection, IReadOnlyList - public struct GuidHandle : IEquatable + public readonly struct GuidHandle : IEquatable - public struct Handle : IEquatable + public readonly struct Handle : IEquatable - public struct ImportDefinition + public readonly struct ImportDefinition - public struct ImportDefinitionCollection : IEnumerable, IEnumerable + public readonly struct ImportDefinitionCollection : IEnumerable, IEnumerable - public struct ImportScope + public readonly struct ImportScope - public struct ImportScopeCollection : IEnumerable, IEnumerable, IReadOnlyCollection + public readonly struct ImportScopeCollection : IEnumerable, IEnumerable, IReadOnlyCollection - public struct ImportScopeHandle : IEquatable + public readonly struct ImportScopeHandle : IEquatable - public struct InterfaceImplementation + public readonly struct InterfaceImplementation - public struct InterfaceImplementationHandle : IEquatable + public readonly struct InterfaceImplementationHandle : IEquatable - public struct InterfaceImplementationHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection + public readonly struct InterfaceImplementationHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection - public struct LocalConstant + public readonly struct LocalConstant - public struct LocalConstantHandle : IEquatable + public readonly struct LocalConstantHandle : IEquatable - public struct LocalConstantHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection + public readonly struct LocalConstantHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection - public struct LocalScope + public readonly struct LocalScope - public struct LocalScopeHandle : IEquatable + public readonly struct LocalScopeHandle : IEquatable - public struct LocalScopeHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection + public readonly struct LocalScopeHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection - public struct LocalVariable + public readonly struct LocalVariable - public struct LocalVariableHandle : IEquatable + public readonly struct LocalVariableHandle : IEquatable - public struct LocalVariableHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection + public readonly struct LocalVariableHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection - public struct ManifestResource + public readonly struct ManifestResource - public struct ManifestResourceHandle : IEquatable + public readonly struct ManifestResourceHandle : IEquatable - public struct ManifestResourceHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection + public readonly struct ManifestResourceHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection - public struct MemberReference + public readonly struct MemberReference - public struct MemberReferenceHandle : IEquatable + public readonly struct MemberReferenceHandle : IEquatable - public struct MemberReferenceHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection + public readonly struct MemberReferenceHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection - public struct MetadataStringComparer + public readonly struct MetadataStringComparer - public struct MethodDebugInformation + public readonly struct MethodDebugInformation - public struct MethodDebugInformationHandle : IEquatable + public readonly struct MethodDebugInformationHandle : IEquatable - public struct MethodDebugInformationHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection + public readonly struct MethodDebugInformationHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection - public struct MethodDefinition + public readonly struct MethodDefinition - public struct MethodDefinitionHandle : IEquatable + public readonly struct MethodDefinitionHandle : IEquatable - public struct MethodDefinitionHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection + public readonly struct MethodDefinitionHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection - public struct MethodImplementation + public readonly struct MethodImplementation - public struct MethodImplementationHandle : IEquatable + public readonly struct MethodImplementationHandle : IEquatable - public struct MethodImplementationHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection + public readonly struct MethodImplementationHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection - public struct MethodImport + public readonly struct MethodImport - public struct MethodSignature + public readonly struct MethodSignature - public struct MethodSpecification + public readonly struct MethodSpecification - public struct MethodSpecificationHandle : IEquatable + public readonly struct MethodSpecificationHandle : IEquatable - public struct ModuleDefinition { + public readonly struct ModuleDefinition { + public CustomAttributeHandleCollection GetCustomAttributes(); } - public struct ModuleDefinitionHandle : IEquatable + public readonly struct ModuleDefinitionHandle : IEquatable - public struct ModuleReference + public readonly struct ModuleReference - public struct ModuleReferenceHandle : IEquatable + public readonly struct ModuleReferenceHandle : IEquatable - public struct NamespaceDefinitionHandle : IEquatable + public readonly struct NamespaceDefinitionHandle : IEquatable - public struct Parameter + public readonly struct Parameter - public struct ParameterHandle : IEquatable + public readonly struct ParameterHandle : IEquatable - public struct ParameterHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection + public readonly struct ParameterHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection - public struct PropertyAccessors { + public readonly struct PropertyAccessors { + public ImmutableArray Others { get; } } - public struct PropertyDefinition + public readonly struct PropertyDefinition - public struct PropertyDefinitionHandle : IEquatable + public readonly struct PropertyDefinitionHandle : IEquatable - public struct PropertyDefinitionHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection + public readonly struct PropertyDefinitionHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection - public struct ReservedBlob where THandle : struct + public readonly struct ReservedBlob where THandle : struct - public struct SequencePoint : IEquatable + public readonly struct SequencePoint : IEquatable - public struct SequencePointCollection : IEnumerable, IEnumerable + public readonly struct SequencePointCollection : IEnumerable, IEnumerable - public struct StandaloneSignature + public readonly struct StandaloneSignature - public struct StandaloneSignatureHandle : IEquatable + public readonly struct StandaloneSignatureHandle : IEquatable - public struct StringHandle : IEquatable + public readonly struct StringHandle : IEquatable - public struct TypeDefinition { + public readonly struct TypeDefinition { + public bool IsNested { get; } } - public struct TypeDefinitionHandle : IEquatable + public readonly struct TypeDefinitionHandle : IEquatable - public struct TypeDefinitionHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection + public readonly struct TypeDefinitionHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection - public struct TypeLayout + public readonly struct TypeLayout - public struct TypeReference + public readonly struct TypeReference - public struct TypeReferenceHandle : IEquatable + public readonly struct TypeReferenceHandle : IEquatable - public struct TypeReferenceHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection + public readonly struct TypeReferenceHandleCollection : IEnumerable, IEnumerable, IReadOnlyCollection - public struct TypeSpecification + public readonly struct TypeSpecification - public struct TypeSpecificationHandle : IEquatable + public readonly struct TypeSpecificationHandle : IEquatable - public struct UserStringHandle : IEquatable + public readonly struct UserStringHandle : IEquatable } ```