xref: /openbmc/linux/tools/lib/bpf/strset.h (revision 8be98d2f2a0a262f8bf8a0bc1fdf522b3c7aab17)
1*90d76d3eSAndrii Nakryiko /* SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) */
2*90d76d3eSAndrii Nakryiko 
3*90d76d3eSAndrii Nakryiko /* Copyright (c) 2021 Facebook */
4*90d76d3eSAndrii Nakryiko #ifndef __LIBBPF_STRSET_H
5*90d76d3eSAndrii Nakryiko #define __LIBBPF_STRSET_H
6*90d76d3eSAndrii Nakryiko 
7*90d76d3eSAndrii Nakryiko #include <stdbool.h>
8*90d76d3eSAndrii Nakryiko #include <stddef.h>
9*90d76d3eSAndrii Nakryiko 
10*90d76d3eSAndrii Nakryiko struct strset;
11*90d76d3eSAndrii Nakryiko 
12*90d76d3eSAndrii Nakryiko struct strset *strset__new(size_t max_data_sz, const char *init_data, size_t init_data_sz);
13*90d76d3eSAndrii Nakryiko void strset__free(struct strset *set);
14*90d76d3eSAndrii Nakryiko 
15*90d76d3eSAndrii Nakryiko const char *strset__data(const struct strset *set);
16*90d76d3eSAndrii Nakryiko size_t strset__data_size(const struct strset *set);
17*90d76d3eSAndrii Nakryiko 
18*90d76d3eSAndrii Nakryiko int strset__find_str(struct strset *set, const char *s);
19*90d76d3eSAndrii Nakryiko int strset__add_str(struct strset *set, const char *s);
20*90d76d3eSAndrii Nakryiko 
21*90d76d3eSAndrii Nakryiko #endif /* __LIBBPF_STRSET_H */
22