20 instantiations of RBFinger
PresentationFramework (20)
MS\Internal\Data\LiveShapingBlock.cs (5)
57return new RBFinger<LiveShapingItem>() { Node = this, Offset = offset, Index = baseIndex + offset, Found = true }; 106oldFinger = new RBFinger<LiveShapingItem>() { Node = this, Offset = index, Index = baseIndex + index, Found = true }; 208return new RBFinger<LiveShapingItem>() { Node = this, Offset = k, Index = index + k }; 345return new RBFinger<LiveShapingItem>() { Node = foundBlock, Offset = offset, Index = baseIndex + offset }; 426return new RBFinger<LiveShapingItem>() { Node = foundBlock, Offset = offset, Index = baseIndex + offset };
MS\Internal\Data\RBNode.cs (15)
91result = new RBFinger<T>() { Node = this, Offset = 0, Index = 0, Found = false }; 99result = new RBFinger<T>() { Node = this, Offset = index - LeftSize, Index = index, Found = true }; 104result = new RBFinger<T>() { Node = this, Offset = Size, Index = LeftSize + Size, Found = false }; 122result = new RBFinger<T>() { Node = this, Offset = 0, Index = 0, Found = (compL == 0) }; 127result = new RBFinger<T>() { Node = this, Offset = 0, Index = LeftSize, Found = true }; 134result = new RBFinger<T>() { Node = this, Offset = offset, Index = LeftSize + offset, Found = found }; 139result = new RBFinger<T>() { Node = this, Offset = Size, Index = LeftSize + Size }; 176result = new RBFinger<T>() { Node = this, Offset = left, Index = left, Found = (compL == 0) }; 181result = new RBFinger<T>() { Node = this, Offset = 0, Index = LeftSize, Found = true }; 207result = new RBFinger<T>() { Node = this, Offset = right, Index = LeftSize + right, Found = false }; 220result = new RBFinger<T>() { Node = this, Offset = offset, Index = LeftSize + offset, Found = found }; 264return new RBFinger<T>() { Node = startingNode, Offset = k + 1, Index = nodeIndex + k + 1 }; 282return new RBFinger<T>() { Node = parent, Offset = offset, Index = nodeIndex + offset }; 295newFinger = new RBFinger<T>() { Node = newFinger.Node.GetSuccessor(), Offset = 0, Index = newFinger.Index }; 299return new RBFinger<T>() { Node = startingNode, Offset = 0, Index = nodeIndex };
70 references to RBFinger
PresentationFramework (70)
MS\Internal\Data\LiveShapingBlock.cs (6)
52internal RBFinger<LiveShapingItem> GetFinger(LiveShapingItem lsi) 63internal void FindPosition(LiveShapingItem item, out RBFinger<LiveShapingItem> oldFinger, out RBFinger<LiveShapingItem> newFinger, Comparison<LiveShapingItem> comparison) 178RBFinger<LiveShapingItem> LocalSearch(LiveShapingItem item, int left, int right, Comparison<LiveShapingItem> comparison) 269RBFinger<LiveShapingItem> SearchLeft(LiveShapingItem item, int offset, Comparison<LiveShapingItem> comparison) 350RBFinger<LiveShapingItem> SearchRight(LiveShapingItem item, int offset, Comparison<LiveShapingItem> comparison)
MS\Internal\Data\LiveShapingItem.cs (3)
73internal void FindPosition(out RBFinger<LiveShapingItem> oldFinger, out RBFinger<LiveShapingItem> newFinger, Comparison<LiveShapingItem> comparison) 78internal RBFinger<LiveShapingItem> GetFinger()
MS\Internal\Data\LiveShapingList.cs (1)
230RBFinger<LiveShapingItem> finger = _root.BoundedSearch(temp, index, index + count);
MS\Internal\Data\LiveShapingTree.cs (7)
50RBFinger<LiveShapingItem> finger = FindIndex(0); 59RBFinger<LiveShapingItem> fingerL = LocateItem(finger, Comparison); 79RBFinger<LiveShapingItem> oldFinger, newFinger; 88RBFinger<LiveShapingItem> finger = FindIndex(index); 97RBFinger<LiveShapingItem> finger = FindIndex(0); 109RBFinger<LiveShapingItem> finger = lsi.GetFinger(); 121RBFinger<LiveShapingItem> finger = lsi.GetFinger();
MS\Internal\Data\RBFinger.cs (14)
21public static RBFinger<T> operator +(RBFinger<T> finger, int delta) 30public static RBFinger<T> operator -(RBFinger<T> finger, int delta) 35public static int operator -(RBFinger<T> f1, RBFinger<T> f2) 40public static RBFinger<T> operator ++(RBFinger<T> finger) 52public static RBFinger<T> operator --(RBFinger<T> finger) 65public static bool operator <(RBFinger<T> f1, RBFinger<T> f2) 70public static bool operator >(RBFinger<T> f1, RBFinger<T> f2)
MS\Internal\Data\RBNode.cs (12)
84protected RBFinger<T> FindIndex(int index, bool exists = true) 86RBFinger<T> result; 114protected RBFinger<T> Find(T x, Comparison<T> comparison) 116RBFinger<T> result; 151protected RBFinger<T> BoundedSearch(T x, int low, int high, Comparison<T> comparison) 153RBFinger<T> result; 254protected RBFinger<T> LocateItem(RBFinger<T> finger, Comparison<T> comparison) 293RBFinger<T> newFinger = startingNode.LeftChild.Find(x, comparison); 308protected void ReInsert(ref RBFinger<T> oldFinger, RBFinger<T> newFinger) 360protected void RemoveAt(ref RBFinger<T> finger)
MS\Internal\Data\RBTree.cs (27)
69public RBFinger<T> BoundedSearch(T x, int low, int high) 76RBFinger<T> finger = Find(x, Comparison); 80void Insert(RBFinger<T> finger, T x, bool checkSort = false) 139RBFinger<T> low = FindIndex(0, false); 140RBFinger<T> high = FindIndex(Count, false); 174void QuickSort3(RBFinger<T> low, RBFinger<T> high) 213RBFinger<T> greenL = low, red = low + 1, blue = high - 1, greenR = high; 217RBFinger<T> mid = FindIndex((low.Index + high.Index) / 2); 300RBFinger<T> left = red, right = blue; 326RBFinger<T> f = right - 1; 389void Trade(RBFinger<T> left, RBFinger<T> mid, RBFinger<T> right) 400void Exchange(RBFinger<T> f1, RBFinger<T> f2) 409RBFinger<T> finger = FindIndex(1); 412RBFinger<T> fingerL = LocateItem(finger, Comparison); 458RBFinger<T> finger = Find(item, Comparison); 491RBFinger<T> finger = FindIndex(index, false); 502RBFinger<T> finger = FindIndex(index, true); 515RBFinger<T> finger = FindIndex(index); 521RBFinger<T> finger = FindIndex(index); 564RBFinger<T> finger = Find(item, Comparison); 594RBFinger<T> finger = Find(item, Comparison); 604RBFinger<T> finger = FindIndex(0); 614RBFinger<T> finger = FindIndex(0);