Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ MoveUpCustomComparer()

void System.Collections.Generic.PriorityQueue< TElement, TPriority >.MoveUpCustomComparer ( (TElement Element, TPriority Priority) node,
int nodeIndex )
inlineprivate

Definition at line 491 of file PriorityQueue.cs.

492 {
493 IComparer<TPriority> comparer = _comparer;
494 (TElement, TPriority)[] nodes = _nodes;
495 while (nodeIndex > 0)
496 {
497 int parentIndex = GetParentIndex(nodeIndex);
498 (TElement, TPriority) tuple = nodes[parentIndex];
499 if (comparer.Compare(node.Priority, tuple.Item2) >= 0)
500 {
501 break;
502 }
503 nodes[nodeIndex] = tuple;
504 nodeIndex = parentIndex;
505 }
506 nodes[nodeIndex] = node;
507 }
readonly IComparer< TPriority > _comparer
TElement TPriority Priority[] _nodes

References System.Collections.Generic.PriorityQueue< TElement, TPriority >._comparer, System.Collections.Generic.PriorityQueue< TElement, TPriority >._nodes, System.comparer, and System.Collections.Generic.PriorityQueue< TElement, TPriority >.GetParentIndex().

Referenced by System.Collections.Generic.PriorityQueue< TElement, TPriority >.Enqueue().