namespace WallstopStudios.DataVisualizer.Editor.Search { using System; using System.Collections.Generic; using System.Linq; public sealed class SearchResultMatchInfo { public bool isMatch; public readonly List matchedFields = new(); public bool MatchInPrimaryField { get { return matchedFields.Exists(f => string.Equals( f.fieldName, MatchSource.ObjectName, StringComparison.OrdinalIgnoreCase ) || string.Equals( f.fieldName, MatchSource.TypeName, StringComparison.OrdinalIgnoreCase ) || string.Equals( f.fieldName, MatchSource.Guid, StringComparison.OrdinalIgnoreCase ) ); } } public IEnumerable AllMatchedTerms { get { return matchedFields .SelectMany(mf => mf.matchedTerms) .Distinct(StringComparer.OrdinalIgnoreCase); } } } }