2 instantiations of DocumentSymbolDataViewModel
Microsoft.VisualStudio.LanguageServices (1)
DocumentOutline\DocumentOutlineViewModel_Utilities.cs (1)
183var documentSymbolItem = new DocumentSymbolDataViewModel(documentSymbol, children);
Microsoft.VisualStudio.LanguageServices.CSharp.UnitTests (1)
DocumentOutline\DocumentOutlineTests.cs (1)
100return new DocumentSymbolDataViewModel(symbolData, newChildren);
71 references to DocumentSymbolDataViewModel
Microsoft.VisualStudio.LanguageServices (57)
DocumentOutline\DocumentOutlineView.xaml.cs (11)
242$"{nameof(DocumentSymbolDataViewModel.Data)}.{nameof(DocumentSymbolDataViewModel.Data.Name)}", 246$"{nameof(DocumentSymbolDataViewModel.Data)}.{nameof(DocumentSymbolDataViewModel.Data.RangeSpan)}.{nameof(DocumentSymbolDataViewModel.Data.RangeSpan.Start)}.{nameof(DocumentSymbolDataViewModel.Data.RangeSpan.Start.Position)}", 251$"{nameof(DocumentSymbolDataViewModel.Data)}.{nameof(DocumentSymbolDataViewModel.Data.SymbolKind)}", 254$"{nameof(DocumentSymbolDataViewModel.Data)}.{nameof(DocumentSymbolDataViewModel.Data.Name)}", 288&& e.OriginalSource is TreeViewItem { DataContext: DocumentSymbolDataViewModel symbolModel } item
DocumentOutline\DocumentOutlineViewModel.cs (15)
216public ImmutableArray<DocumentSymbolDataViewModel> DocumentSymbolViewModelItems 241static void ExpandOrCollapse(ImmutableArray<DocumentSymbolDataViewModel> models, bool shouldExpand) 243foreach (var model in models) 314using var _ = SegmentedListPool.GetPooledList<DocumentSymbolDataViewModel>(out var models); 316var intervalTree = ImmutableIntervalTree<DocumentSymbolDataViewModel>.CreateFromUnsorted( 344static void AddAllModels(ImmutableArray<DocumentSymbolDataViewModel> viewModels, SegmentedList<DocumentSymbolDataViewModel> result) 346foreach (var model in viewModels) 356ImmutableArray<DocumentSymbolDataViewModel> oldItems, 357ImmutableArray<DocumentSymbolDataViewModel> newItems) 368foreach (var item in newItems) 384ImmutableArray<DocumentSymbolDataViewModel> oldItems, 387foreach (var item in oldItems) 399ImmutableArray<DocumentSymbolDataViewModel> newItems) 401foreach (var item in newItems)
DocumentOutline\DocumentOutlineViewModel.DocumentOutlineViewState.cs (6)
34/// should be as the only mutable state is <see cref="DocumentSymbolDataViewModel.IsExpanded"/>/<see 35/// cref="DocumentSymbolDataViewModel.IsSelected"/>, both of which are threadsafe. 37public readonly ImmutableArray<DocumentSymbolDataViewModel> ViewModelItems; 43public readonly ImmutableIntervalTree<DocumentSymbolDataViewModel> ViewModelItemsTree; 48ImmutableArray<DocumentSymbolDataViewModel> viewModelItems, 49ImmutableIntervalTree<DocumentSymbolDataViewModel> viewModelItemsTree)
DocumentOutline\DocumentOutlineViewModel.IntervalIntrospector.cs (2)
17private readonly struct IntervalIntrospector : IIntervalIntrospector<DocumentSymbolDataViewModel> 19public TextSpan GetSpan(DocumentSymbolDataViewModel value)
DocumentOutline\DocumentOutlineViewModel_Utilities.cs (6)
173/// Converts an immutable array of <see cref="DocumentSymbolData" /> to an immutable array of <see cref="DocumentSymbolDataViewModel"/>. 175public static ImmutableArray<DocumentSymbolDataViewModel> GetDocumentSymbolItemViewModels( 179var documentSymbolItems = new FixedSizeArrayBuilder<DocumentSymbolDataViewModel>(documentSymbolData.Length); 183var documentSymbolItem = new DocumentSymbolDataViewModel(documentSymbol, children); 192ImmutableArray<DocumentSymbolDataViewModel> currentDocumentSymbolItems, 195foreach (var item in currentDocumentSymbolItems)
DocumentOutline\DocumentSymbolDataViewModel.cs (5)
21internal sealed class DocumentSymbolDataViewModel : INotifyPropertyChanged, IEquatable<DocumentSymbolDataViewModel> 24public ImmutableArray<DocumentSymbolDataViewModel> Children { get; } 45ImmutableArray<DocumentSymbolDataViewModel> children) 76=> Equals(obj as DocumentSymbolDataViewModel); 78public bool Equals(DocumentSymbolDataViewModel? other)
DocumentOutline\DocumentSymbolDataViewModelSorter.cs (12)
16/// Sorts immutable collections of <see cref="DocumentSymbolDataViewModel"/>s 24if (values[0] is ImmutableArray<DocumentSymbolDataViewModel> children && 33public static IComparer<DocumentSymbolDataViewModel> GetComparer(SortOption sortOption) 48private sealed class NameComparer : IComparer<DocumentSymbolDataViewModel> 52public int Compare(DocumentSymbolDataViewModel x, DocumentSymbolDataViewModel y) 56private sealed class LocationComparer : IComparer<DocumentSymbolDataViewModel> 60public int Compare(DocumentSymbolDataViewModel x, DocumentSymbolDataViewModel y) 64private sealed class TypeComparer : IComparer<DocumentSymbolDataViewModel> 68public int Compare(DocumentSymbolDataViewModel x, DocumentSymbolDataViewModel y)
Microsoft.VisualStudio.LanguageServices.CSharp.UnitTests (14)
DocumentOutline\DocumentOutlineTests.cs (14)
57private async Task<(DocumentOutlineTestMocks mocks, (ImmutableArray<DocumentSymbolData> DocumentSymbolData, ITextSnapshot OriginalSnapshot), ImmutableArray<DocumentSymbolDataViewModel> uiItems)> 78static ImmutableArray<DocumentSymbolDataViewModel> SortDocumentSymbols( 79ImmutableArray<DocumentSymbolDataViewModel> documentSymbolData, 83var sortedDocumentSymbols = new FixedSizeArrayBuilder<DocumentSymbolDataViewModel>(documentSymbolData.Length); 84foreach (var documentSymbol in documentSymbolData) 93static ImmutableArray<DocumentSymbolDataViewModel> Sort(ImmutableArray<DocumentSymbolDataViewModel> items, SortOption sortOption) 94=> (ImmutableArray<DocumentSymbolDataViewModel>)DocumentSymbolDataViewModelSorter.Instance.Convert([items, sortOption], typeof(ImmutableArray<DocumentSymbolDataViewModel>), parameter: null, CultureInfo.CurrentCulture); 96static DocumentSymbolDataViewModel ReplaceChildren(DocumentSymbolDataViewModel symbolToUpdate, ImmutableArray<DocumentSymbolDataViewModel> newChildren) 103static void CheckSortedSymbols(ImmutableArray<DocumentSymbolDataViewModel> sortedSymbols, SortOption sortOption) 116foreach (var symbol in sortedSymbols)