/** * @file list.c * @author myusgun */ #include "cf_list.h" #include "cf_debug.h" int main (void) { long long int iter = 0; int result = 0; long long int element = 0; CF_List_Ctx ctx = NULL; CF_Traverser trav = NULL; result = CF_List_CreateCtx (&ctx); if (result < 0) CF_DEBUG_PRINT (stderr, "error %d\n", result); for (iter = 0 ; iter < 10 ; iter++) { result = CF_List_Insert (ctx, trav, CF_DIRECTION_BEFORE, (void *)iter); if (result < 0) CF_DEBUG_PRINT (stderr, "error %d\n", result); } result = CF_List_Front (ctx, &trav); if (result < 0) CF_DEBUG_PRINT (stderr, "error %d\n", result); for (iter = 0 ; iter < 5 ; iter++) { result = CF_List_Next (&trav); if (result < 0) CF_DEBUG_PRINT (stderr, "error %d\n", result); } result = CF_List_Insert (ctx, trav, CF_DIRECTION_BEFORE, (void *)100); if (result < 0) CF_DEBUG_PRINT (stderr, "error %d\n", result); result = CF_List_Insert (ctx, trav, CF_DIRECTION_AFTER, (void *)200); if (result < 0) CF_DEBUG_PRINT (stderr, "error %d\n", result); for (CF_List_Front (ctx, &trav) ; trav != NULL ; CF_List_Next (&trav)) { result = CF_List_GetElement (trav, (void **)&element); if (result < 0) CF_DEBUG_PRINT (stderr, "error %d\n", result); CF_DEBUG_PRINT (stderr, "%d \n", element); } result = CF_List_DestroyCtx (ctx); if (result < 0) CF_DEBUG_PRINT (stderr, "error %d\n", result); return 0; }