1#ifndef INTERNAL_SET_TABLE_H
2#define INTERNAL_SET_TABLE_H
8typedef struct set_table_entry set_table_entry;
12 unsigned char entry_power, bin_power, size_ind;
14 unsigned int rebuilds_num;
17 st_index_t num_entries;
22 st_index_t entries_start, entries_bound;
33typedef int set_foreach_callback_func(st_data_t, st_data_t);
34typedef int set_foreach_check_callback_func(st_data_t, st_data_t,
int);
35typedef int set_update_callback_func(st_data_t *key, st_data_t arg,
int existing);
37#define set_table_size rb_set_table_size
38size_t rb_set_table_size(
const struct set_table *tbl);
39#define set_init_table_with_size rb_set_init_table_with_size
41#define set_init_numtable rb_set_init_numtable
43#define set_init_numtable_with_size rb_set_init_numtable_with_size
44set_table *rb_set_init_numtable_with_size(st_index_t size);
45#define set_init_embedded_numtable_with_size rb_set_init_embedded_numtable_with_size
46set_table *rb_set_init_embedded_numtable_with_size(
struct set_table *tbl, st_index_t size);
47#define set_table_delete rb_set_table_delete
48int rb_set_table_delete(
set_table *, st_data_t *);
49#define set_insert rb_set_insert
51#define set_table_lookup rb_set_table_lookup
52int rb_set_table_lookup(
set_table *, st_data_t);
53#define set_foreach_with_replace rb_set_foreach_with_replace
54int rb_set_foreach_with_replace(
set_table *tab, set_foreach_check_callback_func *func, set_update_callback_func *replace, st_data_t arg);
55#define set_table_foreach rb_set_table_foreach
56int rb_set_table_foreach(
set_table *, set_foreach_callback_func *, st_data_t);
57#define set_foreach_check rb_set_foreach_check
58int rb_set_foreach_check(
set_table *, set_foreach_check_callback_func *, st_data_t, st_data_t);
59#define set_keys rb_set_keys
60st_index_t rb_set_keys(
set_table *table, st_data_t *keys, st_index_t size);
61#define set_free_table rb_set_free_table
63#define set_free_embedded_table rb_set_free_embedded_table
64void set_free_embedded_table(
set_table *tab);
65#define set_table_clear rb_set_table_clear
67#define set_copy rb_set_copy
69#define set_memsize rb_set_memsize
70PUREFUNC(
size_t rb_set_memsize(
const set_table *));
71#define set_compact_table rb_set_compact_table
set_table_entry * entries
Array of size 2^entry_power.