Lines Matching refs:heap
72 ctx->heap = NULL; in heap_new()
85 if (ctx->heap != NULL) in heap_free()
86 free(ctx->heap); in heap_free()
97 new_heap = (void **)realloc(ctx->heap, in heap_resize()
103 ctx->heap = new_heap; in heap_resize()
112 i > 1 && ctx->higher_priority(elt, ctx->heap[p]); in float_up()
114 ctx->heap[i] = ctx->heap[p]; in float_up()
116 (ctx->index)(ctx->heap[i], i); in float_up()
118 ctx->heap[i] = elt; in float_up()
120 (ctx->index)(ctx->heap[i], i); in float_up()
132 if (j < size && ctx->higher_priority(ctx->heap[j+1], in sink_down()
133 ctx->heap[j])) in sink_down()
135 if (ctx->higher_priority(elt, ctx->heap[j])) in sink_down()
137 ctx->heap[i] = ctx->heap[j]; in sink_down()
139 (ctx->index)(ctx->heap[i], i); in sink_down()
142 ctx->heap[i] = elt; in sink_down()
144 (ctx->index)(ctx->heap[i], i); in sink_down()
178 elt = ctx->heap[ctx->heap_size--]; in heap_delete()
179 less = ctx->higher_priority(elt, ctx->heap[i]); in heap_delete()
180 ctx->heap[i] = elt; in heap_delete()
182 float_up(ctx, i, ctx->heap[i]); in heap_delete()
184 sink_down(ctx, i, ctx->heap[i]); in heap_delete()
197 float_up(ctx, i, ctx->heap[i]); in heap_increased()
209 sink_down(ctx, i, ctx->heap[i]); in heap_decreased()
221 return (ctx->heap[i]); in heap_element()
234 (action)(ctx->heap[i], uap); in heap_for_each()