1 /*
2  *  Copyright (C) 2019-2020 Scoopta
3  *  This file is part of Wofi
4  *  Wofi is free software: you can redistribute it and/or modify
5     it under the terms of the GNU General Public License as published by
6     the Free Software Foundation, either version 3 of the License, or
7     (at your option) any later version.
8 
9     Wofi is distributed in the hope that it will be useful,
10     but WITHOUT ANY WARRANTY; without even the implied warranty of
11     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12     GNU General Public License for more details.
13 
14     You should have received a copy of the GNU General Public License
15     along with Wofi.  If not, see <http://www.gnu.org/licenses/>.
16  */
17 
18 #ifndef MAP_H
19 #define MAP_H
20 
21 #include <stddef.h>
22 #include <stdbool.h>
23 
24 struct map* map_init(void);
25 
26 struct map* map_init_void(void);
27 
28 void map_free(struct map* map);
29 
30 bool map_put(struct map* map, const char* key, char* value);
31 
32 bool map_put_void(struct map* map, const char* key, void* value);
33 
34 void* map_get(struct map* map, const char* key);
35 
36 bool map_contains(struct map* map, const char* key);
37 
38 size_t map_size(struct map* map);
39 
40 #endif
41