NTSTATUS
using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using System.Runtime.CompilerServices;
namespace Windows.Win32.Foundation
{
[DebuggerDisplay("{Value}")]
[GeneratedCode("Microsoft.Windows.CsWin32", "0.3.151+58e949951d.RR")]
internal readonly struct NTSTATUS : IEquatable<NTSTATUS>
{
internal enum Severity
{
Success,
Informational,
Warning,
Error
}
internal readonly int Value;
internal static readonly NTSTATUS STATUS_NO_MEMORY = (NTSTATUS)(-1073741801);
internal static readonly NTSTATUS STATUS_PENDING = (NTSTATUS)259;
internal static readonly NTSTATUS STATUS_SUCCESS = (NTSTATUS)0;
internal static readonly NTSTATUS STILL_ACTIVE = (NTSTATUS)259;
internal Severity SeverityCode => (Severity)((uint)(Value & -1073741824) >> 30);
internal NTSTATUS(int value)
{
Value = value;
}
public static implicit operator int(NTSTATUS value)
{
return value.Value;
}
public static explicit operator NTSTATUS(int value)
{
return new NTSTATUS(value);
}
public static bool operator ==(NTSTATUS left, NTSTATUS right)
{
return left.Value == right.Value;
}
public static bool operator !=(NTSTATUS left, NTSTATUS right)
{
return !(left == right);
}
public bool Equals(NTSTATUS other)
{
return Value == other.Value;
}
public override bool Equals(object obj)
{
if (obj is NTSTATUS) {
NTSTATUS other = (NTSTATUS)obj;
return Equals(other);
}
return false;
}
public override int GetHashCode()
{
return Value.GetHashCode();
}
public override string ToString()
{
DefaultInterpolatedStringHandler defaultInterpolatedStringHandler = new DefaultInterpolatedStringHandler(2, 1);
defaultInterpolatedStringHandler.AppendLiteral("0x");
defaultInterpolatedStringHandler.AppendFormatted(Value, "x");
return defaultInterpolatedStringHandler.ToStringAndClear();
}
public static implicit operator uint(NTSTATUS value)
{
return (uint)value.Value;
}
public static explicit operator NTSTATUS(uint value)
{
return new NTSTATUS((int)value);
}
}
}