示例#1
0
        static bool Equals(Seq <X> s1, Seq <X> s2)
        {
            if (s1.IsEmpty && s2.IsEmpty)
            {
                return(true);
            }

            if (s1.IsUnbounded || s1.IsUnbounded)
            {
                return(false);
            }

            var _l1 = s1.AsArray();
            var _l2 = s2.AsArray();

            if (_l1.Length != _l2.Length)
            {
                return(false);
            }

            for (var i = 0; i < _l2.Length; i++)
            {
                var left  = _l1[i];
                var right = _l2[i];
                var same  = Equals(left, right);
                if (not(same))
                {
                    return(false);
                }
            }
            return(true);
        }