コード例 #1
0
        public int Compare(MissionVersion x, MissionVersion y)
        {
            if (x == null)
            {
                throw new ArgumentNullException(nameof(x));
            }
            if (y == null)
            {
                throw new ArgumentNullException(nameof(y));
            }
            var xN = GetNumberRepresentation(x.TextRepresentation);
            var yN = GetNumberRepresentation(y.TextRepresentation);

            for (var i = 0; i < Math.Max(xN.Length, yN.Length); i++)
            {
                var xCurrent = i < xN.Length ? xN[i] : 0;
                var yCurrent = i < yN.Length ? yN[i] : 0;

                if (xCurrent != yCurrent)
                {
                    return(xCurrent - yCurrent);
                }
            }

            return(0);
        }
コード例 #2
0
 public Mission(string fullName, MissionType type, int size, string name, MissionVersion version, string terrain)
 {
     FullName = fullName;
     Type     = type;
     Size     = size;
     Name     = name;
     Terrain  = terrain;
     Version  = version;
 }
コード例 #3
0
 public bool IsFormatCorrect(MissionVersion version)
 {
     if (version == null)
     {
         throw new ArgumentNullException(nameof(version));
     }
     try
     {
         GetNumberRepresentation(version.TextRepresentation);
         return(true);
     }
     catch (ArgumentException)
     {
         return(false);
     }
 }