Difference between pages "r6:Function:slist set user data in element" and "r6:Function:stack clear"
(Difference between pages)
Jump to navigation
Jump to search
m (1 revision imported) |
m (1 revision imported) |
||
Line 1: | Line 1: | ||
==Source Files== | ==Source Files== | ||
/src/ | /src/stack/stack_delete.c | ||
/inc/liblfds.h | /inc/liblfds.h | ||
==Prototype== | ==Prototype== | ||
void stack_clear( struct stack_state *ss, | |||
void (*user_data_clear_function)(void *user_data, void *user_state), | |||
void *user_state ); | |||
==Parameters== | ==Parameters== | ||
''struct | ''struct stack_state *ss'' | ||
: A | : A stack state as allocated by ''[[r6:Function:stack_new|stack_new]]''. | ||
''void *user_data'' | ''void (*user_data_init_function)(void *user_data, void *user_state)'' | ||
: A void pointer | : A callback function, which can be NULL. This function is called with the user data void pointer from each element before that element is popped, giving the user an opportunity to delete any allocated state. | ||
''void *user_state'' | |||
: This pointer is passed into the ''user_data_init_function'' as its second argument, enabling the caller to pass state into the callback function. | |||
==Return Value== | ==Return Value== | ||
No return value. | |||
==Notes== | ==Notes== | ||
This function | This function empties the stack, popping every element. Each element, after being popped, is passed to ''user_data_clear_function''. | ||
==See Also== | ==See Also== | ||
* [[r6:API: | * [[r6:API:Stack|Stack]] | ||
Latest revision as of 14:07, 4 January 2015
Source Files
/src/stack/stack_delete.c /inc/liblfds.h
Prototype
void stack_clear( struct stack_state *ss, void (*user_data_clear_function)(void *user_data, void *user_state), void *user_state );
Parameters
struct stack_state *ss
- A stack state as allocated by stack_new.
void (*user_data_init_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 popped, giving the user an opportunity to delete any allocated state.
void *user_state
- This pointer is passed into the user_data_init_function as its second argument, enabling the caller to pass state into the callback function.
Return Value
No return value.
Notes
This function empties the stack, popping every element. Each element, after being popped, is passed to user_data_clear_function.