1#ifndef __TINYHASH_SC_TABLE_H__
2#define __TINYHASH_SC_TABLE_H__
th_iterator_t * th_sc_iterator_begin(th_generic_table_t generic_table, bool is_begin)
Return a new iterator.
bool th_sc_table_delete(th_generic_table_t table, th_any_t data, size_t data_size)
Delete a key value pair in an separate chaining table. Return true on success.
int th_sc_table_len(th_generic_table_t generic_table)
Returns the table length.
void th_sc_table_init(th_sc_table_t *table)
Initialize a separate chaining table.
void th_sc_table_free(th_generic_table_t table)
Free an separate chaining table.
th_generic_table_t th_sc_table_create()
Return an allocated separate chaining table.
th_any_t th_sc_table_get(th_generic_table_t table, th_any_t data, size_t data_size)
Get a value from an separate chaining table. Return NULL if it does exist.
bool th_sc_table_put(th_generic_table_t table, th_any_t data, size_t data_size, th_any_t value)
Insert a value within an separate chaining table. Return true on success.
Represents an iterator that allow to iterate over a generic table.
Represents a separate chaining entry.
Represent a separate chaining table.
void * th_generic_table_t
Represents any table.
void * th_any_t
Represent any type of data.