// ------------------------------------------------------------------------------ // // This code was generated by a tool. // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. // // ------------------------------------------------------------------------------ using System; using System.Diagnostics; using System.Runtime.InteropServices; using HexaGen.Runtime; using System.Numerics; namespace Dalamud.Bindings.ImGui { /// /// To be documented. /// #if NET5_0_OR_GREATER [DebuggerDisplay("{DebuggerDisplay,nq}")] #endif public readonly unsafe partial struct ImTextureID : IEquatable { public ImTextureID(ulong handle) { Handle = handle; } public ImTextureID(nint handle) { Handle = (ulong)handle; } public ImTextureID(void* handle) { Handle = (ulong)handle; } public ulong Handle { get; } public bool IsNull => Handle == 0; public static ImTextureID Null => default; public static implicit operator ImTextureID(ulong handle) => new ImTextureID(handle); public static bool operator ==(ImTextureID left, ImTextureID right) => left.Handle == right.Handle; public static bool operator !=(ImTextureID left, ImTextureID right) => left.Handle != right.Handle; public static bool operator ==(ImTextureID left, nint right) => left.Handle == (ulong)right; public static bool operator !=(ImTextureID left, nint right) => left.Handle != (ulong)right; public static bool operator ==(ImTextureID left, ulong right) => left.Handle == right; public static bool operator !=(ImTextureID left, ulong right) => left.Handle != right; public bool Equals(ImTextureID other) => Handle == other.Handle; /// public override bool Equals(object obj) => obj is ImTextureID handle && Equals(handle); /// public override int GetHashCode() => Handle.GetHashCode(); #if NET5_0_OR_GREATER private string DebuggerDisplay => string.Format("ImTextureID [0x{0}]", Handle.ToString("X")); #endif } }