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

◆ RemoveRootNode()

void System.Collections.Generic.PriorityQueue< TElement, TPriority >.RemoveRootNode ( )
inlineprivate

Definition at line 422 of file PriorityQueue.cs.

423 {
424 int num = --_size;
425 _version++;
426 if (num > 0)
427 {
428 (TElement, TPriority) node = _nodes[num];
429 if (_comparer == null)
430 {
432 }
433 else
434 {
435 MoveDownCustomComparer(node, 0);
436 }
437 }
438 if (RuntimeHelpers.IsReferenceOrContainsReferences<(TElement, TPriority)>())
439 {
440 _nodes[num] = default((TElement, TPriority));
441 }
442 }
readonly IComparer< TPriority > _comparer
void MoveDownDefaultComparer((TElement Element, TPriority Priority) node, int nodeIndex)
TElement TPriority Priority[] _nodes
void MoveDownCustomComparer((TElement Element, TPriority Priority) node, int nodeIndex)

References System.Collections.Generic.PriorityQueue< TElement, TPriority >._comparer, System.Collections.Generic.PriorityQueue< TElement, TPriority >._nodes, System.Collections.Generic.PriorityQueue< TElement, TPriority >._size, System.Collections.Generic.PriorityQueue< TElement, TPriority >._version, System.Collections.Generic.PriorityQueue< TElement, TPriority >.MoveDownCustomComparer(), and System.Collections.Generic.PriorityQueue< TElement, TPriority >.MoveDownDefaultComparer().

Referenced by System.Collections.Generic.PriorityQueue< TElement, TPriority >.Dequeue(), and System.Collections.Generic.PriorityQueue< TElement, TPriority >.TryDequeue().