2018-06-15 20:38:19 -07:00
|
|
|
#ifndef LIBABACUS_FREE_FUNCTIONS_H
|
|
|
|
#define LIBABACUS_FREE_FUNCTIONS_H
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Free functions. Because a lot of the reference
|
|
|
|
* counting operations require free functions,
|
|
|
|
* and redeclaring them in mutliple files makes no
|
|
|
|
* sense (also, it doesn't link :^) ), we
|
|
|
|
* put them all here.
|
|
|
|
*/
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Frees a libab_function.
|
|
|
|
* @param func the function to free.
|
|
|
|
*/
|
2018-06-17 19:43:18 -07:00
|
|
|
void libab_free_function(void* func);
|
2018-06-15 20:38:19 -07:00
|
|
|
/**
|
|
|
|
* Frees a libab_function_list.
|
|
|
|
* @param func_list the function list to free.
|
|
|
|
*/
|
2018-06-17 19:43:18 -07:00
|
|
|
void libab_free_function_list(void* func_list);
|
2018-06-15 20:38:19 -07:00
|
|
|
/**
|
|
|
|
* Frees a unit. This is a no-op.
|
|
|
|
* @param unit the unit to free.
|
|
|
|
*/
|
2018-06-17 19:43:18 -07:00
|
|
|
void libab_free_unit(void* unit);
|
2018-06-15 20:38:19 -07:00
|
|
|
/**
|
|
|
|
* Frees a parsetype.
|
|
|
|
* @param parsetype the parsetype to free.
|
|
|
|
*/
|
2018-06-17 19:43:18 -07:00
|
|
|
void libab_free_parsetype(void* parsetype);
|
2018-06-15 20:38:19 -07:00
|
|
|
/**
|
|
|
|
* Frees a table.
|
|
|
|
* @param table the table to free.
|
|
|
|
*/
|
2018-06-17 19:43:18 -07:00
|
|
|
void libab_free_table(void* table);
|
2018-06-15 20:38:19 -07:00
|
|
|
/**
|
|
|
|
* Frees a value.
|
|
|
|
* @param value the value to free.
|
|
|
|
*/
|
2018-06-17 19:43:18 -07:00
|
|
|
void libab_free_value(void* value);
|
2018-06-15 20:38:19 -07:00
|
|
|
|
|
|
|
#endif
|