Example #1
0
        /// <summary>
        /// Compares two elements.
        /// </summary>
        /// <param name="x">First element</param>
        /// <param name="y">Second element</param>
        /// <returns>Ordinal difference between elements.</returns>
        public int Compare(IElement x, IElement y)
        {
            IElement v1 = this.GetValue(x);
            IElement v2 = this.GetValue(y);

            return(this.sign * ElementOrder.Compare(v1, v2, this.node));
        }
Example #2
0
        /// <summary>
        /// Compares two elements.
        /// </summary>
        /// <param name="x">First element</param>
        /// <param name="y">Second element</param>
        /// <returns>Ordinal difference between elements.</returns>
        public int Compare(IElement x, IElement y)
        {
            if (x is IVector v1 && y is IVector v2)
            {
                IElement e1 = v1.GetElement(this.index);
                IElement e2 = v2.GetElement(this.index);

                return(this.sign * ElementOrder.Compare(e1, e2, this.node));
            }