openHiTLS API openHiTLS 0.1.0-Alpha1
结构体 | 宏定义 | 类型定义 | 枚举 | 函数
Bsl_list

linked list 更多...

Bsl_list 的协作图:

结构体

struct  BslListNode
 
struct  BslList
 

宏定义

#define BSL_LIST_FREE(pList, pFreeFunc)
 
#define BSL_LIST_FREE_AFTER_SORT(pList)
 

类型定义

typedef struct BslListNode BslListNode
 
typedef struct BslList BslList
 
typedef int32_t(* BSL_LIST_PFUNC_CMP) (const void *, const void *)
 
typedef void(* BSL_LIST_PFUNC_FREE) (void *)
 
typedef void *(* BSL_LIST_PFUNC_DUP) (const void *)
 

枚举

enum  BslListPosition { BSL_LIST_POS_BEFORE , BSL_LIST_POS_AFTER , BSL_LIST_POS_BEGIN , BSL_LIST_POS_END }
 

函数

int32_t BSL_LIST_SetMaxElements (int32_t iMaxElements)
 
int32_t BSL_LIST_GetMaxElements (void)
 
int32_t BSL_LIST_AddElement (BslList *pList, void *pData, BslListPosition enPosition)
 
void BSL_LIST_DeleteAll (BslList *pList, BSL_LIST_PFUNC_FREE pfFreeFunc)
 
void BSL_LIST_DeleteCurrent (BslList *pList, BSL_LIST_PFUNC_FREE pfFreeFunc)
 
void BSL_LIST_DetachCurrent (BslList *pList)
 
void * BSL_LIST_Search (BslList *pList, const void *pSearchFor, BSL_LIST_PFUNC_CMP pSearcher, int32_t *pstErr)
 
void * BSL_LIST_GetIndexNode (uint32_t ulIndex, BslList *pList)
 
BslListBSL_LIST_Copy (BslList *pSrcList, BSL_LIST_PFUNC_DUP pFuncCpy, BSL_LIST_PFUNC_FREE pfFreeFunc)
 
BslListBSL_LIST_Sort (BslList *pList, BSL_LIST_PFUNC_CMP pfCmp)
 
BslListBSL_LIST_New (int32_t dataSize)
 
void * BSL_LIST_Curr (const BslList *pstList)
 
void * BSL_LIST_First (BslList *pstList)
 
void * BSL_LIST_Last (BslList *pstList)
 
void * BSL_LIST_Next (BslList *pstList)
 
void * BSL_LIST_Prev (BslList *pstList)
 
int32_t BSL_LIST_GetElmtIndex (const void *elmt, BslList *pstList)
 
BslListBSL_LIST_Concat (BslList *pDestList, const BslList *pSrcList)
 
void BSL_LIST_FreeWithoutData (BslList *pstList)
 
void BSL_LIST_RevList (BslList *pstList)
 
int32_t BSL_LIST_SetMaxQsortCount (uint32_t uiQsortSize)
 
uint32_t BSL_LIST_GetMaxQsortCount (void)
 
void BSL_LIST_DeleteAllAfterSort (BslList *pList)
 
BslListNodeBSL_LIST_FirstNode (const BslList *list)
 
void * BSL_LIST_GetData (const BslListNode *pstNode)
 
BslListNodeBSL_LIST_GetNextNode (const BslList *pstList, const BslListNode *pstListNode)
 
BslListNodeBSL_LIST_GetPrevNode (const BslListNode *pstListNode)
 
void BSL_LIST_DeleteNode (BslList *pstList, const BslListNode *pstListNode, BSL_LIST_PFUNC_FREE pfFreeFunc)
 
void BSL_LIST_DetachNode (BslList *pstList, BslListNode **pstListNode)
 

详细描述

linked list