LibJuno 0.42.0
LibJuno is a lightweight C99 library designed specifically for embedded systems.
Loading...
Searching...
No Matches
buff_stack_api.h File Reference
#include "juno/macros.h"
#include "juno/status.h"
#include "juno/module.h"
#include "juno/types.h"
Include dependency graph for buff_stack_api.h:

Go to the source code of this file.

Typedefs

typedef struct JUNO_BUFF_STACK_ROOT_TAG JUNO_BUFF_STACK_ROOT_T
 The buffer stack root module.
 
typedef union JUNO_BUFF_STACK_T JUNO_BUFF_STACK_T
 The buffer stack.
 

Functions

struct JUNO_BUFF_STACK_ROOT_TAG JUNO_MODULE_ROOT (void, size_t zLength;size_t zCapacity;)
 
static JUNO_STATUS_T JunoBuff_StackInit (JUNO_BUFF_STACK_T *ptStack, size_t zCapacity, JUNO_FAILURE_HANDLER_T pfcnFailureHdlr, JUNO_USER_DATA_T *pvFailureUserData)
 Initialize a buffer stack.
 
static JUNO_RESULT_SIZE_T JunoBuff_StackPush (JUNO_BUFF_STACK_T *ptStack)
 
static JUNO_RESULT_SIZE_T JunoBuff_StackPop (JUNO_BUFF_STACK_T *ptStack)
 
static JUNO_RESULT_SIZE_T JunoBuff_StackPeek (JUNO_BUFF_STACK_T *ptStack)
 

Typedef Documentation

◆ JUNO_BUFF_STACK_ROOT_T

typedef struct JUNO_BUFF_STACK_ROOT_TAG JUNO_BUFF_STACK_ROOT_T

The buffer stack root module.

This API has been generated by LibJuno: https://www.robinonsay.com/libjuno/ This header contains the juno_buff_stack library API

Author
Robin Onsay

◆ JUNO_BUFF_STACK_T

The buffer stack.

Function Documentation

◆ JUNO_MODULE_ROOT()

struct JUNO_BUFF_STACK_ROOT_TAG JUNO_MODULE_ROOT ( void  ,
size_t zLength;size_t zCapacity;   
)

◆ JunoBuff_StackInit()

static JUNO_STATUS_T JunoBuff_StackInit ( JUNO_BUFF_STACK_T ptStack,
size_t  zCapacity,
JUNO_FAILURE_HANDLER_T  pfcnFailureHdlr,
JUNO_USER_DATA_T pvFailureUserData 
)
inlinestatic

Initialize a buffer stack.

◆ JunoBuff_StackPeek()

static JUNO_RESULT_SIZE_T JunoBuff_StackPeek ( JUNO_BUFF_STACK_T ptStack)
inlinestatic

Peek at an item on the stack

Returns
The index of the next item

◆ JunoBuff_StackPop()

static JUNO_RESULT_SIZE_T JunoBuff_StackPop ( JUNO_BUFF_STACK_T ptStack)
inlinestatic

Pop an item from the stack

Returns
an index of the popped item

◆ JunoBuff_StackPush()

static JUNO_RESULT_SIZE_T JunoBuff_StackPush ( JUNO_BUFF_STACK_T ptStack)
inlinestatic

Push an item onto the stack

Returns
an index to write the pushed item to