LibJuno 1.0.1
LibJuno is a lightweight C11 library designed specifically for embedded systems.
Loading...
Searching...
No Matches
JUNO_DS_HEAP_API_TAG Struct Reference

Heap API vtable. More...

#include <heap_api.h>

Data Fields

JUNO_STATUS_T(* Insert )(JUNO_DS_HEAP_ROOT_T *ptHeap, JUNO_POINTER_T tValue)
 Insert a new element into the heap.
 
JUNO_STATUS_T(* Heapify )(JUNO_DS_HEAP_ROOT_T *ptHeap)
 Transform the underlying array into a heap in-place.
 
JUNO_STATUS_T(* Pop )(JUNO_DS_HEAP_ROOT_T *ptHeap, JUNO_POINTER_T tReturn)
 Pop the root element (extreme) into tReturn.
 

Detailed Description

Heap API vtable.

Field Documentation

◆ Heapify

JUNO_STATUS_T(* JUNO_DS_HEAP_API_TAG::Heapify) (JUNO_DS_HEAP_ROOT_T *ptHeap)

Transform the underlying array into a heap in-place.

◆ Insert

JUNO_STATUS_T(* JUNO_DS_HEAP_API_TAG::Insert) (JUNO_DS_HEAP_ROOT_T *ptHeap, JUNO_POINTER_T tValue)

Insert a new element into the heap.

Copies tValue into the slot at index zLength, increments zLength, and bubbles the element up to restore the heap property.

◆ Pop

JUNO_STATUS_T(* JUNO_DS_HEAP_API_TAG::Pop) (JUNO_DS_HEAP_ROOT_T *ptHeap, JUNO_POINTER_T tReturn)

Pop the root element (extreme) into tReturn.


The documentation for this struct was generated from the following file: