summaryrefslogtreecommitdiffstats
path: root/src/ref.h
blob: c121294b947a18051e51ddcf6d63c05e91cc646a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#pragma once

#include "list.h"

struct ref {
	void *data;

	struct list_link link;
};

struct ref *ref_alloc(void *data);
void ref_free(void *ref);

void refs_free(struct list *list);
int refs_index(struct list *list, void *data);

struct list_link *refs_find(struct list *list, void *data);
int refs_incl(struct list *list, void *data);

void refs_rm(struct list *list, void *data);