LibGimbal  1.0.0
Ultimate C17/C++20 Cross-Language Runtime Framework and Meta Type System
gimbal_vector.h File Reference

GblVector structure and related functions. More...

Go to the source code of this file.

Data Structures

struct  GblVector
 Contiguous array based abstract list container with C++-style STL API. More...
 

Macros

#define GblVector_construct(...)
 
#define GblVector_alloca(...)
 

Functions

GBL_RESULT GblVector_construct_6 (GblVector *pSelf, uint16_t elementSize, GblSize elementCount, const void *pInitialData, GblSize structSize, GblContext *pCtx)
 
static GBL_RESULT GblVector_construct_5 (GblVector *pSelf, uint16_t elementSize, GblSize elementCount, const void *pInitialData, GblSize structSize)
 
static GBL_RESULT GblVector_construct_4 (GblVector *pSelf, uint16_t elementSize, GblSize elementCount, const void *pInitialData)
 
static GBL_RESULT GblVector_construct_3 (GblVector *pSelf, uint16_t elementSize, GblSize elementCount)
 
static GBL_RESULT GblVector_construct_2 (GblVector *pSelf, uint16_t elementSize)
 
GBL_RESULT GblVector_destruct (GblVector *pSelf)
 
GBL_RESULT GblVector_assign (GblVector *pSelf, const void *pData, GblSize elementCount)
 
GBL_RESULT GblVector_release (GblVector *pSelf, void **ppVecPtr, GblSize *pSize, GblSize *pCapacity)
 
GBL_RESULT GblVector_acquire (GblVector *pSelf, void *pData, GblSize size, GblSize capacity)
 
static GblContextGblVector_context (const GblVector *pSelf)
 
static uint16_t GblVector_stackBytes (const GblVector *pSelf)
 
static void * GblVector_stackBuffer (const GblVector *pSelf)
 
static GblSize GblVector_size (const GblVector *pSelf)
 
static GblSize GblVector_capacity (const GblVector *pSelf)
 
static uint16_t GblVector_elementSize (const GblVector *pSelf)
 
static void * GblVector_data (const GblVector *pSelf)
 
static GblBool GblVector_empty (const GblVector *pSelf)
 
static GblBool GblVector_stack (const GblVector *pSelf)
 
static void * GblVector_at (const GblVector *pSelf, GblSize index)
 
static void * GblVector_front (const GblVector *pSelf)
 
static void * GblVector_back (const GblVector *pSelf)
 
void * GblVector_insert (GblVector *pSelf, GblSize index, GblSize count, const void *pData)
 
static GBL_RESULT GblVector_pushFront (GblVector *pSelf, const void *pData)
 
static GBL_RESULT GblVector_pushBack (GblVector *pSelf, const void *pData)
 
GBL_RESULT GblVector_append (GblVector *pSelf, const void *pData, GblSize elementCount)
 
GBL_RESULT GblVector_prepend (GblVector *pSelf, const void *pData, GblSize elementCount)
 
GBL_RESULT GblVector_popFront (GblVector *pSelf, void *pOut)
 
GBL_RESULT GblVector_popBack (GblVector *pSelf, void *pOut)
 
GBL_RESULT GblVector_erase (GblVector *pSelf, GblSize begin, GblSize count)
 
GBL_RESULT GblVector_clear (GblVector *pSelf)
 
GBL_RESULT GblVector_reserve (GblVector *pSelf, GblSize capacity)
 
GBL_RESULT GblVector_resize (GblVector *pSelf, GblSize size)
 
GBL_RESULT GblVector_shrinkToFit (GblVector *pSelf)
 
static GblVectorGblVector_createInPlace (GblVector *pSelf, uint16_t elementSize, GblSize elementCount, const void *pInitialData, GblSize structSize, GblContext *pCtx)