r6.0.0:lfds600_freelist_delete
Jump to navigation
Jump to search
Source Files
/liblfds600/src/lfds600_freelist/lfds600_freelist_delete.c /liblfds600/inc/liblfds600.h
Prototype
void lfds600_freelist_delete( struct lfds600_freelist_state *fs, void (*user_data_delete_function)(void *user_data, void *user_state), void *user_state );
Parameters
struct lfds600_freelist_state *fs
- A freelist state as allocated by lfds600_freelist_new.
void (*user_data_delete_function)(void *user_data, void *user_state)
- A callback function, which can be NULL. This function is called with the user data void pointer from each element before that element is deleted, giving the user an opportunity to delete any allocated state.
void *user_state
- This pointer is passed into the user_data_delete_function as its second argument, enabling the caller to pass state into the callback function.
Return Value
No return value.
Notes
This function deletes the freelist. Any elements which have been popped and not returned to the freelist will be memory leaked when this function is called. As such, it is obviously necessary to ensure all elements are pushed onto the freelist before deleting the freelist.