Files
Libation/Source/LibationUiBase/EnumDisplay[T].cs
Michael Bucari-Tovo 3ab1edc076 Code Cleanup
Make fields readonly
Remove unnecessary casts
Format document
Remove unnecessary usings
Sort usings
Use file-level namespaces
Order modifiers
2026-02-05 12:48:44 -07:00

21 lines
587 B
C#

using Dinah.Core;
using System;
namespace LibationUiBase;
public class EnumDisplay<T> where T : Enum
{
public T Value { get; }
public string Description { get; }
public EnumDisplay(T value, string? description = null)
{
Value = value;
Description = description ?? value.GetDescription() ?? value.ToString();
}
public override string ToString() => Description;
public override bool Equals(object? obj)
=> (obj is EnumDisplay<T> other && other.Value.Equals(Value)) || (obj is T value && value.Equals(Value));
public override int GetHashCode() => Value.GetHashCode();
}