OLD | NEW |
| (Empty) |
1 /* | |
2 * Copyright (c) 2004-2010 Alex Pankratov. All rights reserved. | |
3 * | |
4 * Hierarchical memory allocator, 1.2.1 | |
5 * http://swapped.cc/halloc | |
6 */ | |
7 | |
8 /* | |
9 * The program is distributed under terms of BSD license. | |
10 * You can obtain the copy of the license by visiting: | |
11 * | |
12 * http://www.opensource.org/licenses/bsd-license.php | |
13 */ | |
14 | |
15 #ifndef _LIBP_HALLOC_H_ | |
16 #define _LIBP_HALLOC_H_ | |
17 | |
18 #include <stddef.h> /* size_t */ | |
19 | |
20 /* | |
21 * Core API | |
22 */ | |
23 void * halloc (void * block, size_t len); | |
24 void hattach(void * block, void * parent); | |
25 | |
26 /* | |
27 * standard malloc/free api | |
28 */ | |
29 void * h_malloc (size_t len); | |
30 void * h_calloc (size_t n, size_t len); | |
31 void * h_realloc(void * p, size_t len); | |
32 void h_free (void * p); | |
33 char * h_strdup (const char * str); | |
34 | |
35 /* | |
36 * the underlying allocator | |
37 */ | |
38 typedef void * (* realloc_t)(void * ptr, size_t len); | |
39 | |
40 extern realloc_t halloc_allocator; | |
41 | |
42 #endif | |
43 | |
OLD | NEW |