| File: System\Reflection\Metadata\AssemblyExtensions.cs | Web Access |
| Project: src\runtime\src\coreclr\nativeaot\System.Private.CoreLib\src\System.Private.CoreLib.csproj (System.Private.CoreLib) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. using System.Diagnostics.CodeAnalysis; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; namespace System.Reflection.Metadata { public static class AssemblyExtensions { // Retrieves the metadata section of the assembly, for use with System.Reflection.Metadata.MetadataReader. // - Returns false upon failure. Metadata might not be available for some assemblies, such as AssemblyBuilder, .NET // native images, etc. // - Callers should not write to the metadata blob // - The metadata blob pointer will remain valid as long as the AssemblyLoadContext with which the assembly is // associated, is alive. The caller is responsible for keeping the assembly object alive while accessing the // metadata blob. [CLSCompliant(false)] // out byte* blob public static unsafe bool TryGetRawMetadata(this Assembly assembly, out byte* blob, out int length) { ArgumentNullException.ThrowIfNull(assembly); blob = null; length = 0; return false; } } }