Example #1
0
        public static int SortByRank(IRankable a, IRankable b)
        {
            if (a == null)
            {
                return(b == null ? 0 : -1);
            }
            if (b == null)
            {
                return(1);
            }

            if (a.Rank > b.Rank)
            {
                return(1);
            }
            else if (a.Rank < b.Rank)
            {
                return(-1);
            }
            if (a is IComparable && b is IComparable && a.GetType() == b.GetType())
            {
                return(((IComparable)a).CompareTo((IComparable)b));
            }
            return(0);
        }
Example #2
0
        /// <summary>
        /// Constructors initializes the Tournament read-only field and takes one argument
        /// </summary>
        /// <param name="rankable">A tournament to rank</param>
        public Ranker(IRankable rankable)
        {
            if (rankable == null | !rankable.ReadyToRank)
            {
                throw new RankException();
            }

            Rankable = rankable;
        }
		public static int SortByRank(IRankable a, IRankable b)
		{
			if (a == null)
				return b == null ? 0 : -1;
			if (b == null)
				return 1;

			if (a.Rank > b.Rank)
				return 1;
			else if (a.Rank < b.Rank)
				return -1;
			else
				return 0;
		}
Example #4
0
        public static int SortByRank(IRankable a, IRankable b)
        {
            if (a == null)
                return b == null ? 0 : -1;
            if (b == null)
                return 1;

            if (a.Rank > b.Rank)
                return 1;
            else if (a.Rank < b.Rank)
                return -1;
            if (a is IComparable && b is IComparable && a.GetType() == b.GetType())
                return ((IComparable)a).CompareTo((IComparable)b);
            return 0;
        }
Example #5
0
        /// <summary>
        /// Helper method to perform boolean operations on two <see cref="IRankable"/>
        /// </summary>
        public static bool IsRank(TermCategoryBoolOps op, IRankable t1, IRankable t2)
        {
            switch (op)
            {
            case TermCategoryBoolOps.Ne:
                return((t1?.GetRank() ?? 0) != (t2?.GetRank() ?? 0));

            case TermCategoryBoolOps.Gt:
                return((t1?.GetRank() ?? 0) > (t2?.GetRank() ?? 0));

            case TermCategoryBoolOps.Lt:
                return((t1?.GetRank() ?? 0) < (t2?.GetRank() ?? 0));

            case TermCategoryBoolOps.Ge:
                return((t1?.GetRank() ?? 0) >= (t2?.GetRank() ?? 0));

            case TermCategoryBoolOps.Le:
                return((t1?.GetRank() ?? 0) <= (t2?.GetRank() ?? 0));

            default:
                return((t1?.GetRank() ?? 0) == (t2?.GetRank() ?? -1));
            }
        }
Example #6
0
        public static int SortByRank(IRankable a, IRankable b)
        {
            if (a == null)
            {
                return(b == null ? 0 : -1);
            }
            if (b == null)
            {
                return(1);
            }

            if (a.Rank > b.Rank)
            {
                return(1);
            }
            else if (a.Rank < b.Rank)
            {
                return(-1);
            }
            else
            {
                return(0);
            }
        }
Example #7
0
 public Matcher(IRankable i_Ranker)
 {
     Ranker = i_Ranker;
 }
 public FriendsMatcher(User i_LoggedInUser, IRankable i_RankStragety)
 {
     Matcher        = new Matcher(i_RankStragety);
     r_LoggedInUser = i_LoggedInUser;
 }
Example #9
0
 public RankedFriendsManager(User i_LoggedInUser, IRankable i_RankByStargety)
 {
     r_RankedFriends = new FriendsMatcher.FriendsMatcher(i_LoggedInUser, i_RankByStargety);
 }