public static RankHandGradeEnum Grade(this HighPairOutcomeEnum outcome) { switch (outcome) { case HighPairOutcomeEnum.Foursome: return(RankHandGradeEnum.Foursome); case HighPairOutcomeEnum.HighSecondFullHouse: case HighPairOutcomeEnum.HighThirdFullHouse: case HighPairOutcomeEnum.HighLowFullHouse: case HighPairOutcomeEnum.SecondHighFullHouse: case HighPairOutcomeEnum.ThirdHighFullHouse: case HighPairOutcomeEnum.LowHighFullHouse: return(RankHandGradeEnum.FullHouse); case HighPairOutcomeEnum.StraightOverTwo: case HighPairOutcomeEnum.StraightOverOne: case HighPairOutcomeEnum.StraightOverNone: return(RankHandGradeEnum.Straight); case HighPairOutcomeEnum.ThreesomeTopKicker: case HighPairOutcomeEnum.ThreesomeGoodKicker: case HighPairOutcomeEnum.ThreesomeWeakKicker: case HighPairOutcomeEnum.ThreesomeNoneKicker: return(RankHandGradeEnum.Threesome); case HighPairOutcomeEnum.OverTwoPairs: case HighPairOutcomeEnum.OverSecondTwoPairs: case HighPairOutcomeEnum.OverThirdTwoPairs: case HighPairOutcomeEnum.OverLowTwoPairs: case HighPairOutcomeEnum.UnderTwoPairs: case HighPairOutcomeEnum.SecondTwoPairsTopKicker: case HighPairOutcomeEnum.SecondTwoPairsGoodKicker: case HighPairOutcomeEnum.SecondTwoPairsWeakKicker: case HighPairOutcomeEnum.SecondTwoPairsNoneKicker: case HighPairOutcomeEnum.ThirdTwoPairs: case HighPairOutcomeEnum.LowTwoPairs: return(RankHandGradeEnum.TwoPairs); case HighPairOutcomeEnum.TopKicker: case HighPairOutcomeEnum.GoodKicker: case HighPairOutcomeEnum.WeakKicker: case HighPairOutcomeEnum.NoneKicker: return(RankHandGradeEnum.OnePair); default: throw new InvalidOperationException(); } }
public static RankHandGradeEnum Grade(this HighPairOutcomeEnum outcome) { switch (outcome) { case HighPairOutcomeEnum.Foursome: return(RankHandGradeEnum.Foursome); case HighPairOutcomeEnum.HighFullHouseMiddlePair: case HighPairOutcomeEnum.HighFullHouseLowPair: case HighPairOutcomeEnum.MiddleFullHouse: case HighPairOutcomeEnum.LowFullHouse: return(RankHandGradeEnum.FullHouse); case HighPairOutcomeEnum.StraightOverTwo: case HighPairOutcomeEnum.StraightOverOne: case HighPairOutcomeEnum.StraightOverNone: return(RankHandGradeEnum.Straight); case HighPairOutcomeEnum.ThreesomeTopKicker: case HighPairOutcomeEnum.ThreesomeOverGoodKicker: case HighPairOutcomeEnum.ThreesomeOverWeakKicker: case HighPairOutcomeEnum.ThreesomeNoneKicker: return(RankHandGradeEnum.Threesome); case HighPairOutcomeEnum.OverTwoPairs: case HighPairOutcomeEnum.AboveMiddleTwoPairs: case HighPairOutcomeEnum.MiddleTwoPairs: case HighPairOutcomeEnum.AboveLowTwoPairs: case HighPairOutcomeEnum.LowTwoPairs: case HighPairOutcomeEnum.UnderTwoPairs: return(RankHandGradeEnum.TwoPairs); default: return(RankHandGradeEnum.OnePair); } }