diff options
Diffstat (limited to 'Assembly_Firstpass/Steamworks/UGCHandle_t.cs')
-rw-r--r-- | Assembly_Firstpass/Steamworks/UGCHandle_t.cs | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/Assembly_Firstpass/Steamworks/UGCHandle_t.cs b/Assembly_Firstpass/Steamworks/UGCHandle_t.cs new file mode 100644 index 0000000..4edc20d --- /dev/null +++ b/Assembly_Firstpass/Steamworks/UGCHandle_t.cs @@ -0,0 +1,65 @@ +using System; + +namespace Steamworks; + +[Serializable] +public struct UGCHandle_t : IEquatable<UGCHandle_t>, IComparable<UGCHandle_t> +{ + public static readonly UGCHandle_t Invalid = new UGCHandle_t(ulong.MaxValue); + + public ulong m_UGCHandle; + + public UGCHandle_t(ulong value) + { + m_UGCHandle = value; + } + + public override string ToString() + { + return m_UGCHandle.ToString(); + } + + public override bool Equals(object other) + { + if (other is UGCHandle_t) + { + return this == (UGCHandle_t)other; + } + return false; + } + + public override int GetHashCode() + { + return m_UGCHandle.GetHashCode(); + } + + public static bool operator ==(UGCHandle_t x, UGCHandle_t y) + { + return x.m_UGCHandle == y.m_UGCHandle; + } + + public static bool operator !=(UGCHandle_t x, UGCHandle_t y) + { + return !(x == y); + } + + public static explicit operator UGCHandle_t(ulong value) + { + return new UGCHandle_t(value); + } + + public static explicit operator ulong(UGCHandle_t that) + { + return that.m_UGCHandle; + } + + public bool Equals(UGCHandle_t other) + { + return m_UGCHandle == other.m_UGCHandle; + } + + public int CompareTo(UGCHandle_t other) + { + return m_UGCHandle.CompareTo(other.m_UGCHandle); + } +} |