| 135 | } |
| 136 | |
| 137 | void priorityqueue_pop(struct priorityqueue *q) { |
| 138 | if (q->heapsize == 0) return; |
| 139 | |
| 140 | const u32 top = priorityqueue_top(q); |
| 141 | assert(q->heapptr[top] == q->base); |
| 142 | |
| 143 | global_priorityqueue = q; |
| 144 | gheap_pop_heap(&q->gheap_ctx, q->base, q->heapsize--); |
| 145 | global_priorityqueue = NULL; |
| 146 | q->heapptr[top] = NULL; |
| 147 | } |
| 148 | |
| 149 | const s64 *priorityqueue_value(const struct priorityqueue *q) { |
| 150 | return q->value; |