//
#pragma warning disable
#nullable enable annotations
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
namespace System.Runtime.InteropServices
{
///
/// Any method marked with can be directly called from
/// native code. The function token can be loaded to a local variable using the address-of operator
/// in C# and passed as a callback to a native method.
///
///
/// Methods marked with this attribute have the following restrictions:
/// * Method must be marked "static".
/// * Must not be called from managed code.
/// * Must only have blittable arguments.
///
[global::System.AttributeUsage(global::System.AttributeTargets.Method, Inherited = false)]
[global::System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverage]
[global::System.Diagnostics.Conditional("MULTI_TARGETING_SUPPORT_ATTRIBUTES")]
public sealed class UnmanagedCallersOnlyAttribute : global::System.Attribute
{
public UnmanagedCallersOnlyAttribute()
{
}
///
/// Optional. If omitted, the runtime will use the default platform calling convention.
///
///
/// Supplied types must be from the official "System.Runtime.CompilerServices" namespace and
/// be of the form "CallConvXXX".
///
public global::System.Type[]? CallConvs;
///
/// Optional. If omitted, no named export is emitted during compilation.
///
public string? EntryPoint;
}
}