namespace pdinklag.CPW.Common
{
    /// <summary>
    /// An enumeration of possible results of a <see cref="IWinningManeuver"/>.
    /// </summary>
    public static class WinningManeuverResultExtensions
    {
        public static bool IsDeliberateStoppage(this WinningManeuverResult result) => result switch
        {
            WinningManeuverResult.Success => true,
            WinningManeuverResult.Stopped => true,
            WinningManeuverResult.Timeout => true,
            WinningManeuverResult.RopeBreak => true,
            WinningManeuverResult.OutsideRing => true,
            WinningManeuverResult.IllegalParticipant => true,
            WinningManeuverResult.IllegalKind => true,
            _ => false
        };

        public static bool IsKickout(this WinningManeuverResult result) => result == WinningManeuverResult.Kickout;
    }
}
