2 * sgen-pointer-queue.h: A pointer queue that can be sorted.
4 * Copyright (C) 2014 Xamarin Inc
6 * Licensed under the MIT license. See LICENSE file in the project root for full license information.
9 #ifndef __MONO_SGEN_POINTER_QUEUE_H__
10 #define __MONO_SGEN_POINTER_QUEUE_H__
21 #define SGEN_POINTER_QUEUE_INIT(mem_type) { NULL, 0, 0, (mem_type) }
23 void sgen_pointer_queue_add (SgenPointerQueue
*queue
, void *ptr
);
24 void sgen_pointer_queue_clear (SgenPointerQueue
*queue
);
25 void sgen_pointer_queue_remove_nulls (SgenPointerQueue
*queue
);
26 void sgen_pointer_queue_sort_uniq (SgenPointerQueue
*queue
);
27 size_t sgen_pointer_queue_search (SgenPointerQueue
*queue
, void *addr
);
28 size_t sgen_pointer_queue_find (SgenPointerQueue
*queue
, void *ptr
);
29 void sgen_pointer_queue_init (SgenPointerQueue
*queue
, int mem_type
);
30 void* sgen_pointer_queue_pop (SgenPointerQueue
*queue
);
31 gboolean
sgen_pointer_queue_is_empty (SgenPointerQueue
*queue
);
32 void sgen_pointer_queue_free (SgenPointerQueue
*queue
);
33 gboolean
sgen_pointer_queue_will_grow (SgenPointerQueue
*queue
);