20 instantiations of RBFinger
PresentationFramework (20)
MS\Internal\Data\LiveShapingBlock.cs (5)
65return new RBFinger<LiveShapingItem>() { Node = this, Offset = offset, Index = baseIndex + offset, Found = true }; 114oldFinger = new RBFinger<LiveShapingItem>() { Node = this, Offset = index, Index = baseIndex + index, Found = true }; 216return new RBFinger<LiveShapingItem>() { Node = this, Offset = k, Index = index + k }; 353return new RBFinger<LiveShapingItem>() { Node = foundBlock, Offset = offset, Index = baseIndex + offset }; 434return new RBFinger<LiveShapingItem>() { Node = foundBlock, Offset = offset, Index = baseIndex + offset };
MS\Internal\Data\RBNode.cs (15)
95result = new RBFinger<T>() { Node = this, Offset = 0, Index = 0, Found = false }; 103result = new RBFinger<T>() { Node = this, Offset = index - LeftSize, Index = index, Found = true }; 108result = new RBFinger<T>() { Node = this, Offset = Size, Index = LeftSize + Size, Found = false }; 126result = new RBFinger<T>() { Node = this, Offset = 0, Index = 0, Found = (compL == 0) }; 131result = new RBFinger<T>() { Node = this, Offset = 0, Index = LeftSize, Found = true }; 138result = new RBFinger<T>() { Node = this, Offset = offset, Index = LeftSize + offset, Found = found }; 143result = new RBFinger<T>() { Node = this, Offset = Size, Index = LeftSize + Size }; 180result = new RBFinger<T>() { Node = this, Offset = left, Index = left, Found = (compL == 0) }; 185result = new RBFinger<T>() { Node = this, Offset = 0, Index = LeftSize, Found = true }; 211result = new RBFinger<T>() { Node = this, Offset = right, Index = LeftSize + right, Found = false }; 224result = new RBFinger<T>() { Node = this, Offset = offset, Index = LeftSize + offset, Found = found }; 268return new RBFinger<T>() { Node = startingNode, Offset = k + 1, Index = nodeIndex + k + 1 }; 286return new RBFinger<T>() { Node = parent, Offset = offset, Index = nodeIndex + offset }; 299newFinger = new RBFinger<T>() { Node = newFinger.Node.GetSuccessor(), Offset = 0, Index = newFinger.Index }; 303return new RBFinger<T>() { Node = startingNode, Offset = 0, Index = nodeIndex };
70 references to RBFinger
PresentationFramework (70)
MS\Internal\Data\LiveShapingBlock.cs (6)
60internal RBFinger<LiveShapingItem> GetFinger(LiveShapingItem lsi) 71internal void FindPosition(LiveShapingItem item, out RBFinger<LiveShapingItem> oldFinger, out RBFinger<LiveShapingItem> newFinger, Comparison<LiveShapingItem> comparison) 186RBFinger<LiveShapingItem> LocalSearch(LiveShapingItem item, int left, int right, Comparison<LiveShapingItem> comparison) 277RBFinger<LiveShapingItem> SearchLeft(LiveShapingItem item, int offset, Comparison<LiveShapingItem> comparison) 358RBFinger<LiveShapingItem> SearchRight(LiveShapingItem item, int offset, Comparison<LiveShapingItem> comparison)
MS\Internal\Data\LiveShapingItem.cs (3)
76internal void FindPosition(out RBFinger<LiveShapingItem> oldFinger, out RBFinger<LiveShapingItem> newFinger, Comparison<LiveShapingItem> comparison) 81internal RBFinger<LiveShapingItem> GetFinger()
MS\Internal\Data\LiveShapingList.cs (1)
234RBFinger<LiveShapingItem> finger = _root.BoundedSearch(temp, index, index + count);
MS\Internal\Data\LiveShapingTree.cs (7)
52RBFinger<LiveShapingItem> finger = FindIndex(0); 61RBFinger<LiveShapingItem> fingerL = LocateItem(finger, Comparison); 81RBFinger<LiveShapingItem> oldFinger, newFinger; 90RBFinger<LiveShapingItem> finger = FindIndex(index); 99RBFinger<LiveShapingItem> finger = FindIndex(0); 111RBFinger<LiveShapingItem> finger = lsi.GetFinger(); 123RBFinger<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)
88protected RBFinger<T> FindIndex(int index, bool exists = true) 90RBFinger<T> result; 118protected RBFinger<T> Find(T x, Comparison<T> comparison) 120RBFinger<T> result; 155protected RBFinger<T> BoundedSearch(T x, int low, int high, Comparison<T> comparison) 157RBFinger<T> result; 258protected RBFinger<T> LocateItem(RBFinger<T> finger, Comparison<T> comparison) 297RBFinger<T> newFinger = startingNode.LeftChild.Find(x, comparison); 312protected void ReInsert(ref RBFinger<T> oldFinger, RBFinger<T> newFinger) 364protected void RemoveAt(ref RBFinger<T> finger)
MS\Internal\Data\RBTree.cs (27)
73public RBFinger<T> BoundedSearch(T x, int low, int high) 80RBFinger<T> finger = Find(x, Comparison); 84void Insert(RBFinger<T> finger, T x, bool checkSort = false) 143RBFinger<T> low = FindIndex(0, false); 144RBFinger<T> high = FindIndex(Count, false); 178void QuickSort3(RBFinger<T> low, RBFinger<T> high) 220RBFinger<T> greenL = low, red = low + 1, blue = high - 1, greenR = high; 224RBFinger<T> mid = FindIndex((low.Index + high.Index) / 2); 307RBFinger<T> left = red, right = blue; 333RBFinger<T> f = right - 1; 396void Trade(RBFinger<T> left, RBFinger<T> mid, RBFinger<T> right) 407void Exchange(RBFinger<T> f1, RBFinger<T> f2) 416RBFinger<T> finger = FindIndex(1); 419RBFinger<T> fingerL = LocateItem(finger, Comparison); 465RBFinger<T> finger = Find(item, Comparison); 498RBFinger<T> finger = FindIndex(index, false); 509RBFinger<T> finger = FindIndex(index, true); 522RBFinger<T> finger = FindIndex(index); 528RBFinger<T> finger = FindIndex(index); 571RBFinger<T> finger = Find(item, Comparison); 601RBFinger<T> finger = Find(item, Comparison); 611RBFinger<T> finger = FindIndex(0); 621RBFinger<T> finger = FindIndex(0);