aboutsummaryrefslogtreecommitdiff
path: root/src/iset.h
blob: acc8f14bc14f38320893eab7d9e782b171798b71 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#pragma once
#include <stdbool.h>
#include <stdint.h>
#include <stddef.h>


typedef struct prne_iset prne_iset_t;
typedef uintptr_t prne_iset_val_t;

struct prne_iset {
	prne_iset_val_t *arr;
	size_t size;
};


void prne_init_iset (prne_iset_t *s);
void prne_free_iset (prne_iset_t *s);

void prne_iset_clear (prne_iset_t *s);
bool prne_iset_insert (prne_iset_t *s, const prne_iset_val_t v);
void prne_iset_erase (prne_iset_t *s, const prne_iset_val_t v);
bool prne_iset_lookup (prne_iset_t *s, const prne_iset_val_t v);