// https://stackoverflow.com/questions/61573959/how-to-resolve-error-notnullwhen-attribute-is-inaccessible-due-to-its-protectio
namespace System.Diagnostics.CodeAnalysis
{
/// Specifies that when a method returns , the parameter will not be null even if the corresponding type allows it.
[AttributeUsage(AttributeTargets.Parameter, Inherited = false)]
internal sealed class NotNullWhenAttribute : Attribute
{
/// Initializes the attribute with the specified return value condition.
///
/// The return value condition. If the method returns this value, the associated parameter will not be null.
///
public NotNullWhenAttribute(bool returnValue) => ReturnValue = returnValue;
/// Gets the return value condition.
public bool ReturnValue { get; }
}
}