public bool Equals()

in src/Sarif.Viewer.VisualStudio.Core/Tags/TextViewCaretListener.cs [162:190]


            public bool Equals(ISarifLocationTag x, ISarifLocationTag y)
            {
                if (ReferenceEquals(x, y))
                {
                    return true;
                }

                if (x == null || y == null || x.PersistentSpan == null || y.PersistentSpan == null)
                {
                    return false;
                }

                if (x.PersistentSpan.IsDocumentOpen != y.PersistentSpan.IsDocumentOpen)
                {
                    return false;
                }

                if (!x.PersistentSpan.FilePath.Equals(y.PersistentSpan.FilePath, StringComparison.OrdinalIgnoreCase))
                {
                    return false;
                }

                if (x.PersistentSpan.TryGetSpan(out Span xSpan) && y.PersistentSpan.TryGetSpan(out Span ySpan))
                {
                    return xSpan == ySpan;
                }

                return false;
            }