Index: source/libvpx/third_party/nestegg/halloc/src/hlist.h |
=================================================================== |
--- source/libvpx/third_party/nestegg/halloc/src/hlist.h (revision 278778) |
+++ source/libvpx/third_party/nestegg/halloc/src/hlist.h (working copy) |
@@ -1,136 +0,0 @@ |
-/* |
- * Copyright (c) 2004-2010 Alex Pankratov. All rights reserved. |
- * |
- * Hierarchical memory allocator, 1.2.1 |
- * http://swapped.cc/halloc |
- */ |
- |
-/* |
- * The program is distributed under terms of BSD license. |
- * You can obtain the copy of the license by visiting: |
- * |
- * http://www.opensource.org/licenses/bsd-license.php |
- */ |
- |
-#ifndef _LIBP_HLIST_H_ |
-#define _LIBP_HLIST_H_ |
- |
-#include <assert.h> |
-#include "macros.h" /* static_inline */ |
- |
-/* |
- * weak double-linked list w/ tail sentinel |
- */ |
-typedef struct hlist_head hlist_head_t; |
-typedef struct hlist_item hlist_item_t; |
- |
-/* |
- * |
- */ |
-struct hlist_head |
-{ |
- hlist_item_t * next; |
-}; |
- |
-struct hlist_item |
-{ |
- hlist_item_t * next; |
- hlist_item_t ** prev; |
-}; |
- |
-/* |
- * shared tail sentinel |
- */ |
-struct hlist_item hlist_null; |
- |
-/* |
- * |
- */ |
-#define __hlist_init(h) { &hlist_null } |
-#define __hlist_init_item(i) { &hlist_null, &(i).next } |
- |
-static_inline void hlist_init(hlist_head_t * h); |
-static_inline void hlist_init_item(hlist_item_t * i); |
- |
-/* static_inline void hlist_purge(hlist_head_t * h); */ |
- |
-/* static_inline bool_t hlist_empty(const hlist_head_t * h); */ |
- |
-/* static_inline hlist_item_t * hlist_head(const hlist_head_t * h); */ |
- |
-/* static_inline hlist_item_t * hlist_next(const hlist_item_t * i); */ |
-/* static_inline hlist_item_t * hlist_prev(const hlist_item_t * i, |
- const hlist_head_t * h); */ |
- |
-static_inline void hlist_add(hlist_head_t * h, hlist_item_t * i); |
- |
-/* static_inline void hlist_add_prev(hlist_item_t * l, hlist_item_t * i); */ |
-/* static_inline void hlist_add_next(hlist_item_t * l, hlist_item_t * i); */ |
- |
-static_inline void hlist_del(hlist_item_t * i); |
- |
-static_inline void hlist_relink(hlist_item_t * i); |
-static_inline void hlist_relink_head(hlist_head_t * h); |
- |
-#define hlist_for_each(i, h) \ |
- for (i = (h)->next; i != &hlist_null; i = i->next) |
- |
-#define hlist_for_each_safe(i, tmp, h) \ |
- for (i = (h)->next, tmp = i->next; \ |
- i!= &hlist_null; \ |
- i = tmp, tmp = i->next) |
- |
-/* |
- * static |
- */ |
-static_inline void hlist_init(hlist_head_t * h) |
-{ |
- assert(h); |
- h->next = &hlist_null; |
-} |
- |
-static_inline void hlist_init_item(hlist_item_t * i) |
-{ |
- assert(i); |
- i->prev = &i->next; |
- i->next = &hlist_null; |
-} |
- |
-static_inline void hlist_add(hlist_head_t * h, hlist_item_t * i) |
-{ |
- hlist_item_t * next; |
- assert(h && i); |
- |
- next = i->next = h->next; |
- next->prev = &i->next; |
- h->next = i; |
- i->prev = &h->next; |
-} |
- |
-static_inline void hlist_del(hlist_item_t * i) |
-{ |
- hlist_item_t * next; |
- assert(i); |
- |
- next = i->next; |
- next->prev = i->prev; |
- *i->prev = next; |
- |
- hlist_init_item(i); |
-} |
- |
-static_inline void hlist_relink(hlist_item_t * i) |
-{ |
- assert(i); |
- *i->prev = i; |
- i->next->prev = &i->next; |
-} |
- |
-static_inline void hlist_relink_head(hlist_head_t * h) |
-{ |
- assert(h); |
- h->next->prev = &h->next; |
-} |
- |
-#endif |
- |