public override ImmutableArray <DiagnosticTableItem> GetItems()
                {
                    var provider = _source._diagnosticService;
                    var items    = provider.GetDiagnostics(_workspace, _projectId, _documentId, _id, includeSuppressedDiagnostics: true, cancellationToken: CancellationToken.None)
                                   .Where(ShouldInclude)
                                   .Select(data => DiagnosticTableItem.Create(_workspace, data));

                    return(items.ToImmutableArray());
                }
                public override ImmutableArray <DiagnosticTableItem> GetItems()
                {
                    var provider = _source._diagnosticService;
                    var items    = provider.GetPushDiagnosticsAsync(_workspace, _projectId, _documentId, _id, includeSuppressedDiagnostics: true, InternalDiagnosticsOptions.NormalDiagnosticMode, cancellationToken: CancellationToken.None)
                                   .AsTask()
                                   .WaitAndGetResult_CanCallOnBackground(CancellationToken.None)
                                   .Where(ShouldInclude)
                                   .Select(data => DiagnosticTableItem.Create(_workspace, data));

                    return(items.ToImmutableArray());
                }
 public override ImmutableArray <DiagnosticTableItem> GetItems()
 {
     return(_source.AggregateItems(
                _source._buildErrorSource
                .GetBuildErrors()
                .GroupBy(
                    d => d,
                    d => DiagnosticTableItem.Create(_source.Workspace, d),
                    DiagnosticTableItem.GroupingComparer.Instance
                    )
                ));
 }
Пример #4
0
            public bool Equals(DiagnosticTableItem left, DiagnosticTableItem right)
            {
                if (ReferenceEquals(left, right))
                {
                    return(true);
                }

                if (left is null || right is null)
                {
                    return(false);
                }

                return(Equals(left.Data, right.Data));
            }
Пример #5
0
 public int GetHashCode(DiagnosticTableItem item)
 => GetHashCode(item.Data);