namespace MegghysAPI.Entities { public struct LogString(object text, ConsoleColor? color = null) { public string Text { get; set; } = text?.ToString() ?? string.Empty; public ConsoleColor? Color { get; set; } = color; public static implicit operator string(LogString d) => d.Text; public static implicit operator LogString(string d) => new(d); public static implicit operator LogString(int d) => new(d.ToString()); public static implicit operator LogString(long d) => new(d.ToString()); public static implicit operator LogString((string? text, ConsoleColor color) d) => new(d.text, d.color); public static implicit operator LogString((object? text, ConsoleColor color) d) => new(d.text, d.color); public static implicit operator (string text, ConsoleColor color)(LogString d) => (d.Text, d.Color ?? ConsoleColor.Gray); public static implicit operator (object text, ConsoleColor color)(LogString d) => (d.Text, d.Color ?? ConsoleColor.Gray); } }