20 instantiations of RBFinger
PresentationFramework (20)
MS\Internal\Data\LiveShapingBlock.cs (5)
59return new RBFinger<LiveShapingItem>() { Node = this, Offset = offset, Index = baseIndex + offset, Found = true }; 108oldFinger = new RBFinger<LiveShapingItem>() { Node = this, Offset = index, Index = baseIndex + index, Found = true }; 210return new RBFinger<LiveShapingItem>() { Node = this, Offset = k, Index = index + k }; 347return new RBFinger<LiveShapingItem>() { Node = foundBlock, Offset = offset, Index = baseIndex + offset }; 428return new RBFinger<LiveShapingItem>() { Node = foundBlock, Offset = offset, Index = baseIndex + offset };
MS\Internal\Data\RBNode.cs (15)
90result = new RBFinger<T>() { Node = this, Offset = 0, Index = 0, Found = false }; 98result = new RBFinger<T>() { Node = this, Offset = index - LeftSize, Index = index, Found = true }; 103result = new RBFinger<T>() { Node = this, Offset = Size, Index = LeftSize + Size, Found = false }; 121result = new RBFinger<T>() { Node = this, Offset = 0, Index = 0, Found = (compL == 0) }; 126result = new RBFinger<T>() { Node = this, Offset = 0, Index = LeftSize, Found = true }; 133result = new RBFinger<T>() { Node = this, Offset = offset, Index = LeftSize + offset, Found = found }; 138result = new RBFinger<T>() { Node = this, Offset = Size, Index = LeftSize + Size }; 175result = new RBFinger<T>() { Node = this, Offset = left, Index = left, Found = (compL == 0) }; 180result = new RBFinger<T>() { Node = this, Offset = 0, Index = LeftSize, Found = true }; 206result = new RBFinger<T>() { Node = this, Offset = right, Index = LeftSize + right, Found = false }; 219result = new RBFinger<T>() { Node = this, Offset = offset, Index = LeftSize + offset, Found = found }; 263return new RBFinger<T>() { Node = startingNode, Offset = k + 1, Index = nodeIndex + k + 1 }; 281return new RBFinger<T>() { Node = parent, Offset = offset, Index = nodeIndex + offset }; 294newFinger = new RBFinger<T>() { Node = newFinger.Node.GetSuccessor(), Offset = 0, Index = newFinger.Index }; 298return new RBFinger<T>() { Node = startingNode, Offset = 0, Index = nodeIndex };
70 references to RBFinger
PresentationFramework (70)
MS\Internal\Data\LiveShapingBlock.cs (6)
54internal RBFinger<LiveShapingItem> GetFinger(LiveShapingItem lsi) 65internal void FindPosition(LiveShapingItem item, out RBFinger<LiveShapingItem> oldFinger, out RBFinger<LiveShapingItem> newFinger, Comparison<LiveShapingItem> comparison) 180private RBFinger<LiveShapingItem> LocalSearch(LiveShapingItem item, int left, int right, Comparison<LiveShapingItem> comparison) 271private RBFinger<LiveShapingItem> SearchLeft(LiveShapingItem item, int offset, Comparison<LiveShapingItem> comparison) 352private RBFinger<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)
229RBFinger<LiveShapingItem> finger = _root.BoundedSearch(temp, index, index + count);
MS\Internal\Data\LiveShapingTree.cs (7)
51RBFinger<LiveShapingItem> finger = FindIndex(0); 60RBFinger<LiveShapingItem> fingerL = LocateItem(finger, Comparison); 80RBFinger<LiveShapingItem> oldFinger, newFinger; 89RBFinger<LiveShapingItem> finger = FindIndex(index); 98RBFinger<LiveShapingItem> finger = FindIndex(0); 110RBFinger<LiveShapingItem> finger = lsi.GetFinger(); 122RBFinger<LiveShapingItem> finger = lsi.GetFinger();
MS\Internal\Data\RBFinger.cs (14)
20public static RBFinger<T> operator +(RBFinger<T> finger, int delta) 29public static RBFinger<T> operator -(RBFinger<T> finger, int delta) 34public static int operator -(RBFinger<T> f1, RBFinger<T> f2) 39public static RBFinger<T> operator ++(RBFinger<T> finger) 51public static RBFinger<T> operator --(RBFinger<T> finger) 64public static bool operator <(RBFinger<T> f1, RBFinger<T> f2) 69public static bool operator >(RBFinger<T> f1, RBFinger<T> f2)
MS\Internal\Data\RBNode.cs (12)
83protected RBFinger<T> FindIndex(int index, bool exists = true) 85RBFinger<T> result; 113protected RBFinger<T> Find(T x, Comparison<T> comparison) 115RBFinger<T> result; 150protected RBFinger<T> BoundedSearch(T x, int low, int high, Comparison<T> comparison) 152RBFinger<T> result; 253protected RBFinger<T> LocateItem(RBFinger<T> finger, Comparison<T> comparison) 292RBFinger<T> newFinger = startingNode.LeftChild.Find(x, comparison); 307protected void ReInsert(ref RBFinger<T> oldFinger, RBFinger<T> newFinger) 359protected void RemoveAt(ref RBFinger<T> finger)
MS\Internal\Data\RBTree.cs (27)
68public RBFinger<T> BoundedSearch(T x, int low, int high) 75RBFinger<T> finger = Find(x, Comparison); 79private void Insert(RBFinger<T> finger, T x, bool checkSort = false) 138RBFinger<T> low = FindIndex(0, false); 139RBFinger<T> high = FindIndex(Count, false); 173private void QuickSort3(RBFinger<T> low, RBFinger<T> high) 212RBFinger<T> greenL = low, red = low + 1, blue = high - 1, greenR = high; 216RBFinger<T> mid = FindIndex((low.Index + high.Index) / 2); 299RBFinger<T> left = red, right = blue; 325RBFinger<T> f = right - 1; 388private void Trade(RBFinger<T> left, RBFinger<T> mid, RBFinger<T> right) 399private void Exchange(RBFinger<T> f1, RBFinger<T> f2) 408RBFinger<T> finger = FindIndex(1); 411RBFinger<T> fingerL = LocateItem(finger, Comparison); 457RBFinger<T> finger = Find(item, Comparison); 490RBFinger<T> finger = FindIndex(index, false); 501RBFinger<T> finger = FindIndex(index, true); 514RBFinger<T> finger = FindIndex(index); 520RBFinger<T> finger = FindIndex(index); 563RBFinger<T> finger = Find(item, Comparison); 593RBFinger<T> finger = Find(item, Comparison); 603RBFinger<T> finger = FindIndex(0); 613RBFinger<T> finger = FindIndex(0);