<commit_before>﻿using System;

namespace PlayerRank
{
    public class Points
    {
        private readonly double m_Points;

        public Points(double points)
        {
            m_Points = points;
        }

        [Obsolete("This getter will be removed in a future version")]
        internal double GetValue()
        {
            return m_Points;
        }

        protected bool Equals(Points other)
        {
            return m_Points.Equals(other.m_Points);
        }

        public override bool Equals(object obj)
        {
            if (ReferenceEquals(null, obj)) return false;
            if (ReferenceEquals(this, obj)) return true;
            return obj.GetType() == GetType() && Equals((Points) obj);
        }

        public override int GetHashCode()
        {
            return m_Points.GetHashCode();
        }

        public static Points operator +(Points pointsA, Points pointsB)
        {
            return new Points(pointsA.m_Points + pointsB.m_Points);
        }

        public static Points operator -(Points pointsA, Points pointsB)
        {
            return new Points(pointsA.m_Points - pointsB.m_Points);
        }

        public static double operator /(Points points, double divider)
        {
            return points.m_Points / divider;
        }

        public static bool operator >(Points pointsA, Points pointsB)
        {
            return (pointsA.m_Points > pointsB.m_Points);
        }

        public static bool operator <(Points pointsA, Points pointsB)<commit_msg>Make points orderable<commit_after>﻿using System;

namespace PlayerRank
{
    public class Points : IComparable
    {
        private readonly double m_Points;

        public Points(double points)
        {
            m_Points = points;
        }

        [Obsolete("This getter will be removed in a future version")]
        internal double GetValue()
        {
            return m_Points;
        }

        protected bool Equals(Points other)
        {
            return m_Points.Equals(other.m_Points);
        }

        public override bool Equals(object obj)
        {
            if (ReferenceEquals(null, obj)) return false;
            if (ReferenceEquals(this, obj)) return true;
            return obj.GetType() == GetType() && Equals((Points) obj);
        }

        public override int GetHashCode()
        {
            return m_Points.GetHashCode();
        }

        public int CompareTo(object obj)
        {
            var other = obj as Points;

            if (other == null)
                throw new ArgumentException("Can not compare Points to other type");

            if (other > this)
                return -1;
            if (other < this)
                return 1;

            return 0;

        }

        public static Points operator +(Points pointsA, Points pointsB)
        {
            return new Points(pointsA.m_Points + pointsB.m_Points);
        }

        public static Points operator -(Points pointsA, Points pointsB)
        {
            return new Points(pointsA.m_Points - pointsB.m_Points);
        }

        public static double operator /(Points points, double divider)
        {
            return points.m_Points / divider;
        }

        public static bool operator >(Points pointsA, Points pointsB)
        {
            return (pointsA.m_Points > pointsB.m_Points);
        }

        public static bool operator <(Points pointsA, Points pointsB)
{'fraction_non_alphanumeric': 0.0775462962962963, 'fraction_numerical': 0.0008680555555555555, 'mean_word_length': 1.7050078247261347, 'pattern_counts': {'":': 0, '<': 6, '<?xml version=': 0, '>': 8, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5245412', 'n_tokens_mistral': 899, 'n_tokens_neox': 864, 'n_words': 267}