123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174 |
- #ifndef __LIST_SLST_H__
- #define __LIST_SLST_H__
- #ifdef __cplusplus
- extern "C" {
- #endif
- typedef enum list_slst_enum_snod_def {
- list_slst_enum_snod_lin = 0,
- list_slst_enum_snod_cir,
- } list_snod_e;
- typedef struct list_slst_stru_snod_def {
- struct list_slst_stru_snod_def* next;
- } list_snod_t;
- typedef struct list_slst_stru_slst_def {
- list_snod_t* head;
- list_snod_t* tail;
- list_snod_t* iter;
- unsigned int coun;
- } list_slst_t;
- typedef struct list_slst_stru_sque_def {
- list_slst_t list;
- list_snod_t* post;
- list_snod_t* pend;
- unsigned int coun;
- } list_sque_t;
- signed int
- list_snod_ini(list_snod_t* snod, list_snod_e type);
- signed int
- list_slst_ini(list_slst_t* slst);
- signed int
- list_slst_add(list_slst_t* slst, list_snod_t* snod);
- signed int
- list_slst_rmv(list_slst_t* slst, list_snod_t* snod);
- signed int
- list_slst_has(list_slst_t* slst, const list_snod_t* snod);
- signed int
- list_slst_emu(list_slst_t* slst);
- list_snod_t*
- list_slst_nxt(list_slst_t* slst);
- signed int
- list_sque_ini(list_sque_t* sque);
- signed int
- list_sque_fsh(list_sque_t* sque);
- signed int
- list_sque_pop(list_sque_t* sque, void* data, unsigned int size);
- signed int
- list_sque_psh(list_sque_t* sque, void* data, unsigned int size);
- #ifdef __cplusplus
- }
- #endif
- #endif
|