diff options
Diffstat (limited to 'gee/gee-internals.h')
-rw-r--r-- | gee/gee-internals.h | 2315 |
1 files changed, 2315 insertions, 0 deletions
diff --git a/gee/gee-internals.h b/gee/gee-internals.h new file mode 100644 index 0000000..2731b80 --- /dev/null +++ b/gee/gee-internals.h @@ -0,0 +1,2315 @@ +/* gee-internals.h generated by valac 0.18.0, the Vala compiler, do not modify */ + + +#ifndef __GEE_INTERNALS_H__ +#define __GEE_INTERNALS_H__ + +#include <glib.h> +#include <glib-object.h> + +G_BEGIN_DECLS + + +#define GEE_TYPE_TRAVERSABLE (gee_traversable_get_type ()) +#define GEE_TRAVERSABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_TRAVERSABLE, GeeTraversable)) +#define GEE_IS_TRAVERSABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_TRAVERSABLE)) +#define GEE_TRAVERSABLE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GEE_TYPE_TRAVERSABLE, GeeTraversableIface)) + +typedef struct _GeeTraversable GeeTraversable; +typedef struct _GeeTraversableIface GeeTraversableIface; + +#define GEE_TRAVERSABLE_TYPE_STREAM (gee_traversable_stream_get_type ()) + +#define GEE_TYPE_LAZY (gee_lazy_get_type ()) +#define GEE_LAZY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_LAZY, GeeLazy)) +#define GEE_LAZY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_LAZY, GeeLazyClass)) +#define GEE_IS_LAZY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_LAZY)) +#define GEE_IS_LAZY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_LAZY)) +#define GEE_LAZY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_LAZY, GeeLazyClass)) + +typedef struct _GeeLazy GeeLazy; +typedef struct _GeeLazyClass GeeLazyClass; + +#define GEE_TYPE_ITERATOR (gee_iterator_get_type ()) +#define GEE_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_ITERATOR, GeeIterator)) +#define GEE_IS_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_ITERATOR)) +#define GEE_ITERATOR_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GEE_TYPE_ITERATOR, GeeIteratorIface)) + +typedef struct _GeeIterator GeeIterator; +typedef struct _GeeIteratorIface GeeIteratorIface; + +#define GEE_TYPE_ITERABLE (gee_iterable_get_type ()) +#define GEE_ITERABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_ITERABLE, GeeIterable)) +#define GEE_IS_ITERABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_ITERABLE)) +#define GEE_ITERABLE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GEE_TYPE_ITERABLE, GeeIterableIface)) + +typedef struct _GeeIterable GeeIterable; +typedef struct _GeeIterableIface GeeIterableIface; + +#define GEE_TYPE_COLLECTION (gee_collection_get_type ()) +#define GEE_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_COLLECTION, GeeCollection)) +#define GEE_IS_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_COLLECTION)) +#define GEE_COLLECTION_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GEE_TYPE_COLLECTION, GeeCollectionIface)) + +typedef struct _GeeCollection GeeCollection; +typedef struct _GeeCollectionIface GeeCollectionIface; + +#define GEE_TYPE_ABSTRACT_COLLECTION (gee_abstract_collection_get_type ()) +#define GEE_ABSTRACT_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection)) +#define GEE_ABSTRACT_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollectionClass)) +#define GEE_IS_ABSTRACT_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_ABSTRACT_COLLECTION)) +#define GEE_IS_ABSTRACT_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_ABSTRACT_COLLECTION)) +#define GEE_ABSTRACT_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollectionClass)) + +typedef struct _GeeAbstractCollection GeeAbstractCollection; +typedef struct _GeeAbstractCollectionClass GeeAbstractCollectionClass; +typedef struct _GeeAbstractCollectionPrivate GeeAbstractCollectionPrivate; + +#define GEE_TYPE_LIST (gee_list_get_type ()) +#define GEE_LIST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_LIST, GeeList)) +#define GEE_IS_LIST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_LIST)) +#define GEE_LIST_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GEE_TYPE_LIST, GeeListIface)) + +typedef struct _GeeList GeeList; +typedef struct _GeeListIface GeeListIface; + +#define GEE_TYPE_LIST_ITERATOR (gee_list_iterator_get_type ()) +#define GEE_LIST_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_LIST_ITERATOR, GeeListIterator)) +#define GEE_IS_LIST_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_LIST_ITERATOR)) +#define GEE_LIST_ITERATOR_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GEE_TYPE_LIST_ITERATOR, GeeListIteratorIface)) + +typedef struct _GeeListIterator GeeListIterator; +typedef struct _GeeListIteratorIface GeeListIteratorIface; + +#define GEE_TYPE_ABSTRACT_LIST (gee_abstract_list_get_type ()) +#define GEE_ABSTRACT_LIST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_ABSTRACT_LIST, GeeAbstractList)) +#define GEE_ABSTRACT_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_ABSTRACT_LIST, GeeAbstractListClass)) +#define GEE_IS_ABSTRACT_LIST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_ABSTRACT_LIST)) +#define GEE_IS_ABSTRACT_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_ABSTRACT_LIST)) +#define GEE_ABSTRACT_LIST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_ABSTRACT_LIST, GeeAbstractListClass)) + +typedef struct _GeeAbstractList GeeAbstractList; +typedef struct _GeeAbstractListClass GeeAbstractListClass; +typedef struct _GeeAbstractListPrivate GeeAbstractListPrivate; + +#define GEE_TYPE_BIDIR_LIST (gee_bidir_list_get_type ()) +#define GEE_BIDIR_LIST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_BIDIR_LIST, GeeBidirList)) +#define GEE_IS_BIDIR_LIST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_BIDIR_LIST)) +#define GEE_BIDIR_LIST_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GEE_TYPE_BIDIR_LIST, GeeBidirListIface)) + +typedef struct _GeeBidirList GeeBidirList; +typedef struct _GeeBidirListIface GeeBidirListIface; + +#define GEE_TYPE_BIDIR_ITERATOR (gee_bidir_iterator_get_type ()) +#define GEE_BIDIR_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_BIDIR_ITERATOR, GeeBidirIterator)) +#define GEE_IS_BIDIR_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_BIDIR_ITERATOR)) +#define GEE_BIDIR_ITERATOR_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GEE_TYPE_BIDIR_ITERATOR, GeeBidirIteratorIface)) + +typedef struct _GeeBidirIterator GeeBidirIterator; +typedef struct _GeeBidirIteratorIface GeeBidirIteratorIface; + +#define GEE_TYPE_BIDIR_LIST_ITERATOR (gee_bidir_list_iterator_get_type ()) +#define GEE_BIDIR_LIST_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_BIDIR_LIST_ITERATOR, GeeBidirListIterator)) +#define GEE_IS_BIDIR_LIST_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_BIDIR_LIST_ITERATOR)) +#define GEE_BIDIR_LIST_ITERATOR_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GEE_TYPE_BIDIR_LIST_ITERATOR, GeeBidirListIteratorIface)) + +typedef struct _GeeBidirListIterator GeeBidirListIterator; +typedef struct _GeeBidirListIteratorIface GeeBidirListIteratorIface; + +#define GEE_TYPE_ABSTRACT_BIDIR_LIST (gee_abstract_bidir_list_get_type ()) +#define GEE_ABSTRACT_BIDIR_LIST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_ABSTRACT_BIDIR_LIST, GeeAbstractBidirList)) +#define GEE_ABSTRACT_BIDIR_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_ABSTRACT_BIDIR_LIST, GeeAbstractBidirListClass)) +#define GEE_IS_ABSTRACT_BIDIR_LIST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_ABSTRACT_BIDIR_LIST)) +#define GEE_IS_ABSTRACT_BIDIR_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_ABSTRACT_BIDIR_LIST)) +#define GEE_ABSTRACT_BIDIR_LIST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_ABSTRACT_BIDIR_LIST, GeeAbstractBidirListClass)) + +typedef struct _GeeAbstractBidirList GeeAbstractBidirList; +typedef struct _GeeAbstractBidirListClass GeeAbstractBidirListClass; +typedef struct _GeeAbstractBidirListPrivate GeeAbstractBidirListPrivate; + +#define GEE_TYPE_SET (gee_set_get_type ()) +#define GEE_SET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_SET, GeeSet)) +#define GEE_IS_SET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_SET)) +#define GEE_SET_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GEE_TYPE_SET, GeeSetIface)) + +typedef struct _GeeSet GeeSet; +typedef struct _GeeSetIface GeeSetIface; + +#define GEE_TYPE_ABSTRACT_SET (gee_abstract_set_get_type ()) +#define GEE_ABSTRACT_SET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_ABSTRACT_SET, GeeAbstractSet)) +#define GEE_ABSTRACT_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_ABSTRACT_SET, GeeAbstractSetClass)) +#define GEE_IS_ABSTRACT_SET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_ABSTRACT_SET)) +#define GEE_IS_ABSTRACT_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_ABSTRACT_SET)) +#define GEE_ABSTRACT_SET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_ABSTRACT_SET, GeeAbstractSetClass)) + +typedef struct _GeeAbstractSet GeeAbstractSet; +typedef struct _GeeAbstractSetClass GeeAbstractSetClass; +typedef struct _GeeAbstractSetPrivate GeeAbstractSetPrivate; + +#define GEE_TYPE_SORTED_SET (gee_sorted_set_get_type ()) +#define GEE_SORTED_SET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_SORTED_SET, GeeSortedSet)) +#define GEE_IS_SORTED_SET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_SORTED_SET)) +#define GEE_SORTED_SET_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GEE_TYPE_SORTED_SET, GeeSortedSetIface)) + +typedef struct _GeeSortedSet GeeSortedSet; +typedef struct _GeeSortedSetIface GeeSortedSetIface; + +#define GEE_TYPE_ABSTRACT_SORTED_SET (gee_abstract_sorted_set_get_type ()) +#define GEE_ABSTRACT_SORTED_SET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_ABSTRACT_SORTED_SET, GeeAbstractSortedSet)) +#define GEE_ABSTRACT_SORTED_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_ABSTRACT_SORTED_SET, GeeAbstractSortedSetClass)) +#define GEE_IS_ABSTRACT_SORTED_SET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_ABSTRACT_SORTED_SET)) +#define GEE_IS_ABSTRACT_SORTED_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_ABSTRACT_SORTED_SET)) +#define GEE_ABSTRACT_SORTED_SET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_ABSTRACT_SORTED_SET, GeeAbstractSortedSetClass)) + +typedef struct _GeeAbstractSortedSet GeeAbstractSortedSet; +typedef struct _GeeAbstractSortedSetClass GeeAbstractSortedSetClass; +typedef struct _GeeAbstractSortedSetPrivate GeeAbstractSortedSetPrivate; + +#define GEE_TYPE_BIDIR_SORTED_SET (gee_bidir_sorted_set_get_type ()) +#define GEE_BIDIR_SORTED_SET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_BIDIR_SORTED_SET, GeeBidirSortedSet)) +#define GEE_IS_BIDIR_SORTED_SET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_BIDIR_SORTED_SET)) +#define GEE_BIDIR_SORTED_SET_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GEE_TYPE_BIDIR_SORTED_SET, GeeBidirSortedSetIface)) + +typedef struct _GeeBidirSortedSet GeeBidirSortedSet; +typedef struct _GeeBidirSortedSetIface GeeBidirSortedSetIface; + +#define GEE_TYPE_ABSTRACT_BIDIR_SORTED_SET (gee_abstract_bidir_sorted_set_get_type ()) +#define GEE_ABSTRACT_BIDIR_SORTED_SET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_ABSTRACT_BIDIR_SORTED_SET, GeeAbstractBidirSortedSet)) +#define GEE_ABSTRACT_BIDIR_SORTED_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_ABSTRACT_BIDIR_SORTED_SET, GeeAbstractBidirSortedSetClass)) +#define GEE_IS_ABSTRACT_BIDIR_SORTED_SET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_ABSTRACT_BIDIR_SORTED_SET)) +#define GEE_IS_ABSTRACT_BIDIR_SORTED_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_ABSTRACT_BIDIR_SORTED_SET)) +#define GEE_ABSTRACT_BIDIR_SORTED_SET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_ABSTRACT_BIDIR_SORTED_SET, GeeAbstractBidirSortedSetClass)) + +typedef struct _GeeAbstractBidirSortedSet GeeAbstractBidirSortedSet; +typedef struct _GeeAbstractBidirSortedSetClass GeeAbstractBidirSortedSetClass; +typedef struct _GeeAbstractBidirSortedSetPrivate GeeAbstractBidirSortedSetPrivate; + +#define GEE_TYPE_MAP (gee_map_get_type ()) +#define GEE_MAP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_MAP, GeeMap)) +#define GEE_IS_MAP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_MAP)) +#define GEE_MAP_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GEE_TYPE_MAP, GeeMapIface)) + +typedef struct _GeeMap GeeMap; +typedef struct _GeeMapIface GeeMapIface; + +#define GEE_TYPE_MAP_ITERATOR (gee_map_iterator_get_type ()) +#define GEE_MAP_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_MAP_ITERATOR, GeeMapIterator)) +#define GEE_IS_MAP_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_MAP_ITERATOR)) +#define GEE_MAP_ITERATOR_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GEE_TYPE_MAP_ITERATOR, GeeMapIteratorIface)) + +typedef struct _GeeMapIterator GeeMapIterator; +typedef struct _GeeMapIteratorIface GeeMapIteratorIface; + +#define GEE_MAP_TYPE_ENTRY (gee_map_entry_get_type ()) +#define GEE_MAP_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_MAP_TYPE_ENTRY, GeeMapEntry)) +#define GEE_MAP_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_MAP_TYPE_ENTRY, GeeMapEntryClass)) +#define GEE_MAP_IS_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_MAP_TYPE_ENTRY)) +#define GEE_MAP_IS_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_MAP_TYPE_ENTRY)) +#define GEE_MAP_ENTRY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_MAP_TYPE_ENTRY, GeeMapEntryClass)) + +typedef struct _GeeMapEntry GeeMapEntry; +typedef struct _GeeMapEntryClass GeeMapEntryClass; + +#define GEE_TYPE_ABSTRACT_MAP (gee_abstract_map_get_type ()) +#define GEE_ABSTRACT_MAP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap)) +#define GEE_ABSTRACT_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_ABSTRACT_MAP, GeeAbstractMapClass)) +#define GEE_IS_ABSTRACT_MAP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_ABSTRACT_MAP)) +#define GEE_IS_ABSTRACT_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_ABSTRACT_MAP)) +#define GEE_ABSTRACT_MAP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_ABSTRACT_MAP, GeeAbstractMapClass)) + +typedef struct _GeeAbstractMap GeeAbstractMap; +typedef struct _GeeAbstractMapClass GeeAbstractMapClass; +typedef struct _GeeAbstractMapPrivate GeeAbstractMapPrivate; + +#define GEE_TYPE_SORTED_MAP (gee_sorted_map_get_type ()) +#define GEE_SORTED_MAP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_SORTED_MAP, GeeSortedMap)) +#define GEE_IS_SORTED_MAP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_SORTED_MAP)) +#define GEE_SORTED_MAP_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GEE_TYPE_SORTED_MAP, GeeSortedMapIface)) + +typedef struct _GeeSortedMap GeeSortedMap; +typedef struct _GeeSortedMapIface GeeSortedMapIface; + +#define GEE_TYPE_ABSTRACT_SORTED_MAP (gee_abstract_sorted_map_get_type ()) +#define GEE_ABSTRACT_SORTED_MAP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_ABSTRACT_SORTED_MAP, GeeAbstractSortedMap)) +#define GEE_ABSTRACT_SORTED_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_ABSTRACT_SORTED_MAP, GeeAbstractSortedMapClass)) +#define GEE_IS_ABSTRACT_SORTED_MAP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_ABSTRACT_SORTED_MAP)) +#define GEE_IS_ABSTRACT_SORTED_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_ABSTRACT_SORTED_MAP)) +#define GEE_ABSTRACT_SORTED_MAP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_ABSTRACT_SORTED_MAP, GeeAbstractSortedMapClass)) + +typedef struct _GeeAbstractSortedMap GeeAbstractSortedMap; +typedef struct _GeeAbstractSortedMapClass GeeAbstractSortedMapClass; +typedef struct _GeeAbstractSortedMapPrivate GeeAbstractSortedMapPrivate; + +#define GEE_TYPE_BIDIR_SORTED_MAP (gee_bidir_sorted_map_get_type ()) +#define GEE_BIDIR_SORTED_MAP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_BIDIR_SORTED_MAP, GeeBidirSortedMap)) +#define GEE_IS_BIDIR_SORTED_MAP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_BIDIR_SORTED_MAP)) +#define GEE_BIDIR_SORTED_MAP_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GEE_TYPE_BIDIR_SORTED_MAP, GeeBidirSortedMapIface)) + +typedef struct _GeeBidirSortedMap GeeBidirSortedMap; +typedef struct _GeeBidirSortedMapIface GeeBidirSortedMapIface; + +#define GEE_TYPE_BIDIR_MAP_ITERATOR (gee_bidir_map_iterator_get_type ()) +#define GEE_BIDIR_MAP_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_BIDIR_MAP_ITERATOR, GeeBidirMapIterator)) +#define GEE_IS_BIDIR_MAP_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_BIDIR_MAP_ITERATOR)) +#define GEE_BIDIR_MAP_ITERATOR_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GEE_TYPE_BIDIR_MAP_ITERATOR, GeeBidirMapIteratorIface)) + +typedef struct _GeeBidirMapIterator GeeBidirMapIterator; +typedef struct _GeeBidirMapIteratorIface GeeBidirMapIteratorIface; + +#define GEE_TYPE_ABSTRACT_BIDIR_SORTED_MAP (gee_abstract_bidir_sorted_map_get_type ()) +#define GEE_ABSTRACT_BIDIR_SORTED_MAP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_ABSTRACT_BIDIR_SORTED_MAP, GeeAbstractBidirSortedMap)) +#define GEE_ABSTRACT_BIDIR_SORTED_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_ABSTRACT_BIDIR_SORTED_MAP, GeeAbstractBidirSortedMapClass)) +#define GEE_IS_ABSTRACT_BIDIR_SORTED_MAP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_ABSTRACT_BIDIR_SORTED_MAP)) +#define GEE_IS_ABSTRACT_BIDIR_SORTED_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_ABSTRACT_BIDIR_SORTED_MAP)) +#define GEE_ABSTRACT_BIDIR_SORTED_MAP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_ABSTRACT_BIDIR_SORTED_MAP, GeeAbstractBidirSortedMapClass)) + +typedef struct _GeeAbstractBidirSortedMap GeeAbstractBidirSortedMap; +typedef struct _GeeAbstractBidirSortedMapClass GeeAbstractBidirSortedMapClass; +typedef struct _GeeAbstractBidirSortedMapPrivate GeeAbstractBidirSortedMapPrivate; + +#define GEE_TYPE_MULTI_MAP (gee_multi_map_get_type ()) +#define GEE_MULTI_MAP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_MULTI_MAP, GeeMultiMap)) +#define GEE_IS_MULTI_MAP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_MULTI_MAP)) +#define GEE_MULTI_MAP_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GEE_TYPE_MULTI_MAP, GeeMultiMapIface)) + +typedef struct _GeeMultiMap GeeMultiMap; +typedef struct _GeeMultiMapIface GeeMultiMapIface; + +#define GEE_TYPE_MULTI_SET (gee_multi_set_get_type ()) +#define GEE_MULTI_SET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_MULTI_SET, GeeMultiSet)) +#define GEE_IS_MULTI_SET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_MULTI_SET)) +#define GEE_MULTI_SET_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GEE_TYPE_MULTI_SET, GeeMultiSetIface)) + +typedef struct _GeeMultiSet GeeMultiSet; +typedef struct _GeeMultiSetIface GeeMultiSetIface; + +#define GEE_TYPE_ABSTRACT_MULTI_MAP (gee_abstract_multi_map_get_type ()) +#define GEE_ABSTRACT_MULTI_MAP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_ABSTRACT_MULTI_MAP, GeeAbstractMultiMap)) +#define GEE_ABSTRACT_MULTI_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_ABSTRACT_MULTI_MAP, GeeAbstractMultiMapClass)) +#define GEE_IS_ABSTRACT_MULTI_MAP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_ABSTRACT_MULTI_MAP)) +#define GEE_IS_ABSTRACT_MULTI_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_ABSTRACT_MULTI_MAP)) +#define GEE_ABSTRACT_MULTI_MAP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_ABSTRACT_MULTI_MAP, GeeAbstractMultiMapClass)) + +typedef struct _GeeAbstractMultiMap GeeAbstractMultiMap; +typedef struct _GeeAbstractMultiMapClass GeeAbstractMultiMapClass; +typedef struct _GeeAbstractMultiMapPrivate GeeAbstractMultiMapPrivate; + +#define GEE_TYPE_ABSTRACT_MULTI_SET (gee_abstract_multi_set_get_type ()) +#define GEE_ABSTRACT_MULTI_SET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_ABSTRACT_MULTI_SET, GeeAbstractMultiSet)) +#define GEE_ABSTRACT_MULTI_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_ABSTRACT_MULTI_SET, GeeAbstractMultiSetClass)) +#define GEE_IS_ABSTRACT_MULTI_SET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_ABSTRACT_MULTI_SET)) +#define GEE_IS_ABSTRACT_MULTI_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_ABSTRACT_MULTI_SET)) +#define GEE_ABSTRACT_MULTI_SET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_ABSTRACT_MULTI_SET, GeeAbstractMultiSetClass)) + +typedef struct _GeeAbstractMultiSet GeeAbstractMultiSet; +typedef struct _GeeAbstractMultiSetClass GeeAbstractMultiSetClass; +typedef struct _GeeAbstractMultiSetPrivate GeeAbstractMultiSetPrivate; + +#define GEE_TYPE_QUEUE (gee_queue_get_type ()) +#define GEE_QUEUE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_QUEUE, GeeQueue)) +#define GEE_IS_QUEUE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_QUEUE)) +#define GEE_QUEUE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GEE_TYPE_QUEUE, GeeQueueIface)) + +typedef struct _GeeQueue GeeQueue; +typedef struct _GeeQueueIface GeeQueueIface; + +#define GEE_TYPE_ABSTRACT_QUEUE (gee_abstract_queue_get_type ()) +#define GEE_ABSTRACT_QUEUE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_ABSTRACT_QUEUE, GeeAbstractQueue)) +#define GEE_ABSTRACT_QUEUE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_ABSTRACT_QUEUE, GeeAbstractQueueClass)) +#define GEE_IS_ABSTRACT_QUEUE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_ABSTRACT_QUEUE)) +#define GEE_IS_ABSTRACT_QUEUE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_ABSTRACT_QUEUE)) +#define GEE_ABSTRACT_QUEUE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_ABSTRACT_QUEUE, GeeAbstractQueueClass)) + +typedef struct _GeeAbstractQueue GeeAbstractQueue; +typedef struct _GeeAbstractQueueClass GeeAbstractQueueClass; +typedef struct _GeeAbstractQueuePrivate GeeAbstractQueuePrivate; + +#define GEE_TYPE_ARRAY_LIST (gee_array_list_get_type ()) +#define GEE_ARRAY_LIST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_ARRAY_LIST, GeeArrayList)) +#define GEE_ARRAY_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_ARRAY_LIST, GeeArrayListClass)) +#define GEE_IS_ARRAY_LIST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_ARRAY_LIST)) +#define GEE_IS_ARRAY_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_ARRAY_LIST)) +#define GEE_ARRAY_LIST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_ARRAY_LIST, GeeArrayListClass)) + +typedef struct _GeeArrayList GeeArrayList; +typedef struct _GeeArrayListClass GeeArrayListClass; +typedef struct _GeeArrayListPrivate GeeArrayListPrivate; + +#define GEE_TYPE_DEQUE (gee_deque_get_type ()) +#define GEE_DEQUE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_DEQUE, GeeDeque)) +#define GEE_IS_DEQUE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_DEQUE)) +#define GEE_DEQUE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GEE_TYPE_DEQUE, GeeDequeIface)) + +typedef struct _GeeDeque GeeDeque; +typedef struct _GeeDequeIface GeeDequeIface; + +#define GEE_TYPE_ARRAY_QUEUE (gee_array_queue_get_type ()) +#define GEE_ARRAY_QUEUE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_ARRAY_QUEUE, GeeArrayQueue)) +#define GEE_ARRAY_QUEUE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_ARRAY_QUEUE, GeeArrayQueueClass)) +#define GEE_IS_ARRAY_QUEUE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_ARRAY_QUEUE)) +#define GEE_IS_ARRAY_QUEUE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_ARRAY_QUEUE)) +#define GEE_ARRAY_QUEUE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_ARRAY_QUEUE, GeeArrayQueueClass)) + +typedef struct _GeeArrayQueue GeeArrayQueue; +typedef struct _GeeArrayQueueClass GeeArrayQueueClass; +typedef struct _GeeArrayQueuePrivate GeeArrayQueuePrivate; + +#define GEE_TYPE_COMPARABLE (gee_comparable_get_type ()) +#define GEE_COMPARABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_COMPARABLE, GeeComparable)) +#define GEE_IS_COMPARABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_COMPARABLE)) +#define GEE_COMPARABLE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GEE_TYPE_COMPARABLE, GeeComparableIface)) + +typedef struct _GeeComparable GeeComparable; +typedef struct _GeeComparableIface GeeComparableIface; + +#define GEE_TYPE_CONCURRENT_LIST (gee_concurrent_list_get_type ()) +#define GEE_CONCURRENT_LIST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_CONCURRENT_LIST, GeeConcurrentList)) +#define GEE_CONCURRENT_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_CONCURRENT_LIST, GeeConcurrentListClass)) +#define GEE_IS_CONCURRENT_LIST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_CONCURRENT_LIST)) +#define GEE_IS_CONCURRENT_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_CONCURRENT_LIST)) +#define GEE_CONCURRENT_LIST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_CONCURRENT_LIST, GeeConcurrentListClass)) + +typedef struct _GeeConcurrentList GeeConcurrentList; +typedef struct _GeeConcurrentListClass GeeConcurrentListClass; +typedef struct _GeeConcurrentListPrivate GeeConcurrentListPrivate; + +#define GEE_TYPE_CONCURRENT_SET (gee_concurrent_set_get_type ()) +#define GEE_CONCURRENT_SET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_CONCURRENT_SET, GeeConcurrentSet)) +#define GEE_CONCURRENT_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_CONCURRENT_SET, GeeConcurrentSetClass)) +#define GEE_IS_CONCURRENT_SET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_CONCURRENT_SET)) +#define GEE_IS_CONCURRENT_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_CONCURRENT_SET)) +#define GEE_CONCURRENT_SET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_CONCURRENT_SET, GeeConcurrentSetClass)) + +typedef struct _GeeConcurrentSet GeeConcurrentSet; +typedef struct _GeeConcurrentSetClass GeeConcurrentSetClass; +typedef struct _GeeConcurrentSetPrivate GeeConcurrentSetPrivate; + +#define GEE_CONCURRENT_SET_TYPE_RANGE_TYPE (gee_concurrent_set_range_type_get_type ()) + +#define GEE_TYPE_HASHABLE (gee_hashable_get_type ()) +#define GEE_HASHABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_HASHABLE, GeeHashable)) +#define GEE_IS_HASHABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_HASHABLE)) +#define GEE_HASHABLE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GEE_TYPE_HASHABLE, GeeHashableIface)) + +typedef struct _GeeHashable GeeHashable; +typedef struct _GeeHashableIface GeeHashableIface; + +#define GEE_TYPE_HASH_MAP (gee_hash_map_get_type ()) +#define GEE_HASH_MAP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_HASH_MAP, GeeHashMap)) +#define GEE_HASH_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_HASH_MAP, GeeHashMapClass)) +#define GEE_IS_HASH_MAP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_HASH_MAP)) +#define GEE_IS_HASH_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_HASH_MAP)) +#define GEE_HASH_MAP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_HASH_MAP, GeeHashMapClass)) + +typedef struct _GeeHashMap GeeHashMap; +typedef struct _GeeHashMapClass GeeHashMapClass; +typedef struct _GeeHashMapPrivate GeeHashMapPrivate; + +#define GEE_TYPE_HASH_MULTI_MAP (gee_hash_multi_map_get_type ()) +#define GEE_HASH_MULTI_MAP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_HASH_MULTI_MAP, GeeHashMultiMap)) +#define GEE_HASH_MULTI_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_HASH_MULTI_MAP, GeeHashMultiMapClass)) +#define GEE_IS_HASH_MULTI_MAP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_HASH_MULTI_MAP)) +#define GEE_IS_HASH_MULTI_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_HASH_MULTI_MAP)) +#define GEE_HASH_MULTI_MAP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_HASH_MULTI_MAP, GeeHashMultiMapClass)) + +typedef struct _GeeHashMultiMap GeeHashMultiMap; +typedef struct _GeeHashMultiMapClass GeeHashMultiMapClass; +typedef struct _GeeHashMultiMapPrivate GeeHashMultiMapPrivate; + +#define GEE_TYPE_HASH_MULTI_SET (gee_hash_multi_set_get_type ()) +#define GEE_HASH_MULTI_SET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_HASH_MULTI_SET, GeeHashMultiSet)) +#define GEE_HASH_MULTI_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_HASH_MULTI_SET, GeeHashMultiSetClass)) +#define GEE_IS_HASH_MULTI_SET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_HASH_MULTI_SET)) +#define GEE_IS_HASH_MULTI_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_HASH_MULTI_SET)) +#define GEE_HASH_MULTI_SET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_HASH_MULTI_SET, GeeHashMultiSetClass)) + +typedef struct _GeeHashMultiSet GeeHashMultiSet; +typedef struct _GeeHashMultiSetClass GeeHashMultiSetClass; +typedef struct _GeeHashMultiSetPrivate GeeHashMultiSetPrivate; + +#define GEE_TYPE_HASH_SET (gee_hash_set_get_type ()) +#define GEE_HASH_SET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_HASH_SET, GeeHashSet)) +#define GEE_HASH_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_HASH_SET, GeeHashSetClass)) +#define GEE_IS_HASH_SET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_HASH_SET)) +#define GEE_IS_HASH_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_HASH_SET)) +#define GEE_HASH_SET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_HASH_SET, GeeHashSetClass)) + +typedef struct _GeeHashSet GeeHashSet; +typedef struct _GeeHashSetClass GeeHashSetClass; +typedef struct _GeeHashSetPrivate GeeHashSetPrivate; +typedef struct _GeeHazardPointer GeeHazardPointer; +typedef struct _GeeHazardPointerNode GeeHazardPointerNode; + +#define GEE_HAZARD_POINTER_TYPE_POLICY (gee_hazard_pointer_policy_get_type ()) +typedef struct _GeeHazardPointerFreeNode GeeHazardPointerFreeNode; + +#define GEE_HAZARD_POINTER_TYPE_RELEASE_POLICY (gee_hazard_pointer_release_policy_get_type ()) +typedef struct _GeeHazardPointerContext GeeHazardPointerContext; +typedef struct _GeeLazyPrivate GeeLazyPrivate; + +#define GEE_TYPE_LINKED_LIST (gee_linked_list_get_type ()) +#define GEE_LINKED_LIST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_LINKED_LIST, GeeLinkedList)) +#define GEE_LINKED_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_LINKED_LIST, GeeLinkedListClass)) +#define GEE_IS_LINKED_LIST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_LINKED_LIST)) +#define GEE_IS_LINKED_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_LINKED_LIST)) +#define GEE_LINKED_LIST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_LINKED_LIST, GeeLinkedListClass)) + +typedef struct _GeeLinkedList GeeLinkedList; +typedef struct _GeeLinkedListClass GeeLinkedListClass; +typedef struct _GeeLinkedListPrivate GeeLinkedListPrivate; +typedef struct _GeeMapEntryPrivate GeeMapEntryPrivate; + +#define GEE_TYPE_PRIORITY_QUEUE (gee_priority_queue_get_type ()) +#define GEE_PRIORITY_QUEUE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_PRIORITY_QUEUE, GeePriorityQueue)) +#define GEE_PRIORITY_QUEUE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_PRIORITY_QUEUE, GeePriorityQueueClass)) +#define GEE_IS_PRIORITY_QUEUE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_PRIORITY_QUEUE)) +#define GEE_IS_PRIORITY_QUEUE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_PRIORITY_QUEUE)) +#define GEE_PRIORITY_QUEUE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_PRIORITY_QUEUE, GeePriorityQueueClass)) + +typedef struct _GeePriorityQueue GeePriorityQueue; +typedef struct _GeePriorityQueueClass GeePriorityQueueClass; +typedef struct _GeePriorityQueuePrivate GeePriorityQueuePrivate; + +#define GEE_TYPE_READ_ONLY_COLLECTION (gee_read_only_collection_get_type ()) +#define GEE_READ_ONLY_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_READ_ONLY_COLLECTION, GeeReadOnlyCollection)) +#define GEE_READ_ONLY_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_READ_ONLY_COLLECTION, GeeReadOnlyCollectionClass)) +#define GEE_IS_READ_ONLY_COLLECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_READ_ONLY_COLLECTION)) +#define GEE_IS_READ_ONLY_COLLECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_READ_ONLY_COLLECTION)) +#define GEE_READ_ONLY_COLLECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_READ_ONLY_COLLECTION, GeeReadOnlyCollectionClass)) + +typedef struct _GeeReadOnlyCollection GeeReadOnlyCollection; +typedef struct _GeeReadOnlyCollectionClass GeeReadOnlyCollectionClass; +typedef struct _GeeReadOnlyCollectionPrivate GeeReadOnlyCollectionPrivate; + +#define GEE_TYPE_READ_ONLY_LIST (gee_read_only_list_get_type ()) +#define GEE_READ_ONLY_LIST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_READ_ONLY_LIST, GeeReadOnlyList)) +#define GEE_READ_ONLY_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_READ_ONLY_LIST, GeeReadOnlyListClass)) +#define GEE_IS_READ_ONLY_LIST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_READ_ONLY_LIST)) +#define GEE_IS_READ_ONLY_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_READ_ONLY_LIST)) +#define GEE_READ_ONLY_LIST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_READ_ONLY_LIST, GeeReadOnlyListClass)) + +typedef struct _GeeReadOnlyList GeeReadOnlyList; +typedef struct _GeeReadOnlyListClass GeeReadOnlyListClass; +typedef struct _GeeReadOnlyListPrivate GeeReadOnlyListPrivate; + +#define GEE_TYPE_READ_ONLY_BIDIR_LIST (gee_read_only_bidir_list_get_type ()) +#define GEE_READ_ONLY_BIDIR_LIST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_READ_ONLY_BIDIR_LIST, GeeReadOnlyBidirList)) +#define GEE_READ_ONLY_BIDIR_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_READ_ONLY_BIDIR_LIST, GeeReadOnlyBidirListClass)) +#define GEE_IS_READ_ONLY_BIDIR_LIST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_READ_ONLY_BIDIR_LIST)) +#define GEE_IS_READ_ONLY_BIDIR_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_READ_ONLY_BIDIR_LIST)) +#define GEE_READ_ONLY_BIDIR_LIST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_READ_ONLY_BIDIR_LIST, GeeReadOnlyBidirListClass)) + +typedef struct _GeeReadOnlyBidirList GeeReadOnlyBidirList; +typedef struct _GeeReadOnlyBidirListClass GeeReadOnlyBidirListClass; +typedef struct _GeeReadOnlyBidirListPrivate GeeReadOnlyBidirListPrivate; + +#define GEE_TYPE_READ_ONLY_SET (gee_read_only_set_get_type ()) +#define GEE_READ_ONLY_SET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_READ_ONLY_SET, GeeReadOnlySet)) +#define GEE_READ_ONLY_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_READ_ONLY_SET, GeeReadOnlySetClass)) +#define GEE_IS_READ_ONLY_SET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_READ_ONLY_SET)) +#define GEE_IS_READ_ONLY_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_READ_ONLY_SET)) +#define GEE_READ_ONLY_SET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_READ_ONLY_SET, GeeReadOnlySetClass)) + +typedef struct _GeeReadOnlySet GeeReadOnlySet; +typedef struct _GeeReadOnlySetClass GeeReadOnlySetClass; +typedef struct _GeeReadOnlySetPrivate GeeReadOnlySetPrivate; + +#define GEE_TYPE_READ_ONLY_SORTED_SET (gee_read_only_sorted_set_get_type ()) +#define GEE_READ_ONLY_SORTED_SET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_READ_ONLY_SORTED_SET, GeeReadOnlySortedSet)) +#define GEE_READ_ONLY_SORTED_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_READ_ONLY_SORTED_SET, GeeReadOnlySortedSetClass)) +#define GEE_IS_READ_ONLY_SORTED_SET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_READ_ONLY_SORTED_SET)) +#define GEE_IS_READ_ONLY_SORTED_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_READ_ONLY_SORTED_SET)) +#define GEE_READ_ONLY_SORTED_SET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_READ_ONLY_SORTED_SET, GeeReadOnlySortedSetClass)) + +typedef struct _GeeReadOnlySortedSet GeeReadOnlySortedSet; +typedef struct _GeeReadOnlySortedSetClass GeeReadOnlySortedSetClass; +typedef struct _GeeReadOnlySortedSetPrivate GeeReadOnlySortedSetPrivate; + +#define GEE_TYPE_READ_ONLY_BIDIR_SORTED_SET (gee_read_only_bidir_sorted_set_get_type ()) +#define GEE_READ_ONLY_BIDIR_SORTED_SET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_READ_ONLY_BIDIR_SORTED_SET, GeeReadOnlyBidirSortedSet)) +#define GEE_READ_ONLY_BIDIR_SORTED_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_READ_ONLY_BIDIR_SORTED_SET, GeeReadOnlyBidirSortedSetClass)) +#define GEE_IS_READ_ONLY_BIDIR_SORTED_SET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_READ_ONLY_BIDIR_SORTED_SET)) +#define GEE_IS_READ_ONLY_BIDIR_SORTED_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_READ_ONLY_BIDIR_SORTED_SET)) +#define GEE_READ_ONLY_BIDIR_SORTED_SET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_READ_ONLY_BIDIR_SORTED_SET, GeeReadOnlyBidirSortedSetClass)) + +typedef struct _GeeReadOnlyBidirSortedSet GeeReadOnlyBidirSortedSet; +typedef struct _GeeReadOnlyBidirSortedSetClass GeeReadOnlyBidirSortedSetClass; +typedef struct _GeeReadOnlyBidirSortedSetPrivate GeeReadOnlyBidirSortedSetPrivate; + +#define GEE_READ_ONLY_COLLECTION_TYPE_ITERATOR (gee_read_only_collection_iterator_get_type ()) +#define GEE_READ_ONLY_COLLECTION_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_READ_ONLY_COLLECTION_TYPE_ITERATOR, GeeReadOnlyCollectionIterator)) +#define GEE_READ_ONLY_COLLECTION_ITERATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_READ_ONLY_COLLECTION_TYPE_ITERATOR, GeeReadOnlyCollectionIteratorClass)) +#define GEE_READ_ONLY_COLLECTION_IS_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_READ_ONLY_COLLECTION_TYPE_ITERATOR)) +#define GEE_READ_ONLY_COLLECTION_IS_ITERATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_READ_ONLY_COLLECTION_TYPE_ITERATOR)) +#define GEE_READ_ONLY_COLLECTION_ITERATOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_READ_ONLY_COLLECTION_TYPE_ITERATOR, GeeReadOnlyCollectionIteratorClass)) + +typedef struct _GeeReadOnlyCollectionIterator GeeReadOnlyCollectionIterator; +typedef struct _GeeReadOnlyCollectionIteratorClass GeeReadOnlyCollectionIteratorClass; +typedef struct _GeeReadOnlyCollectionIteratorPrivate GeeReadOnlyCollectionIteratorPrivate; + +#define GEE_READ_ONLY_BIDIR_SORTED_SET_TYPE_BIDIR_ITERATOR (gee_read_only_bidir_sorted_set_bidir_iterator_get_type ()) +#define GEE_READ_ONLY_BIDIR_SORTED_SET_BIDIR_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_READ_ONLY_BIDIR_SORTED_SET_TYPE_BIDIR_ITERATOR, GeeReadOnlyBidirSortedSetBidirIterator)) +#define GEE_READ_ONLY_BIDIR_SORTED_SET_BIDIR_ITERATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_READ_ONLY_BIDIR_SORTED_SET_TYPE_BIDIR_ITERATOR, GeeReadOnlyBidirSortedSetBidirIteratorClass)) +#define GEE_READ_ONLY_BIDIR_SORTED_SET_IS_BIDIR_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_READ_ONLY_BIDIR_SORTED_SET_TYPE_BIDIR_ITERATOR)) +#define GEE_READ_ONLY_BIDIR_SORTED_SET_IS_BIDIR_ITERATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_READ_ONLY_BIDIR_SORTED_SET_TYPE_BIDIR_ITERATOR)) +#define GEE_READ_ONLY_BIDIR_SORTED_SET_BIDIR_ITERATOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_READ_ONLY_BIDIR_SORTED_SET_TYPE_BIDIR_ITERATOR, GeeReadOnlyBidirSortedSetBidirIteratorClass)) + +typedef struct _GeeReadOnlyBidirSortedSetBidirIterator GeeReadOnlyBidirSortedSetBidirIterator; +typedef struct _GeeReadOnlyBidirSortedSetBidirIteratorClass GeeReadOnlyBidirSortedSetBidirIteratorClass; +typedef struct _GeeReadOnlyBidirSortedSetBidirIteratorPrivate GeeReadOnlyBidirSortedSetBidirIteratorPrivate; + +#define GEE_TYPE_READ_ONLY_MAP (gee_read_only_map_get_type ()) +#define GEE_READ_ONLY_MAP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_READ_ONLY_MAP, GeeReadOnlyMap)) +#define GEE_READ_ONLY_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_READ_ONLY_MAP, GeeReadOnlyMapClass)) +#define GEE_IS_READ_ONLY_MAP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_READ_ONLY_MAP)) +#define GEE_IS_READ_ONLY_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_READ_ONLY_MAP)) +#define GEE_READ_ONLY_MAP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_READ_ONLY_MAP, GeeReadOnlyMapClass)) + +typedef struct _GeeReadOnlyMap GeeReadOnlyMap; +typedef struct _GeeReadOnlyMapClass GeeReadOnlyMapClass; +typedef struct _GeeReadOnlyMapPrivate GeeReadOnlyMapPrivate; + +#define GEE_TYPE_READ_ONLY_SORTED_MAP (gee_read_only_sorted_map_get_type ()) +#define GEE_READ_ONLY_SORTED_MAP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_READ_ONLY_SORTED_MAP, GeeReadOnlySortedMap)) +#define GEE_READ_ONLY_SORTED_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_READ_ONLY_SORTED_MAP, GeeReadOnlySortedMapClass)) +#define GEE_IS_READ_ONLY_SORTED_MAP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_READ_ONLY_SORTED_MAP)) +#define GEE_IS_READ_ONLY_SORTED_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_READ_ONLY_SORTED_MAP)) +#define GEE_READ_ONLY_SORTED_MAP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_READ_ONLY_SORTED_MAP, GeeReadOnlySortedMapClass)) + +typedef struct _GeeReadOnlySortedMap GeeReadOnlySortedMap; +typedef struct _GeeReadOnlySortedMapClass GeeReadOnlySortedMapClass; +typedef struct _GeeReadOnlySortedMapPrivate GeeReadOnlySortedMapPrivate; + +#define GEE_TYPE_READ_ONLY_BIDIR_SORTED_MAP (gee_read_only_bidir_sorted_map_get_type ()) +#define GEE_READ_ONLY_BIDIR_SORTED_MAP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_READ_ONLY_BIDIR_SORTED_MAP, GeeReadOnlyBidirSortedMap)) +#define GEE_READ_ONLY_BIDIR_SORTED_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_READ_ONLY_BIDIR_SORTED_MAP, GeeReadOnlyBidirSortedMapClass)) +#define GEE_IS_READ_ONLY_BIDIR_SORTED_MAP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_READ_ONLY_BIDIR_SORTED_MAP)) +#define GEE_IS_READ_ONLY_BIDIR_SORTED_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_READ_ONLY_BIDIR_SORTED_MAP)) +#define GEE_READ_ONLY_BIDIR_SORTED_MAP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_READ_ONLY_BIDIR_SORTED_MAP, GeeReadOnlyBidirSortedMapClass)) + +typedef struct _GeeReadOnlyBidirSortedMap GeeReadOnlyBidirSortedMap; +typedef struct _GeeReadOnlyBidirSortedMapClass GeeReadOnlyBidirSortedMapClass; +typedef struct _GeeReadOnlyBidirSortedMapPrivate GeeReadOnlyBidirSortedMapPrivate; + +#define GEE_READ_ONLY_MAP_TYPE_MAP_ITERATOR (gee_read_only_map_map_iterator_get_type ()) +#define GEE_READ_ONLY_MAP_MAP_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_READ_ONLY_MAP_TYPE_MAP_ITERATOR, GeeReadOnlyMapMapIterator)) +#define GEE_READ_ONLY_MAP_MAP_ITERATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_READ_ONLY_MAP_TYPE_MAP_ITERATOR, GeeReadOnlyMapMapIteratorClass)) +#define GEE_READ_ONLY_MAP_IS_MAP_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_READ_ONLY_MAP_TYPE_MAP_ITERATOR)) +#define GEE_READ_ONLY_MAP_IS_MAP_ITERATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_READ_ONLY_MAP_TYPE_MAP_ITERATOR)) +#define GEE_READ_ONLY_MAP_MAP_ITERATOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_READ_ONLY_MAP_TYPE_MAP_ITERATOR, GeeReadOnlyMapMapIteratorClass)) + +typedef struct _GeeReadOnlyMapMapIterator GeeReadOnlyMapMapIterator; +typedef struct _GeeReadOnlyMapMapIteratorClass GeeReadOnlyMapMapIteratorClass; +typedef struct _GeeReadOnlyMapMapIteratorPrivate GeeReadOnlyMapMapIteratorPrivate; + +#define GEE_READ_ONLY_BIDIR_SORTED_MAP_TYPE_BIDIR_MAP_ITERATOR (gee_read_only_bidir_sorted_map_bidir_map_iterator_get_type ()) +#define GEE_READ_ONLY_BIDIR_SORTED_MAP_BIDIR_MAP_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_READ_ONLY_BIDIR_SORTED_MAP_TYPE_BIDIR_MAP_ITERATOR, GeeReadOnlyBidirSortedMapBidirMapIterator)) +#define GEE_READ_ONLY_BIDIR_SORTED_MAP_BIDIR_MAP_ITERATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_READ_ONLY_BIDIR_SORTED_MAP_TYPE_BIDIR_MAP_ITERATOR, GeeReadOnlyBidirSortedMapBidirMapIteratorClass)) +#define GEE_READ_ONLY_BIDIR_SORTED_MAP_IS_BIDIR_MAP_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_READ_ONLY_BIDIR_SORTED_MAP_TYPE_BIDIR_MAP_ITERATOR)) +#define GEE_READ_ONLY_BIDIR_SORTED_MAP_IS_BIDIR_MAP_ITERATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_READ_ONLY_BIDIR_SORTED_MAP_TYPE_BIDIR_MAP_ITERATOR)) +#define GEE_READ_ONLY_BIDIR_SORTED_MAP_BIDIR_MAP_ITERATOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_READ_ONLY_BIDIR_SORTED_MAP_TYPE_BIDIR_MAP_ITERATOR, GeeReadOnlyBidirSortedMapBidirMapIteratorClass)) + +typedef struct _GeeReadOnlyBidirSortedMapBidirMapIterator GeeReadOnlyBidirSortedMapBidirMapIterator; +typedef struct _GeeReadOnlyBidirSortedMapBidirMapIteratorClass GeeReadOnlyBidirSortedMapBidirMapIteratorClass; +typedef struct _GeeReadOnlyBidirSortedMapBidirMapIteratorPrivate GeeReadOnlyBidirSortedMapBidirMapIteratorPrivate; + +#define GEE_READ_ONLY_LIST_TYPE_ITERATOR (gee_read_only_list_iterator_get_type ()) +#define GEE_READ_ONLY_LIST_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_READ_ONLY_LIST_TYPE_ITERATOR, GeeReadOnlyListIterator)) +#define GEE_READ_ONLY_LIST_ITERATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_READ_ONLY_LIST_TYPE_ITERATOR, GeeReadOnlyListIteratorClass)) +#define GEE_READ_ONLY_LIST_IS_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_READ_ONLY_LIST_TYPE_ITERATOR)) +#define GEE_READ_ONLY_LIST_IS_ITERATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_READ_ONLY_LIST_TYPE_ITERATOR)) +#define GEE_READ_ONLY_LIST_ITERATOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_READ_ONLY_LIST_TYPE_ITERATOR, GeeReadOnlyListIteratorClass)) + +typedef struct _GeeReadOnlyListIterator GeeReadOnlyListIterator; +typedef struct _GeeReadOnlyListIteratorClass GeeReadOnlyListIteratorClass; +typedef struct _GeeReadOnlyListIteratorPrivate GeeReadOnlyListIteratorPrivate; + +#define GEE_TYPE_READ_ONLY_MULTI_MAP (gee_read_only_multi_map_get_type ()) +#define GEE_READ_ONLY_MULTI_MAP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_READ_ONLY_MULTI_MAP, GeeReadOnlyMultiMap)) +#define GEE_READ_ONLY_MULTI_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_READ_ONLY_MULTI_MAP, GeeReadOnlyMultiMapClass)) +#define GEE_IS_READ_ONLY_MULTI_MAP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_READ_ONLY_MULTI_MAP)) +#define GEE_IS_READ_ONLY_MULTI_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_READ_ONLY_MULTI_MAP)) +#define GEE_READ_ONLY_MULTI_MAP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_READ_ONLY_MULTI_MAP, GeeReadOnlyMultiMapClass)) + +typedef struct _GeeReadOnlyMultiMap GeeReadOnlyMultiMap; +typedef struct _GeeReadOnlyMultiMapClass GeeReadOnlyMultiMapClass; +typedef struct _GeeReadOnlyMultiMapPrivate GeeReadOnlyMultiMapPrivate; + +#define GEE_TYPE_READ_ONLY_MULTI_SET (gee_read_only_multi_set_get_type ()) +#define GEE_READ_ONLY_MULTI_SET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_READ_ONLY_MULTI_SET, GeeReadOnlyMultiSet)) +#define GEE_READ_ONLY_MULTI_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_READ_ONLY_MULTI_SET, GeeReadOnlyMultiSetClass)) +#define GEE_IS_READ_ONLY_MULTI_SET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_READ_ONLY_MULTI_SET)) +#define GEE_IS_READ_ONLY_MULTI_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_READ_ONLY_MULTI_SET)) +#define GEE_READ_ONLY_MULTI_SET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_READ_ONLY_MULTI_SET, GeeReadOnlyMultiSetClass)) + +typedef struct _GeeReadOnlyMultiSet GeeReadOnlyMultiSet; +typedef struct _GeeReadOnlyMultiSetClass GeeReadOnlyMultiSetClass; +typedef struct _GeeReadOnlyMultiSetPrivate GeeReadOnlyMultiSetPrivate; + +#define GEE_TYPE_TIM_SORT (gee_tim_sort_get_type ()) +#define GEE_TIM_SORT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_TIM_SORT, GeeTimSort)) +#define GEE_TIM_SORT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_TIM_SORT, GeeTimSortClass)) +#define GEE_IS_TIM_SORT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_TIM_SORT)) +#define GEE_IS_TIM_SORT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_TIM_SORT)) +#define GEE_TIM_SORT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_TIM_SORT, GeeTimSortClass)) + +typedef struct _GeeTimSort GeeTimSort; +typedef struct _GeeTimSortClass GeeTimSortClass; +typedef struct _GeeTimSortPrivate GeeTimSortPrivate; + +#define GEE_TYPE_TREE_MAP (gee_tree_map_get_type ()) +#define GEE_TREE_MAP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_TREE_MAP, GeeTreeMap)) +#define GEE_TREE_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_TREE_MAP, GeeTreeMapClass)) +#define GEE_IS_TREE_MAP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_TREE_MAP)) +#define GEE_IS_TREE_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_TREE_MAP)) +#define GEE_TREE_MAP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_TREE_MAP, GeeTreeMapClass)) + +typedef struct _GeeTreeMap GeeTreeMap; +typedef struct _GeeTreeMapClass GeeTreeMapClass; +typedef struct _GeeTreeMapPrivate GeeTreeMapPrivate; + +#define GEE_TYPE_TREE_MULTI_MAP (gee_tree_multi_map_get_type ()) +#define GEE_TREE_MULTI_MAP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_TREE_MULTI_MAP, GeeTreeMultiMap)) +#define GEE_TREE_MULTI_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_TREE_MULTI_MAP, GeeTreeMultiMapClass)) +#define GEE_IS_TREE_MULTI_MAP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_TREE_MULTI_MAP)) +#define GEE_IS_TREE_MULTI_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_TREE_MULTI_MAP)) +#define GEE_TREE_MULTI_MAP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_TREE_MULTI_MAP, GeeTreeMultiMapClass)) + +typedef struct _GeeTreeMultiMap GeeTreeMultiMap; +typedef struct _GeeTreeMultiMapClass GeeTreeMultiMapClass; +typedef struct _GeeTreeMultiMapPrivate GeeTreeMultiMapPrivate; + +#define GEE_TYPE_TREE_MULTI_SET (gee_tree_multi_set_get_type ()) +#define GEE_TREE_MULTI_SET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_TREE_MULTI_SET, GeeTreeMultiSet)) +#define GEE_TREE_MULTI_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_TREE_MULTI_SET, GeeTreeMultiSetClass)) +#define GEE_IS_TREE_MULTI_SET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_TREE_MULTI_SET)) +#define GEE_IS_TREE_MULTI_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_TREE_MULTI_SET)) +#define GEE_TREE_MULTI_SET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_TREE_MULTI_SET, GeeTreeMultiSetClass)) + +typedef struct _GeeTreeMultiSet GeeTreeMultiSet; +typedef struct _GeeTreeMultiSetClass GeeTreeMultiSetClass; +typedef struct _GeeTreeMultiSetPrivate GeeTreeMultiSetPrivate; + +#define GEE_TYPE_TREE_SET (gee_tree_set_get_type ()) +#define GEE_TREE_SET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_TREE_SET, GeeTreeSet)) +#define GEE_TREE_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_TREE_SET, GeeTreeSetClass)) +#define GEE_IS_TREE_SET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_TREE_SET)) +#define GEE_IS_TREE_SET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_TREE_SET)) +#define GEE_TREE_SET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_TREE_SET, GeeTreeSetClass)) + +typedef struct _GeeTreeSet GeeTreeSet; +typedef struct _GeeTreeSetClass GeeTreeSetClass; +typedef struct _GeeTreeSetPrivate GeeTreeSetPrivate; + +#define GEE_TYPE_UNFOLD_ITERATOR (gee_unfold_iterator_get_type ()) +#define GEE_UNFOLD_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_UNFOLD_ITERATOR, GeeUnfoldIterator)) +#define GEE_UNFOLD_ITERATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_UNFOLD_ITERATOR, GeeUnfoldIteratorClass)) +#define GEE_IS_UNFOLD_ITERATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_UNFOLD_ITERATOR)) +#define GEE_IS_UNFOLD_ITERATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_UNFOLD_ITERATOR)) +#define GEE_UNFOLD_ITERATOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_UNFOLD_ITERATOR, GeeUnfoldIteratorClass)) + +typedef struct _GeeUnfoldIterator GeeUnfoldIterator; +typedef struct _GeeUnfoldIteratorClass GeeUnfoldIteratorClass; +typedef struct _GeeUnfoldIteratorPrivate GeeUnfoldIteratorPrivate; + +typedef gboolean (*GeeForallFunc) (gpointer g, void* user_data); +typedef enum { + GEE_TRAVERSABLE_STREAM_YIELD, + GEE_TRAVERSABLE_STREAM_CONTINUE, + GEE_TRAVERSABLE_STREAM_END +} GeeTraversableStream; + +typedef GeeTraversableStream (*GeeStreamFunc) (GeeTraversableStream state, GeeLazy* g, GeeLazy** lazy, void* user_data); +struct _GeeIteratorIface { + GTypeInterface parent_iface; + gboolean (*next) (GeeIterator* self); + gboolean (*has_next) (GeeIterator* self); + gpointer (*get) (GeeIterator* self); + void (*remove) (GeeIterator* self); + gboolean (*get_valid) (GeeIterator* self); + gboolean (*get_read_only) (GeeIterator* self); +}; + +typedef gpointer (*GeeFoldFunc) (gpointer g, gpointer a, void* user_data); +typedef gpointer (*GeeMapFunc) (gpointer g, void* user_data); +typedef gboolean (*GeePredicate) (gconstpointer g, void* user_data); +struct _GeeTraversableIface { + GTypeInterface parent_iface; + GType (*get_g_type) (GeeTraversable* self); + GBoxedCopyFunc (*get_g_dup_func) (GeeTraversable* self); + GDestroyNotify (*get_g_destroy_func) (GeeTraversable* self); + gboolean (*foreach) (GeeTraversable* self, GeeForallFunc f, void* f_target); + GeeIterator* (*stream) (GeeTraversable* self, GType a_type, GBoxedCopyFunc a_dup_func, GDestroyNotify a_destroy_func, GeeStreamFunc f, void* f_target, GDestroyNotify f_target_destroy_notify); + gpointer (*fold) (GeeTraversable* self, GType a_type, GBoxedCopyFunc a_dup_func, GDestroyNotify a_destroy_func, GeeFoldFunc f, void* f_target, gpointer seed); + GeeIterator* (*map) (GeeTraversable* self, GType a_type, GBoxedCopyFunc a_dup_func, GDestroyNotify a_destroy_func, GeeMapFunc f, void* f_target); + GeeIterator* (*scan) (GeeTraversable* self, GType a_type, GBoxedCopyFunc a_dup_func, GDestroyNotify a_destroy_func, GeeFoldFunc f, void* f_target, gpointer seed); + GeeIterator* (*filter) (GeeTraversable* self, GeePredicate pred, void* pred_target, GDestroyNotify pred_target_destroy_notify); + GeeIterator* (*chop) (GeeTraversable* self, gint offset, gint length); + GType (*get_element_type) (GeeTraversable* self); +}; + +struct _GeeIterableIface { + GTypeInterface parent_iface; + GType (*get_g_type) (GeeIterable* self); + GBoxedCopyFunc (*get_g_dup_func) (GeeIterable* self); + GDestroyNotify (*get_g_destroy_func) (GeeIterable* self); + GeeIterator* (*iterator) (GeeIterable* self); +}; + +struct _GeeCollectionIface { + GTypeInterface parent_iface; + GType (*get_g_type) (GeeCollection* self); + GBoxedCopyFunc (*get_g_dup_func) (GeeCollection* self); + GDestroyNotify (*get_g_destroy_func) (GeeCollection* self); + gboolean (*contains) (GeeCollection* self, gconstpointer item); + gboolean (*add) (GeeCollection* self, gconstpointer item); + gboolean (*remove) (GeeCollection* self, gconstpointer item); + void (*clear) (GeeCollection* self); + gboolean (*add_all) (GeeCollection* self, GeeCollection* collection); + gboolean (*contains_all) (GeeCollection* self, GeeCollection* collection); + gboolean (*remove_all) (GeeCollection* self, GeeCollection* collection); + gboolean (*retain_all) (GeeCollection* self, GeeCollection* collection); + gpointer* (*to_array) (GeeCollection* self, int* result_length1); + gint (*get_size) (GeeCollection* self); + gboolean (*get_is_empty) (GeeCollection* self); + gboolean (*get_read_only) (GeeCollection* self); + GeeCollection* (*get_read_only_view) (GeeCollection* self); +}; + +struct _GeeAbstractCollection { + GObject parent_instance; + GeeAbstractCollectionPrivate * priv; +}; + +struct _GeeAbstractCollectionClass { + GObjectClass parent_class; + gboolean (*contains) (GeeAbstractCollection* self, gconstpointer item); + gboolean (*add) (GeeAbstractCollection* self, gconstpointer item); + gboolean (*remove) (GeeAbstractCollection* self, gconstpointer item); + void (*clear) (GeeAbstractCollection* self); + GeeIterator* (*iterator) (GeeAbstractCollection* self); + gboolean (*foreach) (GeeAbstractCollection* self, GeeForallFunc f, void* f_target); + void (*reserved0) (GeeAbstractCollection* self); + void (*reserved1) (GeeAbstractCollection* self); + void (*reserved2) (GeeAbstractCollection* self); + void (*reserved3) (GeeAbstractCollection* self); + void (*reserved4) (GeeAbstractCollection* self); + void (*reserved5) (GeeAbstractCollection* self); + void (*reserved6) (GeeAbstractCollection* self); + void (*reserved7) (GeeAbstractCollection* self); + void (*reserved8) (GeeAbstractCollection* self); + void (*reserved9) (GeeAbstractCollection* self); + gint (*get_size) (GeeAbstractCollection* self); + gboolean (*get_read_only) (GeeAbstractCollection* self); + GeeCollection* (*get_read_only_view) (GeeAbstractCollection* self); +}; + +struct _GeeListIteratorIface { + GTypeInterface parent_iface; + void (*set) (GeeListIterator* self, gconstpointer item); + void (*add) (GeeListIterator* self, gconstpointer item); + gint (*index) (GeeListIterator* self); +}; + +struct _GeeListIface { + GTypeInterface parent_iface; + GType (*get_g_type) (GeeList* self); + GBoxedCopyFunc (*get_g_dup_func) (GeeList* self); + GDestroyNotify (*get_g_destroy_func) (GeeList* self); + GeeListIterator* (*list_iterator) (GeeList* self); + gpointer (*get) (GeeList* self, gint index); + void (*set) (GeeList* self, gint index, gconstpointer item); + gint (*index_of) (GeeList* self, gconstpointer item); + void (*insert) (GeeList* self, gint index, gconstpointer item); + gpointer (*remove_at) (GeeList* self, gint index); + GeeList* (*slice) (GeeList* self, gint start, gint stop); + gpointer (*first) (GeeList* self); + gpointer (*last) (GeeList* self); + void (*insert_all) (GeeList* self, gint index, GeeCollection* collection); + void (*sort) (GeeList* self, GCompareDataFunc compare_func, void* compare_func_target, GDestroyNotify compare_func_target_destroy_notify); + GeeList* (*get_read_only_view) (GeeList* self); +}; + +struct _GeeAbstractList { + GeeAbstractCollection parent_instance; + GeeAbstractListPrivate * priv; +}; + +struct _GeeAbstractListClass { + GeeAbstractCollectionClass parent_class; + GeeListIterator* (*list_iterator) (GeeAbstractList* self); + gpointer (*get) (GeeAbstractList* self, gint index); + void (*set) (GeeAbstractList* self, gint index, gconstpointer item); + gint (*index_of) (GeeAbstractList* self, gconstpointer item); + void (*insert) (GeeAbstractList* self, gint index, gconstpointer item); + gpointer (*remove_at) (GeeAbstractList* self, gint index); + GeeList* (*slice) (GeeAbstractList* self, gint start, gint stop); + void (*reserved0) (GeeAbstractList* self); + void (*reserved1) (GeeAbstractList* self); + void (*reserved2) (GeeAbstractList* self); + void (*reserved3) (GeeAbstractList* self); + void (*reserved4) (GeeAbstractList* self); + void (*reserved5) (GeeAbstractList* self); + void (*reserved6) (GeeAbstractList* self); + void (*reserved7) (GeeAbstractList* self); + void (*reserved8) (GeeAbstractList* self); + void (*reserved9) (GeeAbstractList* self); + GeeList* (*get_read_only_view) (GeeAbstractList* self); +}; + +struct _GeeBidirIteratorIface { + GTypeInterface parent_iface; + GType (*get_g_type) (GeeBidirIterator* self); + GBoxedCopyFunc (*get_g_dup_func) (GeeBidirIterator* self); + GDestroyNotify (*get_g_destroy_func) (GeeBidirIterator* self); + gboolean (*previous) (GeeBidirIterator* self); + gboolean (*has_previous) (GeeBidirIterator* self); + gboolean (*first) (GeeBidirIterator* self); + gboolean (*last) (GeeBidirIterator* self); +}; + +struct _GeeBidirListIteratorIface { + GTypeInterface parent_iface; + GType (*get_g_type) (GeeBidirListIterator* self); + GBoxedCopyFunc (*get_g_dup_func) (GeeBidirListIterator* self); + GDestroyNotify (*get_g_destroy_func) (GeeBidirListIterator* self); + void (*insert) (GeeBidirListIterator* self, gconstpointer item); +}; + +struct _GeeBidirListIface { + GTypeInterface parent_iface; + GType (*get_g_type) (GeeBidirList* self); + GBoxedCopyFunc (*get_g_dup_func) (GeeBidirList* self); + GDestroyNotify (*get_g_destroy_func) (GeeBidirList* self); + GeeBidirListIterator* (*bidir_list_iterator) (GeeBidirList* self); + GeeBidirList* (*get_read_only_view) (GeeBidirList* self); +}; + +struct _GeeAbstractBidirList { + GeeAbstractList parent_instance; + GeeAbstractBidirListPrivate * priv; +}; + +struct _GeeAbstractBidirListClass { + GeeAbstractListClass parent_class; + GeeBidirListIterator* (*bidir_list_iterator) (GeeAbstractBidirList* self); + void (*reserved0) (GeeAbstractBidirList* self); + void (*reserved1) (GeeAbstractBidirList* self); + void (*reserved2) (GeeAbstractBidirList* self); + void (*reserved3) (GeeAbstractBidirList* self); + void (*reserved4) (GeeAbstractBidirList* self); + void (*reserved5) (GeeAbstractBidirList* self); + void (*reserved6) (GeeAbstractBidirList* self); + void (*reserved7) (GeeAbstractBidirList* self); + void (*reserved8) (GeeAbstractBidirList* self); + void (*reserved9) (GeeAbstractBidirList* self); + GeeBidirList* (*get_read_only_view) (GeeAbstractBidirList* self); +}; + +struct _GeeSetIface { + GTypeInterface parent_iface; + GType (*get_g_type) (GeeSet* self); + GBoxedCopyFunc (*get_g_dup_func) (GeeSet* self); + GDestroyNotify (*get_g_destroy_func) (GeeSet* self); + GeeSet* (*get_read_only_view) (GeeSet* self); +}; + +struct _GeeAbstractSet { + GeeAbstractCollection parent_instance; + GeeAbstractSetPrivate * priv; +}; + +struct _GeeAbstractSetClass { + GeeAbstractCollectionClass parent_class; + void (*reserved0) (GeeAbstractSet* self); + void (*reserved1) (GeeAbstractSet* self); + void (*reserved2) (GeeAbstractSet* self); + void (*reserved3) (GeeAbstractSet* self); + void (*reserved4) (GeeAbstractSet* self); + void (*reserved5) (GeeAbstractSet* self); + void (*reserved6) (GeeAbstractSet* self); + void (*reserved7) (GeeAbstractSet* self); + void (*reserved8) (GeeAbstractSet* self); + void (*reserved9) (GeeAbstractSet* self); + GeeSet* (*get_read_only_view) (GeeAbstractSet* self); +}; + +struct _GeeSortedSetIface { + GTypeInterface parent_iface; + GType (*get_g_type) (GeeSortedSet* self); + GBoxedCopyFunc (*get_g_dup_func) (GeeSortedSet* self); + GDestroyNotify (*get_g_destroy_func) (GeeSortedSet* self); + gpointer (*first) (GeeSortedSet* self); + gpointer (*last) (GeeSortedSet* self); + GeeIterator* (*iterator_at) (GeeSortedSet* self, gconstpointer element); + gpointer (*lower) (GeeSortedSet* self, gconstpointer element); + gpointer (*higher) (GeeSortedSet* self, gconstpointer element); + gpointer (*floor) (GeeSortedSet* self, gconstpointer element); + gpointer (*ceil) (GeeSortedSet* self, gconstpointer element); + GeeSortedSet* (*head_set) (GeeSortedSet* self, gconstpointer before); + GeeSortedSet* (*tail_set) (GeeSortedSet* self, gconstpointer after); + GeeSortedSet* (*sub_set) (GeeSortedSet* self, gconstpointer from, gconstpointer to); + GeeSortedSet* (*get_read_only_view) (GeeSortedSet* self); +}; + +struct _GeeAbstractSortedSet { + GeeAbstractSet parent_instance; + GeeAbstractSortedSetPrivate * priv; +}; + +struct _GeeAbstractSortedSetClass { + GeeAbstractSetClass parent_class; + gpointer (*first) (GeeAbstractSortedSet* self); + gpointer (*last) (GeeAbstractSortedSet* self); + GeeIterator* (*iterator_at) (GeeAbstractSortedSet* self, gconstpointer element); + gpointer (*lower) (GeeAbstractSortedSet* self, gconstpointer element); + gpointer (*higher) (GeeAbstractSortedSet* self, gconstpointer element); + gpointer (*floor) (GeeAbstractSortedSet* self, gconstpointer element); + gpointer (*ceil) (GeeAbstractSortedSet* self, gconstpointer element); + GeeSortedSet* (*head_set) (GeeAbstractSortedSet* self, gconstpointer before); + GeeSortedSet* (*tail_set) (GeeAbstractSortedSet* self, gconstpointer after); + GeeSortedSet* (*sub_set) (GeeAbstractSortedSet* self, gconstpointer from, gconstpointer to); + void (*reserved0) (GeeAbstractSortedSet* self); + void (*reserved1) (GeeAbstractSortedSet* self); + void (*reserved2) (GeeAbstractSortedSet* self); + void (*reserved3) (GeeAbstractSortedSet* self); + void (*reserved4) (GeeAbstractSortedSet* self); + void (*reserved5) (GeeAbstractSortedSet* self); + void (*reserved6) (GeeAbstractSortedSet* self); + void (*reserved7) (GeeAbstractSortedSet* self); + void (*reserved8) (GeeAbstractSortedSet* self); + void (*reserved9) (GeeAbstractSortedSet* self); + GeeSortedSet* (*get_read_only_view) (GeeAbstractSortedSet* self); +}; + +struct _GeeBidirSortedSetIface { + GTypeInterface parent_iface; + GType (*get_g_type) (GeeBidirSortedSet* self); + GBoxedCopyFunc (*get_g_dup_func) (GeeBidirSortedSet* self); + GDestroyNotify (*get_g_destroy_func) (GeeBidirSortedSet* self); + GeeBidirIterator* (*bidir_iterator) (GeeBidirSortedSet* self); + GeeBidirSortedSet* (*get_read_only_view) (GeeBidirSortedSet* self); +}; + +struct _GeeAbstractBidirSortedSet { + GeeAbstractSortedSet parent_instance; + GeeAbstractBidirSortedSetPrivate * priv; +}; + +struct _GeeAbstractBidirSortedSetClass { + GeeAbstractSortedSetClass parent_class; + GeeBidirIterator* (*bidir_iterator) (GeeAbstractBidirSortedSet* self); + void (*reserved0) (GeeAbstractBidirSortedSet* self); + void (*reserved1) (GeeAbstractBidirSortedSet* self); + void (*reserved2) (GeeAbstractBidirSortedSet* self); + void (*reserved3) (GeeAbstractBidirSortedSet* self); + void (*reserved4) (GeeAbstractBidirSortedSet* self); + void (*reserved5) (GeeAbstractBidirSortedSet* self); + void (*reserved6) (GeeAbstractBidirSortedSet* self); + void (*reserved7) (GeeAbstractBidirSortedSet* self); + void (*reserved8) (GeeAbstractBidirSortedSet* self); + void (*reserved9) (GeeAbstractBidirSortedSet* self); + GeeBidirSortedSet* (*get_read_only_view) (GeeAbstractBidirSortedSet* self); +}; + +typedef gpointer (*GeeFoldMapFunc) (gconstpointer k, gconstpointer v, gpointer a, void* user_data); +typedef gboolean (*GeeForallMapFunc) (gconstpointer k, gconstpointer v, void* user_data); +struct _GeeMapIteratorIface { + GTypeInterface parent_iface; + GType (*get_k_type) (GeeMapIterator* self); + GBoxedCopyFunc (*get_k_dup_func) (GeeMapIterator* self); + GDestroyNotify (*get_k_destroy_func) (GeeMapIterator* self); + GType (*get_v_type) (GeeMapIterator* self); + GBoxedCopyFunc (*get_v_dup_func) (GeeMapIterator* self); + GDestroyNotify (*get_v_destroy_func) (GeeMapIterator* self); + gboolean (*next) (GeeMapIterator* self); + gboolean (*has_next) (GeeMapIterator* self); + gpointer (*get_key) (GeeMapIterator* self); + gpointer (*get_value) (GeeMapIterator* self); + void (*set_value) (GeeMapIterator* self, gconstpointer value); + void (*unset) (GeeMapIterator* self); + gpointer (*fold) (GeeMapIterator* self, GType a_type, GBoxedCopyFunc a_dup_func, GDestroyNotify a_destroy_func, GeeFoldMapFunc f, void* f_target, gpointer seed); + gboolean (*foreach) (GeeMapIterator* self, GeeForallMapFunc f, void* f_target); + gboolean (*get_valid) (GeeMapIterator* self); + gboolean (*get_mutable) (GeeMapIterator* self); + gboolean (*get_read_only) (GeeMapIterator* self); +}; + +struct _GeeMapIface { + GTypeInterface parent_iface; + GType (*get_k_type) (GeeMap* self); + GBoxedCopyFunc (*get_k_dup_func) (GeeMap* self); + GDestroyNotify (*get_k_destroy_func) (GeeMap* self); + GType (*get_v_type) (GeeMap* self); + GBoxedCopyFunc (*get_v_dup_func) (GeeMap* self); + GDestroyNotify (*get_v_destroy_func) (GeeMap* self); + gboolean (*has_key) (GeeMap* self, gconstpointer key); + gboolean (*has) (GeeMap* self, gconstpointer key, gconstpointer value); + gpointer (*get) (GeeMap* self, gconstpointer key); + void (*set) (GeeMap* self, gconstpointer key, gconstpointer value); + gboolean (*unset) (GeeMap* self, gconstpointer key, gpointer* value); + void (*clear) (GeeMap* self); + GeeMapIterator* (*map_iterator) (GeeMap* self); + void (*set_all) (GeeMap* self, GeeMap* map); + gboolean (*unset_all) (GeeMap* self, GeeMap* map); + gboolean (*has_all) (GeeMap* self, GeeMap* map); + gint (*get_size) (GeeMap* self); + gboolean (*get_is_empty) (GeeMap* self); + gboolean (*get_read_only) (GeeMap* self); + GeeSet* (*get_keys) (GeeMap* self); + GeeCollection* (*get_values) (GeeMap* self); + GeeSet* (*get_entries) (GeeMap* self); + GeeMap* (*get_read_only_view) (GeeMap* self); +}; + +struct _GeeAbstractMap { + GObject parent_instance; + GeeAbstractMapPrivate * priv; +}; + +struct _GeeAbstractMapClass { + GObjectClass parent_class; + gboolean (*has_key) (GeeAbstractMap* self, gconstpointer key); + gboolean (*has) (GeeAbstractMap* self, gconstpointer key, gconstpointer value); + gpointer (*get) (GeeAbstractMap* self, gconstpointer key); + void (*set) (GeeAbstractMap* self, gconstpointer key, gconstpointer value); + gboolean (*unset) (GeeAbstractMap* self, gconstpointer key, gpointer* value); + GeeMapIterator* (*map_iterator) (GeeAbstractMap* self); + void (*clear) (GeeAbstractMap* self); + gboolean (*foreach) (GeeAbstractMap* self, GeeForallFunc f, void* f_target); + GeeIterator* (*stream) (GeeAbstractMap* self, GType a_type, GBoxedCopyFunc a_dup_func, GDestroyNotify a_destroy_func, GeeStreamFunc f, void* f_target, GDestroyNotify f_target_destroy_notify); + void (*reserved0) (GeeAbstractMap* self); + void (*reserved1) (GeeAbstractMap* self); + void (*reserved2) (GeeAbstractMap* self); + void (*reserved3) (GeeAbstractMap* self); + void (*reserved4) (GeeAbstractMap* self); + void (*reserved5) (GeeAbstractMap* self); + void (*reserved6) (GeeAbstractMap* self); + void (*reserved7) (GeeAbstractMap* self); + void (*reserved8) (GeeAbstractMap* self); + void (*reserved9) (GeeAbstractMap* self); + gint (*get_size) (GeeAbstractMap* self); + gboolean (*get_read_only) (GeeAbstractMap* self); + GeeSet* (*get_keys) (GeeAbstractMap* self); + GeeCollection* (*get_values) (GeeAbstractMap* self); + GeeSet* (*get_entries) (GeeAbstractMap* self); + GeeMap* (*get_read_only_view) (GeeAbstractMap* self); +}; + +struct _GeeSortedMapIface { + GTypeInterface parent_iface; + GeeSortedMap* (*head_map) (GeeSortedMap* self, gconstpointer before); + GeeSortedMap* (*tail_map) (GeeSortedMap* self, gconstpointer after); + GeeSortedMap* (*sub_map) (GeeSortedMap* self, gconstpointer before, gconstpointer after); + GeeSortedSet* (*get_ascending_keys) (GeeSortedMap* self); + GeeSortedSet* (*get_ascending_entries) (GeeSortedMap* self); + GeeSortedMap* (*get_read_only_view) (GeeSortedMap* self); +}; + +struct _GeeAbstractSortedMap { + GeeAbstractMap parent_instance; + GeeAbstractSortedMapPrivate * priv; +}; + +struct _GeeAbstractSortedMapClass { + GeeAbstractMapClass parent_class; + GeeSortedMap* (*head_map) (GeeAbstractSortedMap* self, gconstpointer before); + GeeSortedMap* (*tail_map) (GeeAbstractSortedMap* self, gconstpointer after); + GeeSortedMap* (*sub_map) (GeeAbstractSortedMap* self, gconstpointer before, gconstpointer after); + void (*reserved0) (GeeAbstractSortedMap* self); + void (*reserved1) (GeeAbstractSortedMap* self); + void (*reserved2) (GeeAbstractSortedMap* self); + void (*reserved3) (GeeAbstractSortedMap* self); + void (*reserved4) (GeeAbstractSortedMap* self); + void (*reserved5) (GeeAbstractSortedMap* self); + void (*reserved6) (GeeAbstractSortedMap* self); + void (*reserved7) (GeeAbstractSortedMap* self); + void (*reserved8) (GeeAbstractSortedMap* self); + void (*reserved9) (GeeAbstractSortedMap* self); + GeeSortedSet* (*get_ascending_keys) (GeeAbstractSortedMap* self); + GeeSortedSet* (*get_ascending_entries) (GeeAbstractSortedMap* self); +}; + +struct _GeeBidirMapIteratorIface { + GTypeInterface parent_iface; + GType (*get_k_type) (GeeBidirMapIterator* self); + GBoxedCopyFunc (*get_k_dup_func) (GeeBidirMapIterator* self); + GDestroyNotify (*get_k_destroy_func) (GeeBidirMapIterator* self); + GType (*get_v_type) (GeeBidirMapIterator* self); + GBoxedCopyFunc (*get_v_dup_func) (GeeBidirMapIterator* self); + GDestroyNotify (*get_v_destroy_func) (GeeBidirMapIterator* self); + gboolean (*previous) (GeeBidirMapIterator* self); + gboolean (*has_previous) (GeeBidirMapIterator* self); + gboolean (*first) (GeeBidirMapIterator* self); + gboolean (*last) (GeeBidirMapIterator* self); +}; + +struct _GeeBidirSortedMapIface { + GTypeInterface parent_iface; + GType (*get_k_type) (GeeBidirSortedMap* self); + GBoxedCopyFunc (*get_k_dup_func) (GeeBidirSortedMap* self); + GDestroyNotify (*get_k_destroy_func) (GeeBidirSortedMap* self); + GType (*get_v_type) (GeeBidirSortedMap* self); + GBoxedCopyFunc (*get_v_dup_func) (GeeBidirSortedMap* self); + GDestroyNotify (*get_v_destroy_func) (GeeBidirSortedMap* self); + GeeBidirMapIterator* (*bidir_map_iterator) (GeeBidirSortedMap* self); + GeeBidirSortedMap* (*get_read_only_view) (GeeBidirSortedMap* self); +}; + +struct _GeeAbstractBidirSortedMap { + GeeAbstractSortedMap parent_instance; + GeeAbstractBidirSortedMapPrivate * priv; +}; + +struct _GeeAbstractBidirSortedMapClass { + GeeAbstractSortedMapClass parent_class; + GeeBidirMapIterator* (*bidir_map_iterator) (GeeAbstractBidirSortedMap* self); + void (*reserved0) (GeeAbstractBidirSortedMap* self); + void (*reserved1) (GeeAbstractBidirSortedMap* self); + void (*reserved2) (GeeAbstractBidirSortedMap* self); + void (*reserved3) (GeeAbstractBidirSortedMap* self); + void (*reserved4) (GeeAbstractBidirSortedMap* self); + void (*reserved5) (GeeAbstractBidirSortedMap* self); + void (*reserved6) (GeeAbstractBidirSortedMap* self); + void (*reserved7) (GeeAbstractBidirSortedMap* self); + void (*reserved8) (GeeAbstractBidirSortedMap* self); + void (*reserved9) (GeeAbstractBidirSortedMap* self); + GeeBidirSortedMap* (*get_read_only_view) (GeeAbstractBidirSortedMap* self); +}; + +struct _GeeMultiSetIface { + GTypeInterface parent_iface; + GType (*get_g_type) (GeeMultiSet* self); + GBoxedCopyFunc (*get_g_dup_func) (GeeMultiSet* self); + GDestroyNotify (*get_g_destroy_func) (GeeMultiSet* self); + gint (*count) (GeeMultiSet* self, gconstpointer item); + GeeMultiSet* (*get_read_only_view) (GeeMultiSet* self); +}; + +struct _GeeMultiMapIface { + GTypeInterface parent_iface; + GType (*get_k_type) (GeeMultiMap* self); + GBoxedCopyFunc (*get_k_dup_func) (GeeMultiMap* self); + GDestroyNotify (*get_k_destroy_func) (GeeMultiMap* self); + GType (*get_v_type) (GeeMultiMap* self); + GBoxedCopyFunc (*get_v_dup_func) (GeeMultiMap* self); + GDestroyNotify (*get_v_destroy_func) (GeeMultiMap* self); + GeeSet* (*get_keys) (GeeMultiMap* self); + GeeMultiSet* (*get_all_keys) (GeeMultiMap* self); + GeeCollection* (*get_values) (GeeMultiMap* self); + gboolean (*contains) (GeeMultiMap* self, gconstpointer key); + GeeCollection* (*get) (GeeMultiMap* self, gconstpointer key); + void (*set) (GeeMultiMap* self, gconstpointer key, gconstpointer value); + gboolean (*remove) (GeeMultiMap* self, gconstpointer key, gconstpointer value); + gboolean (*remove_all) (GeeMultiMap* self, gconstpointer key); + void (*clear) (GeeMultiMap* self); + GeeMapIterator* (*map_iterator) (GeeMultiMap* self); + gint (*get_size) (GeeMultiMap* self); + gboolean (*get_read_only) (GeeMultiMap* self); + GeeMultiMap* (*get_read_only_view) (GeeMultiMap* self); +}; + +typedef gboolean (*GeeEqualDataFunc) (gconstpointer a, gconstpointer b, void* user_data); +struct _GeeAbstractMultiMap { + GObject parent_instance; + GeeAbstractMultiMapPrivate * priv; + GeeMap* _storage_map; +}; + +struct _GeeAbstractMultiMapClass { + GObjectClass parent_class; + GeeCollection* (*create_value_storage) (GeeAbstractMultiMap* self); + GeeMultiSet* (*create_multi_key_set) (GeeAbstractMultiMap* self); + GeeEqualDataFunc (*get_value_equal_func) (GeeAbstractMultiMap* self, void** result_target, GDestroyNotify* result_target_destroy_notify); + void (*reserved0) (GeeAbstractMultiMap* self); + void (*reserved1) (GeeAbstractMultiMap* self); + void (*reserved2) (GeeAbstractMultiMap* self); + void (*reserved3) (GeeAbstractMultiMap* self); + void (*reserved4) (GeeAbstractMultiMap* self); + void (*reserved5) (GeeAbstractMultiMap* self); + void (*reserved6) (GeeAbstractMultiMap* self); + void (*reserved7) (GeeAbstractMultiMap* self); + void (*reserved8) (GeeAbstractMultiMap* self); + GeeMultiMap* (*get_read_only_view) (GeeAbstractMultiMap* self); +}; + +struct _GeeAbstractMultiSet { + GeeAbstractCollection parent_instance; + GeeAbstractMultiSetPrivate * priv; + GeeMap* _storage_map; +}; + +struct _GeeAbstractMultiSetClass { + GeeAbstractCollectionClass parent_class; + void (*reserved0) (GeeAbstractMultiSet* self); + void (*reserved1) (GeeAbstractMultiSet* self); + void (*reserved2) (GeeAbstractMultiSet* self); + void (*reserved3) (GeeAbstractMultiSet* self); + void (*reserved4) (GeeAbstractMultiSet* self); + void (*reserved5) (GeeAbstractMultiSet* self); + void (*reserved6) (GeeAbstractMultiSet* self); + void (*reserved7) (GeeAbstractMultiSet* self); + void (*reserved8) (GeeAbstractMultiSet* self); + GeeMultiSet* (*get_read_only_view) (GeeAbstractMultiSet* self); +}; + +struct _GeeQueueIface { + GTypeInterface parent_iface; + GType (*get_g_type) (GeeQueue* self); + GBoxedCopyFunc (*get_g_dup_func) (GeeQueue* self); + GDestroyNotify (*get_g_destroy_func) (GeeQueue* self); + gboolean (*offer) (GeeQueue* self, gconstpointer element); + gpointer (*peek) (GeeQueue* self); + gpointer (*poll) (GeeQueue* self); + gint (*drain) (GeeQueue* self, GeeCollection* recipient, gint amount); + gint (*get_capacity) (GeeQueue* self); + gint (*get_remaining_capacity) (GeeQueue* self); + gboolean (*get_is_full) (GeeQueue* self); +}; + +struct _GeeAbstractQueue { + GeeAbstractCollection parent_instance; + GeeAbstractQueuePrivate * priv; +}; + +struct _GeeAbstractQueueClass { + GeeAbstractCollectionClass parent_class; + gpointer (*peek) (GeeAbstractQueue* self); + gpointer (*poll) (GeeAbstractQueue* self); + void (*reserved0) (GeeAbstractQueue* self); + void (*reserved1) (GeeAbstractQueue* self); + void (*reserved2) (GeeAbstractQueue* self); + void (*reserved3) (GeeAbstractQueue* self); + void (*reserved4) (GeeAbstractQueue* self); + void (*reserved5) (GeeAbstractQueue* self); + void (*reserved6) (GeeAbstractQueue* self); + void (*reserved7) (GeeAbstractQueue* self); + void (*reserved8) (GeeAbstractQueue* self); + void (*reserved9) (GeeAbstractQueue* self); + gint (*get_capacity) (GeeAbstractQueue* self); + gint (*get_remaining_capacity) (GeeAbstractQueue* self); + gboolean (*get_is_full) (GeeAbstractQueue* self); +}; + +struct _GeeArrayList { + GeeAbstractBidirList parent_instance; + GeeArrayListPrivate * priv; + gpointer* _items; + gint _items_length1; + gint __items_size_; + gint _size; +}; + +struct _GeeArrayListClass { + GeeAbstractBidirListClass parent_class; +}; + +struct _GeeDequeIface { + GTypeInterface parent_iface; + GType (*get_g_type) (GeeDeque* self); + GBoxedCopyFunc (*get_g_dup_func) (GeeDeque* self); + GDestroyNotify (*get_g_destroy_func) (GeeDeque* self); + gboolean (*offer_head) (GeeDeque* self, gconstpointer element); + gpointer (*peek_head) (GeeDeque* self); + gpointer (*poll_head) (GeeDeque* self); + gint (*drain_head) (GeeDeque* self, GeeCollection* recipient, gint amount); + gboolean (*offer_tail) (GeeDeque* self, gconstpointer element); + gpointer (*peek_tail) (GeeDeque* self); + gpointer (*poll_tail) (GeeDeque* self); + gint (*drain_tail) (GeeDeque* self, GeeCollection* recipient, gint amount); +}; + +struct _GeeArrayQueue { + GeeAbstractQueue parent_instance; + GeeArrayQueuePrivate * priv; +}; + +struct _GeeArrayQueueClass { + GeeAbstractQueueClass parent_class; +}; + +struct _GeeComparableIface { + GTypeInterface parent_iface; + gint (*compare_to) (GeeComparable* self, gconstpointer object); +}; + +struct _GeeConcurrentList { + GeeAbstractList parent_instance; + GeeConcurrentListPrivate * priv; +}; + +struct _GeeConcurrentListClass { + GeeAbstractListClass parent_class; +}; + +struct _GeeConcurrentSet { + GeeAbstractSortedSet parent_instance; + GeeConcurrentSetPrivate * priv; +}; + +struct _GeeConcurrentSetClass { + GeeAbstractSortedSetClass parent_class; +}; + +typedef enum { + GEE_CONCURRENT_SET_RANGE_TYPE_HEAD, + GEE_CONCURRENT_SET_RANGE_TYPE_TAIL, + GEE_CONCURRENT_SET_RANGE_TYPE_BOUNDED, + GEE_CONCURRENT_SET_RANGE_TYPE_EMPTY +} GeeConcurrentSetRangeType; + +typedef guint (*GeeHashDataFunc) (gconstpointer v, void* user_data); +struct _GeeHashableIface { + GTypeInterface parent_iface; + guint (*hash) (GeeHashable* self); + gboolean (*equal_to) (GeeHashable* self, gconstpointer object); +}; + +struct _GeeHashMap { + GeeAbstractMap parent_instance; + GeeHashMapPrivate * priv; +}; + +struct _GeeHashMapClass { + GeeAbstractMapClass parent_class; +}; + +struct _GeeHashMultiMap { + GeeAbstractMultiMap parent_instance; + GeeHashMultiMapPrivate * priv; +}; + +struct _GeeHashMultiMapClass { + GeeAbstractMultiMapClass parent_class; +}; + +struct _GeeHashMultiSet { + GeeAbstractMultiSet parent_instance; + GeeHashMultiSetPrivate * priv; +}; + +struct _GeeHashMultiSetClass { + GeeAbstractMultiSetClass parent_class; +}; + +struct _GeeHashSet { + GeeAbstractSet parent_instance; + GeeHashSetPrivate * priv; +}; + +struct _GeeHashSetClass { + GeeAbstractSetClass parent_class; +}; + +struct _GeeHazardPointer { + GeeHazardPointerNode* _node; +}; + +typedef enum { + GEE_HAZARD_POINTER_POLICY_DEFAULT, + GEE_HAZARD_POINTER_POLICY_THREAD_EXIT, + GEE_HAZARD_POINTER_POLICY_TRY_FREE, + GEE_HAZARD_POINTER_POLICY_FREE, + GEE_HAZARD_POINTER_POLICY_TRY_RELEASE, + GEE_HAZARD_POINTER_POLICY_RELEASE +} GeeHazardPointerPolicy; + +typedef enum { + GEE_HAZARD_POINTER_RELEASE_POLICY_HELPER_THREAD, + GEE_HAZARD_POINTER_RELEASE_POLICY_MAIN_LOOP +} GeeHazardPointerReleasePolicy; + +typedef void (*GeeHazardPointerDestroyNotify) (void* ptr, void* user_data); +struct _GeeHazardPointerContext { + GeeHazardPointerContext* _parent; + GeeArrayList* _to_free; + GeeHazardPointerPolicy* _policy; +}; + +struct _GeeHazardPointerFreeNode { + void* pointer; + GeeHazardPointerDestroyNotify destroy_notify; + gpointer destroy_notify_target; + GDestroyNotify destroy_notify_target_destroy_notify; +}; + +struct _GeeHazardPointerNode { + GeeHazardPointerNode* _next; + gint _active; + void* _hazard; +}; + +typedef GeeLazy* (*GeeUnfoldFunc) (void* user_data); +typedef gpointer (*GeeLazyFunc) (void* user_data); +struct _GeeLazy { + GTypeInstance parent_instance; + volatile int ref_count; + GeeLazyPrivate * priv; +}; + +struct _GeeLazyClass { + GTypeClass parent_class; + void (*finalize) (GeeLazy *self); +}; + +struct _GeeLinkedList { + GeeAbstractBidirList parent_instance; + GeeLinkedListPrivate * priv; +}; + +struct _GeeLinkedListClass { + GeeAbstractBidirListClass parent_class; +}; + +struct _GeeMapEntry { + GObject parent_instance; + GeeMapEntryPrivate * priv; +}; + +struct _GeeMapEntryClass { + GObjectClass parent_class; + gconstpointer (*get_key) (GeeMapEntry* self); + gconstpointer (*get_value) (GeeMapEntry* self); + void (*set_value) (GeeMapEntry* self, gconstpointer value); + gboolean (*get_read_only) (GeeMapEntry* self); +}; + +struct _GeePriorityQueue { + GeeAbstractQueue parent_instance; + GeePriorityQueuePrivate * priv; +}; + +struct _GeePriorityQueueClass { + GeeAbstractQueueClass parent_class; +}; + +struct _GeeReadOnlyCollection { + GObject parent_instance; + GeeReadOnlyCollectionPrivate * priv; + GeeCollection* _collection; +}; + +struct _GeeReadOnlyCollectionClass { + GObjectClass parent_class; + GeeCollection* (*get_read_only_view) (GeeReadOnlyCollection* self); +}; + +struct _GeeReadOnlyList { + GeeReadOnlyCollection parent_instance; + GeeReadOnlyListPrivate * priv; +}; + +struct _GeeReadOnlyListClass { + GeeReadOnlyCollectionClass parent_class; + GeeList* (*get_read_only_view) (GeeReadOnlyList* self); +}; + +struct _GeeReadOnlyBidirList { + GeeReadOnlyList parent_instance; + GeeReadOnlyBidirListPrivate * priv; +}; + +struct _GeeReadOnlyBidirListClass { + GeeReadOnlyListClass parent_class; + GeeBidirList* (*get_read_only_view) (GeeReadOnlyBidirList* self); +}; + +struct _GeeReadOnlySet { + GeeReadOnlyCollection parent_instance; + GeeReadOnlySetPrivate * priv; +}; + +struct _GeeReadOnlySetClass { + GeeReadOnlyCollectionClass parent_class; + GeeSet* (*get_read_only_view) (GeeReadOnlySet* self); +}; + +struct _GeeReadOnlySortedSet { + GeeReadOnlySet parent_instance; + GeeReadOnlySortedSetPrivate * priv; +}; + +struct _GeeReadOnlySortedSetClass { + GeeReadOnlySetClass parent_class; +}; + +struct _GeeReadOnlyBidirSortedSet { + GeeReadOnlySortedSet parent_instance; + GeeReadOnlyBidirSortedSetPrivate * priv; +}; + +struct _GeeReadOnlyBidirSortedSetClass { + GeeReadOnlySortedSetClass parent_class; +}; + +struct _GeeReadOnlyCollectionIterator { + GObject parent_instance; + GeeReadOnlyCollectionIteratorPrivate * priv; + GeeIterator* _iter; +}; + +struct _GeeReadOnlyCollectionIteratorClass { + GObjectClass parent_class; +}; + +struct _GeeReadOnlyBidirSortedSetBidirIterator { + GeeReadOnlyCollectionIterator parent_instance; + GeeReadOnlyBidirSortedSetBidirIteratorPrivate * priv; +}; + +struct _GeeReadOnlyBidirSortedSetBidirIteratorClass { + GeeReadOnlyCollectionIteratorClass parent_class; +}; + +struct _GeeReadOnlyMap { + GObject parent_instance; + GeeReadOnlyMapPrivate * priv; + GeeMap* _map; +}; + +struct _GeeReadOnlyMapClass { + GObjectClass parent_class; + GeeMap* (*get_read_only_view) (GeeReadOnlyMap* self); +}; + +struct _GeeReadOnlySortedMap { + GeeReadOnlyMap parent_instance; + GeeReadOnlySortedMapPrivate * priv; +}; + +struct _GeeReadOnlySortedMapClass { + GeeReadOnlyMapClass parent_class; +}; + +struct _GeeReadOnlyBidirSortedMap { + GeeReadOnlySortedMap parent_instance; + GeeReadOnlyBidirSortedMapPrivate * priv; +}; + +struct _GeeReadOnlyBidirSortedMapClass { + GeeReadOnlySortedMapClass parent_class; +}; + +struct _GeeReadOnlyMapMapIterator { + GObject parent_instance; + GeeReadOnlyMapMapIteratorPrivate * priv; + GeeMapIterator* _iter; +}; + +struct _GeeReadOnlyMapMapIteratorClass { + GObjectClass parent_class; +}; + +struct _GeeReadOnlyBidirSortedMapBidirMapIterator { + GeeReadOnlyMapMapIterator parent_instance; + GeeReadOnlyBidirSortedMapBidirMapIteratorPrivate * priv; +}; + +struct _GeeReadOnlyBidirSortedMapBidirMapIteratorClass { + GeeReadOnlyMapMapIteratorClass parent_class; +}; + +struct _GeeReadOnlyListIterator { + GeeReadOnlyCollectionIterator parent_instance; + GeeReadOnlyListIteratorPrivate * priv; +}; + +struct _GeeReadOnlyListIteratorClass { + GeeReadOnlyCollectionIteratorClass parent_class; +}; + +struct _GeeReadOnlyMultiMap { + GObject parent_instance; + GeeReadOnlyMultiMapPrivate * priv; +}; + +struct _GeeReadOnlyMultiMapClass { + GObjectClass parent_class; + GeeMultiMap* (*get_read_only_view) (GeeReadOnlyMultiMap* self); +}; + +struct _GeeReadOnlyMultiSet { + GeeReadOnlyCollection parent_instance; + GeeReadOnlyMultiSetPrivate * priv; +}; + +struct _GeeReadOnlyMultiSetClass { + GeeReadOnlyCollectionClass parent_class; + GeeMultiSet* (*get_read_only_view) (GeeReadOnlyMultiSet* self); +}; + +struct _GeeTimSort { + GObject parent_instance; + GeeTimSortPrivate * priv; +}; + +struct _GeeTimSortClass { + GObjectClass parent_class; +}; + +struct _GeeTreeMap { + GeeAbstractBidirSortedMap parent_instance; + GeeTreeMapPrivate * priv; +}; + +struct _GeeTreeMapClass { + GeeAbstractBidirSortedMapClass parent_class; +}; + +struct _GeeTreeMultiMap { + GeeAbstractMultiMap parent_instance; + GeeTreeMultiMapPrivate * priv; +}; + +struct _GeeTreeMultiMapClass { + GeeAbstractMultiMapClass parent_class; +}; + +struct _GeeTreeMultiSet { + GeeAbstractMultiSet parent_instance; + GeeTreeMultiSetPrivate * priv; +}; + +struct _GeeTreeMultiSetClass { + GeeAbstractMultiSetClass parent_class; +}; + +struct _GeeTreeSet { + GeeAbstractBidirSortedSet parent_instance; + GeeTreeSetPrivate * priv; +}; + +struct _GeeTreeSetClass { + GeeAbstractBidirSortedSetClass parent_class; +}; + +struct _GeeUnfoldIterator { + GObject parent_instance; + GeeUnfoldIteratorPrivate * priv; +}; + +struct _GeeUnfoldIteratorClass { + GObjectClass parent_class; +}; + + +GType gee_traversable_stream_get_type (void) G_GNUC_CONST; +gpointer gee_lazy_ref (gpointer instance); +void gee_lazy_unref (gpointer instance); +GParamSpec* gee_param_spec_lazy (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); +void gee_value_set_lazy (GValue* value, gpointer v_object); +void gee_value_take_lazy (GValue* value, gpointer v_object); +gpointer gee_value_get_lazy (const GValue* value); +GType gee_lazy_get_type (void) G_GNUC_CONST; +GType gee_iterator_get_type (void) G_GNUC_CONST; +GType gee_traversable_get_type (void) G_GNUC_CONST; +GType gee_iterable_get_type (void) G_GNUC_CONST; +GType gee_collection_get_type (void) G_GNUC_CONST; +GType gee_abstract_collection_get_type (void) G_GNUC_CONST; +GType gee_list_iterator_get_type (void) G_GNUC_CONST; +GType gee_list_get_type (void) G_GNUC_CONST; +GType gee_abstract_list_get_type (void) G_GNUC_CONST; +GType gee_bidir_iterator_get_type (void) G_GNUC_CONST; +GType gee_bidir_list_iterator_get_type (void) G_GNUC_CONST; +GType gee_bidir_list_get_type (void) G_GNUC_CONST; +GType gee_abstract_bidir_list_get_type (void) G_GNUC_CONST; +GeeBidirListIterator* gee_abstract_bidir_list_bidir_list_iterator (GeeAbstractBidirList* self); +void gee_abstract_bidir_list_reserved0 (GeeAbstractBidirList* self); +void gee_abstract_bidir_list_reserved1 (GeeAbstractBidirList* self); +void gee_abstract_bidir_list_reserved2 (GeeAbstractBidirList* self); +void gee_abstract_bidir_list_reserved3 (GeeAbstractBidirList* self); +void gee_abstract_bidir_list_reserved4 (GeeAbstractBidirList* self); +void gee_abstract_bidir_list_reserved5 (GeeAbstractBidirList* self); +void gee_abstract_bidir_list_reserved6 (GeeAbstractBidirList* self); +void gee_abstract_bidir_list_reserved7 (GeeAbstractBidirList* self); +void gee_abstract_bidir_list_reserved8 (GeeAbstractBidirList* self); +void gee_abstract_bidir_list_reserved9 (GeeAbstractBidirList* self); +GeeAbstractBidirList* gee_abstract_bidir_list_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func); +GeeBidirList* gee_abstract_bidir_list_get_read_only_view (GeeAbstractBidirList* self); +GType gee_set_get_type (void) G_GNUC_CONST; +GType gee_abstract_set_get_type (void) G_GNUC_CONST; +GType gee_sorted_set_get_type (void) G_GNUC_CONST; +GType gee_abstract_sorted_set_get_type (void) G_GNUC_CONST; +GType gee_bidir_sorted_set_get_type (void) G_GNUC_CONST; +GType gee_abstract_bidir_sorted_set_get_type (void) G_GNUC_CONST; +GeeBidirIterator* gee_abstract_bidir_sorted_set_bidir_iterator (GeeAbstractBidirSortedSet* self); +void gee_abstract_bidir_sorted_set_reserved0 (GeeAbstractBidirSortedSet* self); +void gee_abstract_bidir_sorted_set_reserved1 (GeeAbstractBidirSortedSet* self); +void gee_abstract_bidir_sorted_set_reserved2 (GeeAbstractBidirSortedSet* self); +void gee_abstract_bidir_sorted_set_reserved3 (GeeAbstractBidirSortedSet* self); +void gee_abstract_bidir_sorted_set_reserved4 (GeeAbstractBidirSortedSet* self); +void gee_abstract_bidir_sorted_set_reserved5 (GeeAbstractBidirSortedSet* self); +void gee_abstract_bidir_sorted_set_reserved6 (GeeAbstractBidirSortedSet* self); +void gee_abstract_bidir_sorted_set_reserved7 (GeeAbstractBidirSortedSet* self); +void gee_abstract_bidir_sorted_set_reserved8 (GeeAbstractBidirSortedSet* self); +void gee_abstract_bidir_sorted_set_reserved9 (GeeAbstractBidirSortedSet* self); +GeeAbstractBidirSortedSet* gee_abstract_bidir_sorted_set_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func); +GeeBidirSortedSet* gee_abstract_bidir_sorted_set_get_read_only_view (GeeAbstractBidirSortedSet* self); +GType gee_map_iterator_get_type (void) G_GNUC_CONST; +GType gee_map_entry_get_type (void) G_GNUC_CONST; +GType gee_map_get_type (void) G_GNUC_CONST; +GType gee_abstract_map_get_type (void) G_GNUC_CONST; +GType gee_sorted_map_get_type (void) G_GNUC_CONST; +GType gee_abstract_sorted_map_get_type (void) G_GNUC_CONST; +GType gee_bidir_map_iterator_get_type (void) G_GNUC_CONST; +GType gee_bidir_sorted_map_get_type (void) G_GNUC_CONST; +GType gee_abstract_bidir_sorted_map_get_type (void) G_GNUC_CONST; +GeeBidirMapIterator* gee_abstract_bidir_sorted_map_bidir_map_iterator (GeeAbstractBidirSortedMap* self); +void gee_abstract_bidir_sorted_map_reserved0 (GeeAbstractBidirSortedMap* self); +void gee_abstract_bidir_sorted_map_reserved1 (GeeAbstractBidirSortedMap* self); +void gee_abstract_bidir_sorted_map_reserved2 (GeeAbstractBidirSortedMap* self); +void gee_abstract_bidir_sorted_map_reserved3 (GeeAbstractBidirSortedMap* self); +void gee_abstract_bidir_sorted_map_reserved4 (GeeAbstractBidirSortedMap* self); +void gee_abstract_bidir_sorted_map_reserved5 (GeeAbstractBidirSortedMap* self); +void gee_abstract_bidir_sorted_map_reserved6 (GeeAbstractBidirSortedMap* self); +void gee_abstract_bidir_sorted_map_reserved7 (GeeAbstractBidirSortedMap* self); +void gee_abstract_bidir_sorted_map_reserved8 (GeeAbstractBidirSortedMap* self); +void gee_abstract_bidir_sorted_map_reserved9 (GeeAbstractBidirSortedMap* self); +GeeAbstractBidirSortedMap* gee_abstract_bidir_sorted_map_construct (GType object_type, GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func); +GeeBidirSortedMap* gee_abstract_bidir_sorted_map_get_read_only_view (GeeAbstractBidirSortedMap* self); +gboolean gee_abstract_collection_contains (GeeAbstractCollection* self, gconstpointer item); +gboolean gee_abstract_collection_add (GeeAbstractCollection* self, gconstpointer item); +gboolean gee_abstract_collection_remove (GeeAbstractCollection* self, gconstpointer item); +void gee_abstract_collection_clear (GeeAbstractCollection* self); +GeeIterator* gee_abstract_collection_iterator (GeeAbstractCollection* self); +gboolean gee_abstract_collection_foreach (GeeAbstractCollection* self, GeeForallFunc f, void* f_target); +void gee_abstract_collection_reserved0 (GeeAbstractCollection* self); +void gee_abstract_collection_reserved1 (GeeAbstractCollection* self); +void gee_abstract_collection_reserved2 (GeeAbstractCollection* self); +void gee_abstract_collection_reserved3 (GeeAbstractCollection* self); +void gee_abstract_collection_reserved4 (GeeAbstractCollection* self); +void gee_abstract_collection_reserved5 (GeeAbstractCollection* self); +void gee_abstract_collection_reserved6 (GeeAbstractCollection* self); +void gee_abstract_collection_reserved7 (GeeAbstractCollection* self); +void gee_abstract_collection_reserved8 (GeeAbstractCollection* self); +void gee_abstract_collection_reserved9 (GeeAbstractCollection* self); +GeeAbstractCollection* gee_abstract_collection_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func); +gint gee_abstract_collection_get_size (GeeAbstractCollection* self); +gboolean gee_abstract_collection_get_read_only (GeeAbstractCollection* self); +GeeCollection* gee_abstract_collection_get_read_only_view (GeeAbstractCollection* self); +GeeListIterator* gee_abstract_list_list_iterator (GeeAbstractList* self); +gpointer gee_abstract_list_get (GeeAbstractList* self, gint index); +void gee_abstract_list_set (GeeAbstractList* self, gint index, gconstpointer item); +gint gee_abstract_list_index_of (GeeAbstractList* self, gconstpointer item); +void gee_abstract_list_insert (GeeAbstractList* self, gint index, gconstpointer item); +gpointer gee_abstract_list_remove_at (GeeAbstractList* self, gint index); +GeeList* gee_abstract_list_slice (GeeAbstractList* self, gint start, gint stop); +void gee_abstract_list_reserved0 (GeeAbstractList* self); +void gee_abstract_list_reserved1 (GeeAbstractList* self); +void gee_abstract_list_reserved2 (GeeAbstractList* self); +void gee_abstract_list_reserved3 (GeeAbstractList* self); +void gee_abstract_list_reserved4 (GeeAbstractList* self); +void gee_abstract_list_reserved5 (GeeAbstractList* self); +void gee_abstract_list_reserved6 (GeeAbstractList* self); +void gee_abstract_list_reserved7 (GeeAbstractList* self); +void gee_abstract_list_reserved8 (GeeAbstractList* self); +void gee_abstract_list_reserved9 (GeeAbstractList* self); +GeeAbstractList* gee_abstract_list_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func); +GeeList* gee_abstract_list_get_read_only_view (GeeAbstractList* self); +gboolean gee_abstract_map_has_key (GeeAbstractMap* self, gconstpointer key); +gboolean gee_abstract_map_has (GeeAbstractMap* self, gconstpointer key, gconstpointer value); +gpointer gee_abstract_map_get (GeeAbstractMap* self, gconstpointer key); +void gee_abstract_map_set (GeeAbstractMap* self, gconstpointer key, gconstpointer value); +gboolean gee_abstract_map_unset (GeeAbstractMap* self, gconstpointer key, gpointer* value); +GeeMapIterator* gee_abstract_map_map_iterator (GeeAbstractMap* self); +void gee_abstract_map_clear (GeeAbstractMap* self); +gboolean gee_abstract_map_foreach (GeeAbstractMap* self, GeeForallFunc f, void* f_target); +GeeIterator* gee_abstract_map_stream (GeeAbstractMap* self, GType a_type, GBoxedCopyFunc a_dup_func, GDestroyNotify a_destroy_func, GeeStreamFunc f, void* f_target, GDestroyNotify f_target_destroy_notify); +void gee_abstract_map_reserved0 (GeeAbstractMap* self); +void gee_abstract_map_reserved1 (GeeAbstractMap* self); +void gee_abstract_map_reserved2 (GeeAbstractMap* self); +void gee_abstract_map_reserved3 (GeeAbstractMap* self); +void gee_abstract_map_reserved4 (GeeAbstractMap* self); +void gee_abstract_map_reserved5 (GeeAbstractMap* self); +void gee_abstract_map_reserved6 (GeeAbstractMap* self); +void gee_abstract_map_reserved7 (GeeAbstractMap* self); +void gee_abstract_map_reserved8 (GeeAbstractMap* self); +void gee_abstract_map_reserved9 (GeeAbstractMap* self); +GeeAbstractMap* gee_abstract_map_construct (GType object_type, GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func); +gint gee_abstract_map_get_size (GeeAbstractMap* self); +gboolean gee_abstract_map_get_read_only (GeeAbstractMap* self); +GeeSet* gee_abstract_map_get_keys (GeeAbstractMap* self); +GeeCollection* gee_abstract_map_get_values (GeeAbstractMap* self); +GeeSet* gee_abstract_map_get_entries (GeeAbstractMap* self); +GeeMap* gee_abstract_map_get_read_only_view (GeeAbstractMap* self); +GType gee_multi_set_get_type (void) G_GNUC_CONST; +GType gee_multi_map_get_type (void) G_GNUC_CONST; +GType gee_abstract_multi_map_get_type (void) G_GNUC_CONST; +GeeAbstractMultiMap* gee_abstract_multi_map_construct (GType object_type, GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func, GeeMap* storage_map); +GeeCollection* gee_abstract_multi_map_create_value_storage (GeeAbstractMultiMap* self); +GeeMultiSet* gee_abstract_multi_map_create_multi_key_set (GeeAbstractMultiMap* self); +GeeEqualDataFunc gee_abstract_multi_map_get_value_equal_func (GeeAbstractMultiMap* self, void** result_target, GDestroyNotify* result_target_destroy_notify); +void gee_abstract_multi_map_reserved0 (GeeAbstractMultiMap* self); +void gee_abstract_multi_map_reserved1 (GeeAbstractMultiMap* self); +void gee_abstract_multi_map_reserved2 (GeeAbstractMultiMap* self); +void gee_abstract_multi_map_reserved3 (GeeAbstractMultiMap* self); +void gee_abstract_multi_map_reserved4 (GeeAbstractMultiMap* self); +void gee_abstract_multi_map_reserved5 (GeeAbstractMultiMap* self); +void gee_abstract_multi_map_reserved6 (GeeAbstractMultiMap* self); +void gee_abstract_multi_map_reserved7 (GeeAbstractMultiMap* self); +void gee_abstract_multi_map_reserved8 (GeeAbstractMultiMap* self); +GeeMultiMap* gee_abstract_multi_map_get_read_only_view (GeeAbstractMultiMap* self); +GType gee_abstract_multi_set_get_type (void) G_GNUC_CONST; +GeeAbstractMultiSet* gee_abstract_multi_set_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeMap* storage_map); +void gee_abstract_multi_set_reserved0 (GeeAbstractMultiSet* self); +void gee_abstract_multi_set_reserved1 (GeeAbstractMultiSet* self); +void gee_abstract_multi_set_reserved2 (GeeAbstractMultiSet* self); +void gee_abstract_multi_set_reserved3 (GeeAbstractMultiSet* self); +void gee_abstract_multi_set_reserved4 (GeeAbstractMultiSet* self); +void gee_abstract_multi_set_reserved5 (GeeAbstractMultiSet* self); +void gee_abstract_multi_set_reserved6 (GeeAbstractMultiSet* self); +void gee_abstract_multi_set_reserved7 (GeeAbstractMultiSet* self); +void gee_abstract_multi_set_reserved8 (GeeAbstractMultiSet* self); +GeeMultiSet* gee_abstract_multi_set_get_read_only_view (GeeAbstractMultiSet* self); +GType gee_queue_get_type (void) G_GNUC_CONST; +GType gee_abstract_queue_get_type (void) G_GNUC_CONST; +gpointer gee_abstract_queue_peek (GeeAbstractQueue* self); +gpointer gee_abstract_queue_poll (GeeAbstractQueue* self); +void gee_abstract_queue_reserved0 (GeeAbstractQueue* self); +void gee_abstract_queue_reserved1 (GeeAbstractQueue* self); +void gee_abstract_queue_reserved2 (GeeAbstractQueue* self); +void gee_abstract_queue_reserved3 (GeeAbstractQueue* self); +void gee_abstract_queue_reserved4 (GeeAbstractQueue* self); +void gee_abstract_queue_reserved5 (GeeAbstractQueue* self); +void gee_abstract_queue_reserved6 (GeeAbstractQueue* self); +void gee_abstract_queue_reserved7 (GeeAbstractQueue* self); +void gee_abstract_queue_reserved8 (GeeAbstractQueue* self); +void gee_abstract_queue_reserved9 (GeeAbstractQueue* self); +GeeAbstractQueue* gee_abstract_queue_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func); +gint gee_abstract_queue_get_capacity (GeeAbstractQueue* self); +gint gee_abstract_queue_get_remaining_capacity (GeeAbstractQueue* self); +gboolean gee_abstract_queue_get_is_full (GeeAbstractQueue* self); +void gee_abstract_set_reserved0 (GeeAbstractSet* self); +void gee_abstract_set_reserved1 (GeeAbstractSet* self); +void gee_abstract_set_reserved2 (GeeAbstractSet* self); +void gee_abstract_set_reserved3 (GeeAbstractSet* self); +void gee_abstract_set_reserved4 (GeeAbstractSet* self); +void gee_abstract_set_reserved5 (GeeAbstractSet* self); +void gee_abstract_set_reserved6 (GeeAbstractSet* self); +void gee_abstract_set_reserved7 (GeeAbstractSet* self); +void gee_abstract_set_reserved8 (GeeAbstractSet* self); +void gee_abstract_set_reserved9 (GeeAbstractSet* self); +GeeAbstractSet* gee_abstract_set_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func); +GeeSet* gee_abstract_set_get_read_only_view (GeeAbstractSet* self); +GeeSortedMap* gee_abstract_sorted_map_head_map (GeeAbstractSortedMap* self, gconstpointer before); +GeeSortedMap* gee_abstract_sorted_map_tail_map (GeeAbstractSortedMap* self, gconstpointer after); +GeeSortedMap* gee_abstract_sorted_map_sub_map (GeeAbstractSortedMap* self, gconstpointer before, gconstpointer after); +void gee_abstract_sorted_map_reserved0 (GeeAbstractSortedMap* self); +void gee_abstract_sorted_map_reserved1 (GeeAbstractSortedMap* self); +void gee_abstract_sorted_map_reserved2 (GeeAbstractSortedMap* self); +void gee_abstract_sorted_map_reserved3 (GeeAbstractSortedMap* self); +void gee_abstract_sorted_map_reserved4 (GeeAbstractSortedMap* self); +void gee_abstract_sorted_map_reserved5 (GeeAbstractSortedMap* self); +void gee_abstract_sorted_map_reserved6 (GeeAbstractSortedMap* self); +void gee_abstract_sorted_map_reserved7 (GeeAbstractSortedMap* self); +void gee_abstract_sorted_map_reserved8 (GeeAbstractSortedMap* self); +void gee_abstract_sorted_map_reserved9 (GeeAbstractSortedMap* self); +GeeAbstractSortedMap* gee_abstract_sorted_map_construct (GType object_type, GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func); +GeeSortedSet* gee_abstract_sorted_map_get_ascending_keys (GeeAbstractSortedMap* self); +GeeSortedSet* gee_abstract_sorted_map_get_ascending_entries (GeeAbstractSortedMap* self); +gpointer gee_abstract_sorted_set_first (GeeAbstractSortedSet* self); +gpointer gee_abstract_sorted_set_last (GeeAbstractSortedSet* self); +GeeIterator* gee_abstract_sorted_set_iterator_at (GeeAbstractSortedSet* self, gconstpointer element); +gpointer gee_abstract_sorted_set_lower (GeeAbstractSortedSet* self, gconstpointer element); +gpointer gee_abstract_sorted_set_higher (GeeAbstractSortedSet* self, gconstpointer element); +gpointer gee_abstract_sorted_set_floor (GeeAbstractSortedSet* self, gconstpointer element); +gpointer gee_abstract_sorted_set_ceil (GeeAbstractSortedSet* self, gconstpointer element); +GeeSortedSet* gee_abstract_sorted_set_head_set (GeeAbstractSortedSet* self, gconstpointer before); +GeeSortedSet* gee_abstract_sorted_set_tail_set (GeeAbstractSortedSet* self, gconstpointer after); +GeeSortedSet* gee_abstract_sorted_set_sub_set (GeeAbstractSortedSet* self, gconstpointer from, gconstpointer to); +void gee_abstract_sorted_set_reserved0 (GeeAbstractSortedSet* self); +void gee_abstract_sorted_set_reserved1 (GeeAbstractSortedSet* self); +void gee_abstract_sorted_set_reserved2 (GeeAbstractSortedSet* self); +void gee_abstract_sorted_set_reserved3 (GeeAbstractSortedSet* self); +void gee_abstract_sorted_set_reserved4 (GeeAbstractSortedSet* self); +void gee_abstract_sorted_set_reserved5 (GeeAbstractSortedSet* self); +void gee_abstract_sorted_set_reserved6 (GeeAbstractSortedSet* self); +void gee_abstract_sorted_set_reserved7 (GeeAbstractSortedSet* self); +void gee_abstract_sorted_set_reserved8 (GeeAbstractSortedSet* self); +void gee_abstract_sorted_set_reserved9 (GeeAbstractSortedSet* self); +GeeAbstractSortedSet* gee_abstract_sorted_set_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func); +GeeSortedSet* gee_abstract_sorted_set_get_read_only_view (GeeAbstractSortedSet* self); +GType gee_array_list_get_type (void) G_GNUC_CONST; +GeeArrayList* gee_array_list_new (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeEqualDataFunc equal_func, void* equal_func_target, GDestroyNotify equal_func_target_destroy_notify); +GeeArrayList* gee_array_list_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeEqualDataFunc equal_func, void* equal_func_target, GDestroyNotify equal_func_target_destroy_notify); +GeeArrayList* gee_array_list_new_wrap (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, gpointer* items, int items_length1, GeeEqualDataFunc equal_func, void* equal_func_target, GDestroyNotify equal_func_target_destroy_notify); +GeeArrayList* gee_array_list_construct_wrap (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, gpointer* items, int items_length1, GeeEqualDataFunc equal_func, void* equal_func_target, GDestroyNotify equal_func_target_destroy_notify); +gboolean gee_array_list_add_all (GeeArrayList* self, GeeCollection* collection); +GeeEqualDataFunc gee_array_list_get_equal_func (GeeArrayList* self, gpointer* result_target); +GType gee_deque_get_type (void) G_GNUC_CONST; +GType gee_array_queue_get_type (void) G_GNUC_CONST; +GeeArrayQueue* gee_array_queue_new (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeEqualDataFunc equal_func, void* equal_func_target, GDestroyNotify equal_func_target_destroy_notify); +GeeArrayQueue* gee_array_queue_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeEqualDataFunc equal_func, void* equal_func_target, GDestroyNotify equal_func_target_destroy_notify); +GeeEqualDataFunc gee_array_queue_get_equal_func (GeeArrayQueue* self, gpointer* result_target); +gboolean gee_array_queue_get_is_empty (GeeArrayQueue* self); +gboolean gee_bidir_iterator_previous (GeeBidirIterator* self); +gboolean gee_bidir_iterator_has_previous (GeeBidirIterator* self); +gboolean gee_bidir_iterator_first (GeeBidirIterator* self); +gboolean gee_bidir_iterator_last (GeeBidirIterator* self); +GeeBidirListIterator* gee_bidir_list_bidir_list_iterator (GeeBidirList* self); +GeeBidirList* gee_bidir_list_get_read_only_view (GeeBidirList* self); +void gee_bidir_list_iterator_insert (GeeBidirListIterator* self, gconstpointer item); +gboolean gee_bidir_map_iterator_previous (GeeBidirMapIterator* self); +gboolean gee_bidir_map_iterator_has_previous (GeeBidirMapIterator* self); +gboolean gee_bidir_map_iterator_first (GeeBidirMapIterator* self); +gboolean gee_bidir_map_iterator_last (GeeBidirMapIterator* self); +GeeBidirIterator* gee_bidir_sorted_set_bidir_iterator (GeeBidirSortedSet* self); +GeeBidirSortedSet* gee_bidir_sorted_set_empty (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func); +GeeBidirSortedSet* gee_bidir_sorted_set_get_read_only_view (GeeBidirSortedSet* self); +GeeBidirMapIterator* gee_bidir_sorted_map_bidir_map_iterator (GeeBidirSortedMap* self); +GeeBidirSortedMap* gee_bidir_sorted_map_empty (GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func); +GeeBidirSortedMap* gee_bidir_sorted_map_get_read_only_view (GeeBidirSortedMap* self); +gboolean gee_collection_contains (GeeCollection* self, gconstpointer item); +gboolean gee_collection_add (GeeCollection* self, gconstpointer item); +gboolean gee_collection_remove (GeeCollection* self, gconstpointer item); +void gee_collection_clear (GeeCollection* self); +gboolean gee_collection_add_all (GeeCollection* self, GeeCollection* collection); +gboolean gee_collection_contains_all (GeeCollection* self, GeeCollection* collection); +gboolean gee_collection_remove_all (GeeCollection* self, GeeCollection* collection); +gboolean gee_collection_retain_all (GeeCollection* self, GeeCollection* collection); +gpointer* gee_collection_to_array (GeeCollection* self, int* result_length1); +gboolean gee_collection_add_all_array (GeeCollection* self, gpointer* array, int array_length1); +gboolean gee_collection_contains_all_array (GeeCollection* self, gpointer* array, int array_length1); +gboolean gee_collection_remove_all_array (GeeCollection* self, gpointer* array, int array_length1); +GeeCollection* gee_collection_empty (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func); +gint gee_collection_get_size (GeeCollection* self); +gboolean gee_collection_get_is_empty (GeeCollection* self); +gboolean gee_collection_get_read_only (GeeCollection* self); +GeeCollection* gee_collection_get_read_only_view (GeeCollection* self); +GType gee_comparable_get_type (void) G_GNUC_CONST; +gint gee_comparable_compare_to (GeeComparable* self, gconstpointer object); +GType gee_concurrent_list_get_type (void) G_GNUC_CONST; +GeeConcurrentList* gee_concurrent_list_new (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeEqualDataFunc equal_func, void* equal_func_target, GDestroyNotify equal_func_target_destroy_notify); +GeeConcurrentList* gee_concurrent_list_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeEqualDataFunc equal_func, void* equal_func_target, GDestroyNotify equal_func_target_destroy_notify); +GeeEqualDataFunc gee_concurrent_list_get_equal_func (GeeConcurrentList* self, gpointer* result_target); +gboolean gee_concurrent_list_get_is_empty (GeeConcurrentList* self); +GType gee_concurrent_set_get_type (void) G_GNUC_CONST; +GType gee_concurrent_set_range_type_get_type (void) G_GNUC_CONST; +GeeConcurrentSet* gee_concurrent_set_new (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GCompareDataFunc compare_func, void* compare_func_target, GDestroyNotify compare_func_target_destroy_notify); +GeeConcurrentSet* gee_concurrent_set_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GCompareDataFunc compare_func, void* compare_func_target, GDestroyNotify compare_func_target_destroy_notify); +gboolean gee_deque_offer_head (GeeDeque* self, gconstpointer element); +gpointer gee_deque_peek_head (GeeDeque* self); +gpointer gee_deque_poll_head (GeeDeque* self); +gint gee_deque_drain_head (GeeDeque* self, GeeCollection* recipient, gint amount); +gboolean gee_deque_offer_tail (GeeDeque* self, gconstpointer element); +gpointer gee_deque_peek_tail (GeeDeque* self); +gpointer gee_deque_poll_tail (GeeDeque* self); +gint gee_deque_drain_tail (GeeDeque* self, GeeCollection* recipient, gint amount); +GeeEqualDataFunc gee_functions_get_equal_func_for (GType t, void** result_target, GDestroyNotify* result_target_destroy_notify); +GeeHashDataFunc gee_functions_get_hash_func_for (GType t, void** result_target, GDestroyNotify* result_target_destroy_notify); +GCompareDataFunc gee_functions_get_compare_func_for (GType t, void** result_target, GDestroyNotify* result_target_destroy_notify); +GType gee_hashable_get_type (void) G_GNUC_CONST; +guint gee_hashable_hash (GeeHashable* self); +gboolean gee_hashable_equal_to (GeeHashable* self, gconstpointer object); +GType gee_hash_map_get_type (void) G_GNUC_CONST; +GeeHashMap* gee_hash_map_new (GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func, GeeHashDataFunc key_hash_func, void* key_hash_func_target, GDestroyNotify key_hash_func_target_destroy_notify, GeeEqualDataFunc key_equal_func, void* key_equal_func_target, GDestroyNotify key_equal_func_target_destroy_notify, GeeEqualDataFunc value_equal_func, void* value_equal_func_target, GDestroyNotify value_equal_func_target_destroy_notify); +GeeHashMap* gee_hash_map_construct (GType object_type, GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func, GeeHashDataFunc key_hash_func, void* key_hash_func_target, GDestroyNotify key_hash_func_target_destroy_notify, GeeEqualDataFunc key_equal_func, void* key_equal_func_target, GDestroyNotify key_equal_func_target_destroy_notify, GeeEqualDataFunc value_equal_func, void* value_equal_func_target, GDestroyNotify value_equal_func_target_destroy_notify); +GeeHashDataFunc gee_hash_map_get_key_hash_func (GeeHashMap* self, gpointer* result_target); +GeeEqualDataFunc gee_hash_map_get_key_equal_func (GeeHashMap* self, gpointer* result_target); +GeeEqualDataFunc gee_hash_map_get_value_equal_func (GeeHashMap* self, gpointer* result_target); +GType gee_hash_multi_map_get_type (void) G_GNUC_CONST; +GeeHashMultiMap* gee_hash_multi_map_new (GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func, GeeHashDataFunc key_hash_func, void* key_hash_func_target, GDestroyNotify key_hash_func_target_destroy_notify, GeeEqualDataFunc key_equal_func, void* key_equal_func_target, GDestroyNotify key_equal_func_target_destroy_notify, GeeHashDataFunc value_hash_func, void* value_hash_func_target, GDestroyNotify value_hash_func_target_destroy_notify, GeeEqualDataFunc value_equal_func, void* value_equal_func_target, GDestroyNotify value_equal_func_target_destroy_notify); +GeeHashMultiMap* gee_hash_multi_map_construct (GType object_type, GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func, GeeHashDataFunc key_hash_func, void* key_hash_func_target, GDestroyNotify key_hash_func_target_destroy_notify, GeeEqualDataFunc key_equal_func, void* key_equal_func_target, GDestroyNotify key_equal_func_target_destroy_notify, GeeHashDataFunc value_hash_func, void* value_hash_func_target, GDestroyNotify value_hash_func_target_destroy_notify, GeeEqualDataFunc value_equal_func, void* value_equal_func_target, GDestroyNotify value_equal_func_target_destroy_notify); +GeeHashDataFunc gee_hash_multi_map_get_key_hash_func (GeeHashMultiMap* self, gpointer* result_target); +GeeEqualDataFunc gee_hash_multi_map_get_key_equal_func (GeeHashMultiMap* self, gpointer* result_target); +GeeHashDataFunc gee_hash_multi_map_get_value_hash_func (GeeHashMultiMap* self, gpointer* result_target); +GeeEqualDataFunc gee_hash_multi_map_get_value_equal_func (GeeHashMultiMap* self, gpointer* result_target); +GType gee_hash_multi_set_get_type (void) G_GNUC_CONST; +GeeHashMultiSet* gee_hash_multi_set_new (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeHashDataFunc hash_func, void* hash_func_target, GeeEqualDataFunc equal_func, void* equal_func_target); +GeeHashMultiSet* gee_hash_multi_set_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeHashDataFunc hash_func, void* hash_func_target, GeeEqualDataFunc equal_func, void* equal_func_target); +GeeHashDataFunc gee_hash_multi_set_get_hash_func (GeeHashMultiSet* self, gpointer* result_target); +GeeEqualDataFunc gee_hash_multi_set_get_equal_func (GeeHashMultiSet* self, gpointer* result_target); +GType gee_hash_set_get_type (void) G_GNUC_CONST; +GeeHashSet* gee_hash_set_new (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeHashDataFunc hash_func, void* hash_func_target, GDestroyNotify hash_func_target_destroy_notify, GeeEqualDataFunc equal_func, void* equal_func_target, GDestroyNotify equal_func_target_destroy_notify); +GeeHashSet* gee_hash_set_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeHashDataFunc hash_func, void* hash_func_target, GDestroyNotify hash_func_target_destroy_notify, GeeEqualDataFunc equal_func, void* equal_func_target, GDestroyNotify equal_func_target_destroy_notify); +GeeHashDataFunc gee_hash_set_get_hash_func (GeeHashSet* self, gpointer* result_target); +GeeEqualDataFunc gee_hash_set_get_equal_func (GeeHashSet* self, gpointer* result_target); +void gee_hazard_pointer_free (GeeHazardPointer* self); +void gee_hazard_pointer_node_free (GeeHazardPointerNode* self); +GType gee_hazard_pointer_policy_get_type (void) G_GNUC_CONST; +gboolean gee_hazard_pointer_policy_is_concrete (GeeHazardPointerPolicy self); +gboolean gee_hazard_pointer_policy_is_blocking (GeeHazardPointerPolicy self); +gboolean gee_hazard_pointer_policy_is_safe (GeeHazardPointerPolicy self); +GeeHazardPointerPolicy gee_hazard_pointer_policy_to_concrete (GeeHazardPointerPolicy self); +void gee_hazard_pointer_free_node_free (GeeHazardPointerFreeNode* self); +GeeArrayList* gee_hazard_pointer_policy_perform (GeeHazardPointerPolicy self, GeeArrayList* to_free); +void gee_hazard_pointer_release_policy_ensure_start (void); +GType gee_hazard_pointer_release_policy_get_type (void) G_GNUC_CONST; +extern GeeHazardPointerNode* gee_hazard_pointer__head; +extern gint gee_hazard_pointer__default_policy; +extern gint gee_hazard_pointer__thread_exit_policy; +extern gint gee_hazard_pointer_release_policy; +extern GeeQueue* gee_hazard_pointer__queue; +extern GStaticMutex gee_hazard_pointer__queue_mutex; +extern GeeArrayList* gee_hazard_pointer__global_to_free; +GeeHazardPointer* gee_hazard_pointer_new (gconstpointer* ptr); +GeeHazardPointer* gee_hazard_pointer_new (gconstpointer* ptr); +GeeHazardPointer* gee_hazard_pointer_new_from_node (GeeHazardPointerNode* node); +GeeHazardPointer* gee_hazard_pointer_new_from_node (GeeHazardPointerNode* node); +GeeHazardPointer* gee_hazard_pointer_get_hazard_pointer (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, gconstpointer** aptr, gsize mask, gsize* mask_out); +gpointer gee_hazard_pointer_get_pointer (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, gconstpointer** aptr, gsize mask, gsize* mask_out); +GeeHazardPointer* gee_hazard_pointer_exchange_hazard_pointer (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, gconstpointer** aptr, gpointer new_ptr, gsize mask, gsize new_mask, gsize* old_mask); +void gee_hazard_pointer_set_pointer (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, gconstpointer** aptr, gpointer new_ptr, gsize mask, gsize new_mask); +gpointer gee_hazard_pointer_exchange_pointer (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, gconstpointer** aptr, gpointer new_ptr, gsize mask, gsize new_mask, gsize* old_mask); +gboolean gee_hazard_pointer_compare_and_exchange_pointer (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, gconstpointer** aptr, gconstpointer old_ptr, gpointer _new_ptr, gsize mask, gsize old_mask, gsize new_mask); +gconstpointer gee_hazard_pointer_get (GeeHazardPointer* self, gboolean other_thread); +void gee_hazard_pointer_release (GeeHazardPointer* self, GeeHazardPointerDestroyNotify notify, void* notify_target, GDestroyNotify notify_target_destroy_notify); +void gee_hazard_pointer_set_default_policy (GeeHazardPointerPolicy policy); +void gee_hazard_pointer_set_thread_exit_policy (GeeHazardPointerPolicy policy); +gboolean gee_hazard_pointer_set_release_policy (GeeHazardPointerReleasePolicy policy); +GeeHazardPointerNode* gee_hazard_pointer_acquire (void); +gboolean gee_hazard_pointer_try_free (GeeArrayList* to_free); +GeeHazardPointerNode* gee_hazard_pointer_get_head (void); +GeeHazardPointerDestroyNotify gee_hazard_pointer_get_destroy_notify (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, void** result_target, GDestroyNotify* result_target_destroy_notify); +void gee_hazard_pointer_context_free (GeeHazardPointerContext* self); +extern GStaticPrivate gee_hazard_pointer_context__current_context; +extern GStaticPrivate gee_hazard_pointer_context__root_context; +GeeHazardPointerContext* gee_hazard_pointer_context_new (GeeHazardPointerPolicy* policy); +GeeHazardPointerContext* gee_hazard_pointer_context_new (GeeHazardPointerPolicy* policy); +void gee_hazard_pointer_context_try_free (GeeHazardPointerContext* self); +void gee_hazard_pointer_context_free_all (GeeHazardPointerContext* self); +void gee_hazard_pointer_context_try_release (GeeHazardPointerContext* self); +void gee_hazard_pointer_context_release (GeeHazardPointerContext* self); +void gee_hazard_pointer_context_release_ptr (GeeHazardPointerContext* self, void* ptr, GeeHazardPointerDestroyNotify notify, void* notify_target, GDestroyNotify notify_target_destroy_notify); +GeeHazardPointerContext* gee_hazard_pointer_context_get_current_context (void); +GeeHazardPointerFreeNode* gee_hazard_pointer_free_node_new (void); +GeeHazardPointerFreeNode* gee_hazard_pointer_free_node_new (void); +GeeHazardPointerNode* gee_hazard_pointer_node_new (void); +GeeHazardPointerNode* gee_hazard_pointer_node_new (void); +void gee_hazard_pointer_node_release (GeeHazardPointerNode* self); +gboolean gee_hazard_pointer_node_is_active (GeeHazardPointerNode* self); +gboolean gee_hazard_pointer_node_activate (GeeHazardPointerNode* self); +void gee_hazard_pointer_node_set (GeeHazardPointerNode* self, void* ptr); +void* gee_hazard_pointer_node_get (GeeHazardPointerNode* self, gboolean safe); +GeeHazardPointerNode* gee_hazard_pointer_node_get_next (GeeHazardPointerNode* self); +void gee_hazard_pointer_node_set_next (GeeHazardPointerNode* self, GeeHazardPointerNode* next); +GeeIterator* gee_iterable_iterator (GeeIterable* self); +gboolean gee_iterator_next (GeeIterator* self); +gboolean gee_iterator_has_next (GeeIterator* self); +gpointer gee_iterator_get (GeeIterator* self); +void gee_iterator_remove (GeeIterator* self); +GeeIterator* gee_iterator_unfold (GType a_type, GBoxedCopyFunc a_dup_func, GDestroyNotify a_destroy_func, GeeUnfoldFunc f, void* f_target, GDestroyNotify f_target_destroy_notify, GeeLazy* current); +GeeIterator* gee_iterator_concat (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeIterator* iters); +gboolean gee_iterator_get_valid (GeeIterator* self); +gboolean gee_iterator_get_read_only (GeeIterator* self); +GeeLazy* gee_lazy_new (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeLazyFunc func, void* func_target, GDestroyNotify func_target_destroy_notify); +GeeLazy* gee_lazy_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeLazyFunc func, void* func_target, GDestroyNotify func_target_destroy_notify); +GeeLazy* gee_lazy_new_from_value (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, gconstpointer item); +GeeLazy* gee_lazy_construct_from_value (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, gconstpointer item); +void gee_lazy_eval (GeeLazy* self); +gpointer gee_lazy_get (GeeLazy* self); +gconstpointer gee_lazy_get_value (GeeLazy* self); +GType gee_linked_list_get_type (void) G_GNUC_CONST; +GeeLinkedList* gee_linked_list_new (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeEqualDataFunc equal_func, void* equal_func_target, GDestroyNotify equal_func_target_destroy_notify); +GeeLinkedList* gee_linked_list_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeEqualDataFunc equal_func, void* equal_func_target, GDestroyNotify equal_func_target_destroy_notify); +gpointer gee_linked_list_first (GeeLinkedList* self); +gpointer gee_linked_list_last (GeeLinkedList* self); +GeeEqualDataFunc gee_linked_list_get_equal_func (GeeLinkedList* self, gpointer* result_target); +GeeListIterator* gee_list_list_iterator (GeeList* self); +gpointer gee_list_get (GeeList* self, gint index); +void gee_list_set (GeeList* self, gint index, gconstpointer item); +gint gee_list_index_of (GeeList* self, gconstpointer item); +void gee_list_insert (GeeList* self, gint index, gconstpointer item); +gpointer gee_list_remove_at (GeeList* self, gint index); +GeeList* gee_list_slice (GeeList* self, gint start, gint stop); +gpointer gee_list_first (GeeList* self); +gpointer gee_list_last (GeeList* self); +void gee_list_insert_all (GeeList* self, gint index, GeeCollection* collection); +void gee_list_sort (GeeList* self, GCompareDataFunc compare_func, void* compare_func_target, GDestroyNotify compare_func_target_destroy_notify); +GeeList* gee_list_empty (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func); +GeeList* gee_list_get_read_only_view (GeeList* self); +void gee_list_iterator_set (GeeListIterator* self, gconstpointer item); +void gee_list_iterator_add (GeeListIterator* self, gconstpointer item); +gint gee_list_iterator_index (GeeListIterator* self); +gboolean gee_map_has_key (GeeMap* self, gconstpointer key); +gboolean gee_map_contains (GeeMap* self, gconstpointer key) G_GNUC_DEPRECATED; +gboolean gee_map_has (GeeMap* self, gconstpointer key, gconstpointer value); +gpointer gee_map_get (GeeMap* self, gconstpointer key); +void gee_map_set (GeeMap* self, gconstpointer key, gconstpointer value); +gboolean gee_map_unset (GeeMap* self, gconstpointer key, gpointer* value); +gboolean gee_map_remove (GeeMap* self, gconstpointer key, gpointer* value) G_GNUC_DEPRECATED; +void gee_map_clear (GeeMap* self); +GeeMapIterator* gee_map_map_iterator (GeeMap* self); +void gee_map_set_all (GeeMap* self, GeeMap* map); +gboolean gee_map_unset_all (GeeMap* self, GeeMap* map); +gboolean gee_map_remove_all (GeeMap* self, GeeMap* map) G_GNUC_DEPRECATED; +gboolean gee_map_has_all (GeeMap* self, GeeMap* map); +gboolean gee_map_contains_all (GeeMap* self, GeeMap* map) G_GNUC_DEPRECATED; +GeeMap* gee_map_empty (GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func); +gint gee_map_get_size (GeeMap* self); +gboolean gee_map_get_is_empty (GeeMap* self); +gboolean gee_map_get_read_only (GeeMap* self); +GeeSet* gee_map_get_keys (GeeMap* self); +GeeCollection* gee_map_get_values (GeeMap* self); +GeeSet* gee_map_get_entries (GeeMap* self); +GeeMap* gee_map_get_read_only_view (GeeMap* self); +GType gee_map_get_key_type (GeeMap* self); +GType gee_map_get_value_type (GeeMap* self); +GeeMapEntry* gee_map_entry_construct (GType object_type, GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func); +gconstpointer gee_map_entry_get_key (GeeMapEntry* self); +gconstpointer gee_map_entry_get_value (GeeMapEntry* self); +void gee_map_entry_set_value (GeeMapEntry* self, gconstpointer value); +gboolean gee_map_entry_get_read_only (GeeMapEntry* self); +gboolean gee_map_iterator_next (GeeMapIterator* self); +gboolean gee_map_iterator_has_next (GeeMapIterator* self); +gpointer gee_map_iterator_get_key (GeeMapIterator* self); +gpointer gee_map_iterator_get_value (GeeMapIterator* self); +void gee_map_iterator_set_value (GeeMapIterator* self, gconstpointer value); +void gee_map_iterator_unset (GeeMapIterator* self); +gpointer gee_map_iterator_fold (GeeMapIterator* self, GType a_type, GBoxedCopyFunc a_dup_func, GDestroyNotify a_destroy_func, GeeFoldMapFunc f, void* f_target, gpointer seed); +gboolean gee_map_iterator_foreach (GeeMapIterator* self, GeeForallMapFunc f, void* f_target); +gboolean gee_map_iterator_get_valid (GeeMapIterator* self); +gboolean gee_map_iterator_get_mutable (GeeMapIterator* self); +gboolean gee_map_iterator_get_read_only (GeeMapIterator* self); +GeeSet* gee_multi_map_get_keys (GeeMultiMap* self); +GeeMultiSet* gee_multi_map_get_all_keys (GeeMultiMap* self); +GeeCollection* gee_multi_map_get_values (GeeMultiMap* self); +gboolean gee_multi_map_contains (GeeMultiMap* self, gconstpointer key); +GeeCollection* gee_multi_map_get (GeeMultiMap* self, gconstpointer key); +void gee_multi_map_set (GeeMultiMap* self, gconstpointer key, gconstpointer value); +gboolean gee_multi_map_remove (GeeMultiMap* self, gconstpointer key, gconstpointer value); +gboolean gee_multi_map_remove_all (GeeMultiMap* self, gconstpointer key); +void gee_multi_map_clear (GeeMultiMap* self); +GeeMapIterator* gee_multi_map_map_iterator (GeeMultiMap* self); +gint gee_multi_map_get_size (GeeMultiMap* self); +gboolean gee_multi_map_get_read_only (GeeMultiMap* self); +GType gee_multi_map_get_key_type (GeeMultiMap* self); +GType gee_multi_map_get_value_type (GeeMultiMap* self); +GeeMultiMap* gee_multi_map_get_read_only_view (GeeMultiMap* self); +gint gee_multi_set_count (GeeMultiSet* self, gconstpointer item); +GeeSet* gee_multi_set_empty (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func); +GeeMultiSet* gee_multi_set_get_read_only_view (GeeMultiSet* self); +GType gee_priority_queue_get_type (void) G_GNUC_CONST; +GeePriorityQueue* gee_priority_queue_new (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GCompareDataFunc compare_func, void* compare_func_target, GDestroyNotify compare_func_target_destroy_notify); +GeePriorityQueue* gee_priority_queue_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GCompareDataFunc compare_func, void* compare_func_target, GDestroyNotify compare_func_target_destroy_notify); +gboolean gee_priority_queue_offer (GeePriorityQueue* self, gconstpointer element); +gint gee_priority_queue_drain (GeePriorityQueue* self, GeeCollection* recipient, gint amount); +GCompareDataFunc gee_priority_queue_get_compare_func (GeePriorityQueue* self, gpointer* result_target); +gboolean gee_queue_offer (GeeQueue* self, gconstpointer element); +gpointer gee_queue_peek (GeeQueue* self); +gpointer gee_queue_poll (GeeQueue* self); +gint gee_queue_drain (GeeQueue* self, GeeCollection* recipient, gint amount); +#define GEE_QUEUE_UNBOUNDED_CAPACITY (-1) +gint gee_queue_get_capacity (GeeQueue* self); +gint gee_queue_get_remaining_capacity (GeeQueue* self); +gboolean gee_queue_get_is_full (GeeQueue* self); +GType gee_read_only_collection_get_type (void) G_GNUC_CONST; +GType gee_read_only_list_get_type (void) G_GNUC_CONST; +GType gee_read_only_bidir_list_get_type (void) G_GNUC_CONST; +GeeReadOnlyBidirList* gee_read_only_bidir_list_new (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeBidirList* list); +GeeReadOnlyBidirList* gee_read_only_bidir_list_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeBidirList* list); +GeeBidirList* gee_read_only_bidir_list_get_read_only_view (GeeReadOnlyBidirList* self); +GType gee_read_only_set_get_type (void) G_GNUC_CONST; +GType gee_read_only_sorted_set_get_type (void) G_GNUC_CONST; +GType gee_read_only_bidir_sorted_set_get_type (void) G_GNUC_CONST; +GeeReadOnlyBidirSortedSet* gee_read_only_bidir_sorted_set_new (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeBidirSortedSet* set); +GeeReadOnlyBidirSortedSet* gee_read_only_bidir_sorted_set_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeBidirSortedSet* set); +GType gee_read_only_collection_iterator_get_type (void) G_GNUC_CONST; +GType gee_read_only_bidir_sorted_set_bidir_iterator_get_type (void) G_GNUC_CONST; +GeeReadOnlyBidirSortedSetBidirIterator* gee_read_only_bidir_sorted_set_bidir_iterator_new (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeBidirIterator* iterator); +GeeReadOnlyBidirSortedSetBidirIterator* gee_read_only_bidir_sorted_set_bidir_iterator_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeBidirIterator* iterator); +GType gee_read_only_map_get_type (void) G_GNUC_CONST; +GType gee_read_only_sorted_map_get_type (void) G_GNUC_CONST; +GType gee_read_only_bidir_sorted_map_get_type (void) G_GNUC_CONST; +GeeReadOnlyBidirSortedMap* gee_read_only_bidir_sorted_map_new (GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func, GeeBidirSortedMap* map); +GeeReadOnlyBidirSortedMap* gee_read_only_bidir_sorted_map_construct (GType object_type, GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func, GeeBidirSortedMap* map); +GType gee_read_only_map_map_iterator_get_type (void) G_GNUC_CONST; +GType gee_read_only_bidir_sorted_map_bidir_map_iterator_get_type (void) G_GNUC_CONST; +GeeReadOnlyBidirSortedMapBidirMapIterator* gee_read_only_bidir_sorted_map_bidir_map_iterator_new (GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func, GeeBidirMapIterator* iterator); +GeeReadOnlyBidirSortedMapBidirMapIterator* gee_read_only_bidir_sorted_map_bidir_map_iterator_construct (GType object_type, GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func, GeeBidirMapIterator* iterator); +GeeReadOnlyCollection* gee_read_only_collection_new (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeCollection* collection); +GeeReadOnlyCollection* gee_read_only_collection_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeCollection* collection); +GeeCollection* gee_read_only_collection_get_read_only_view (GeeReadOnlyCollection* self); +GeeReadOnlyCollectionIterator* gee_read_only_collection_iterator_new (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeIterator* iterator); +GeeReadOnlyCollectionIterator* gee_read_only_collection_iterator_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeIterator* iterator); +GeeReadOnlyList* gee_read_only_list_new (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeList* list); +GeeReadOnlyList* gee_read_only_list_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeList* list); +GeeList* gee_read_only_list_get_read_only_view (GeeReadOnlyList* self); +GType gee_read_only_list_iterator_get_type (void) G_GNUC_CONST; +GeeReadOnlyListIterator* gee_read_only_list_iterator_new (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeListIterator* iterator); +GeeReadOnlyListIterator* gee_read_only_list_iterator_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeListIterator* iterator); +GeeReadOnlyMap* gee_read_only_map_new (GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func, GeeMap* map); +GeeReadOnlyMap* gee_read_only_map_construct (GType object_type, GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func, GeeMap* map); +gboolean gee_read_only_map_contains (GeeReadOnlyMap* self, gconstpointer key); +gboolean gee_read_only_map_remove (GeeReadOnlyMap* self, gconstpointer key, gpointer* value); +gboolean gee_read_only_map_remove_all (GeeReadOnlyMap* self, GeeMap* map); +gboolean gee_read_only_map_contains_all (GeeReadOnlyMap* self, GeeMap* map); +GeeMap* gee_read_only_map_get_read_only_view (GeeReadOnlyMap* self); +GType gee_read_only_map_get_key_type (GeeReadOnlyMap* self); +GType gee_read_only_map_get_value_type (GeeReadOnlyMap* self); +GeeReadOnlyMapMapIterator* gee_read_only_map_map_iterator_new (GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func, GeeMapIterator* iterator); +GeeReadOnlyMapMapIterator* gee_read_only_map_map_iterator_construct (GType object_type, GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func, GeeMapIterator* iterator); +GType gee_read_only_multi_map_get_type (void) G_GNUC_CONST; +GeeReadOnlyMultiMap* gee_read_only_multi_map_new (GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func, GeeMultiMap* multimap); +GeeReadOnlyMultiMap* gee_read_only_multi_map_construct (GType object_type, GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func, GeeMultiMap* multimap); +GeeMultiMap* gee_read_only_multi_map_get_read_only_view (GeeReadOnlyMultiMap* self); +GType gee_read_only_multi_set_get_type (void) G_GNUC_CONST; +GeeReadOnlyMultiSet* gee_read_only_multi_set_new (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeMultiSet* multiset); +GeeReadOnlyMultiSet* gee_read_only_multi_set_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeMultiSet* multiset); +GeeMultiSet* gee_read_only_multi_set_get_read_only_view (GeeReadOnlyMultiSet* self); +GeeReadOnlySet* gee_read_only_set_new (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeSet* set); +GeeReadOnlySet* gee_read_only_set_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeSet* set); +GeeSet* gee_read_only_set_get_read_only_view (GeeReadOnlySet* self); +GeeReadOnlySortedMap* gee_read_only_sorted_map_new (GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func, GeeMap* map); +GeeReadOnlySortedMap* gee_read_only_sorted_map_construct (GType object_type, GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func, GeeMap* map); +GeeReadOnlySortedSet* gee_read_only_sorted_set_new (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeSortedSet* set); +GeeReadOnlySortedSet* gee_read_only_sorted_set_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeSortedSet* set); +GeeSet* gee_set_empty (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func); +GeeSet* gee_set_get_read_only_view (GeeSet* self); +GeeSortedMap* gee_sorted_map_head_map (GeeSortedMap* self, gconstpointer before); +GeeSortedMap* gee_sorted_map_tail_map (GeeSortedMap* self, gconstpointer after); +GeeSortedMap* gee_sorted_map_sub_map (GeeSortedMap* self, gconstpointer before, gconstpointer after); +GeeMap* gee_sorted_map_empty (GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func); +GeeSortedSet* gee_sorted_map_get_ascending_keys (GeeSortedMap* self); +GeeSortedSet* gee_sorted_map_get_ascending_entries (GeeSortedMap* self); +GeeSortedMap* gee_sorted_map_get_read_only_view (GeeSortedMap* self); +gpointer gee_sorted_set_first (GeeSortedSet* self); +gpointer gee_sorted_set_last (GeeSortedSet* self); +GeeIterator* gee_sorted_set_iterator_at (GeeSortedSet* self, gconstpointer element); +gpointer gee_sorted_set_lower (GeeSortedSet* self, gconstpointer element); +gpointer gee_sorted_set_higher (GeeSortedSet* self, gconstpointer element); +gpointer gee_sorted_set_floor (GeeSortedSet* self, gconstpointer element); +gpointer gee_sorted_set_ceil (GeeSortedSet* self, gconstpointer element); +GeeSortedSet* gee_sorted_set_head_set (GeeSortedSet* self, gconstpointer before); +GeeSortedSet* gee_sorted_set_tail_set (GeeSortedSet* self, gconstpointer after); +GeeSortedSet* gee_sorted_set_sub_set (GeeSortedSet* self, gconstpointer from, gconstpointer to); +GeeSortedSet* gee_sorted_set_empty (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func); +GeeSortedSet* gee_sorted_set_get_read_only_view (GeeSortedSet* self); +GType gee_tim_sort_get_type (void) G_GNUC_CONST; +void gee_tim_sort_sort (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeList* list, GCompareDataFunc compare, void* compare_target); +GeeTimSort* gee_tim_sort_new (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func); +GeeTimSort* gee_tim_sort_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func); +gboolean gee_traversable_foreach (GeeTraversable* self, GeeForallFunc f, void* f_target); +GeeIterator* gee_traversable_stream (GeeTraversable* self, GType a_type, GBoxedCopyFunc a_dup_func, GDestroyNotify a_destroy_func, GeeStreamFunc f, void* f_target, GDestroyNotify f_target_destroy_notify); +gpointer gee_traversable_fold (GeeTraversable* self, GType a_type, GBoxedCopyFunc a_dup_func, GDestroyNotify a_destroy_func, GeeFoldFunc f, void* f_target, gpointer seed); +GeeIterator* gee_traversable_map (GeeTraversable* self, GType a_type, GBoxedCopyFunc a_dup_func, GDestroyNotify a_destroy_func, GeeMapFunc f, void* f_target); +GeeIterator* gee_traversable_scan (GeeTraversable* self, GType a_type, GBoxedCopyFunc a_dup_func, GDestroyNotify a_destroy_func, GeeFoldFunc f, void* f_target, gpointer seed); +GeeIterator* gee_traversable_filter (GeeTraversable* self, GeePredicate pred, void* pred_target, GDestroyNotify pred_target_destroy_notify); +GeeIterator* gee_traversable_chop (GeeTraversable* self, gint offset, gint length); +GType gee_traversable_get_element_type (GeeTraversable* self); +GType gee_tree_map_get_type (void) G_GNUC_CONST; +GeeTreeMap* gee_tree_map_new (GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func, GCompareDataFunc key_compare_func, void* key_compare_func_target, GDestroyNotify key_compare_func_target_destroy_notify, GeeEqualDataFunc value_equal_func, void* value_equal_func_target, GDestroyNotify value_equal_func_target_destroy_notify); +GeeTreeMap* gee_tree_map_construct (GType object_type, GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func, GCompareDataFunc key_compare_func, void* key_compare_func_target, GDestroyNotify key_compare_func_target_destroy_notify, GeeEqualDataFunc value_equal_func, void* value_equal_func_target, GDestroyNotify value_equal_func_target_destroy_notify); +GCompareDataFunc gee_tree_map_get_key_compare_func (GeeTreeMap* self, gpointer* result_target); +GeeEqualDataFunc gee_tree_map_get_value_equal_func (GeeTreeMap* self, gpointer* result_target); +GType gee_tree_multi_map_get_type (void) G_GNUC_CONST; +GeeTreeMultiMap* gee_tree_multi_map_new (GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func, GCompareDataFunc key_compare_func, void* key_compare_func_target, GDestroyNotify key_compare_func_target_destroy_notify, GCompareDataFunc value_compare_func, void* value_compare_func_target, GDestroyNotify value_compare_func_target_destroy_notify); +GeeTreeMultiMap* gee_tree_multi_map_construct (GType object_type, GType k_type, GBoxedCopyFunc k_dup_func, GDestroyNotify k_destroy_func, GType v_type, GBoxedCopyFunc v_dup_func, GDestroyNotify v_destroy_func, GCompareDataFunc key_compare_func, void* key_compare_func_target, GDestroyNotify key_compare_func_target_destroy_notify, GCompareDataFunc value_compare_func, void* value_compare_func_target, GDestroyNotify value_compare_func_target_destroy_notify); +GCompareDataFunc gee_tree_multi_map_get_key_compare_func (GeeTreeMultiMap* self, gpointer* result_target); +GCompareDataFunc gee_tree_multi_map_get_value_compare_func (GeeTreeMultiMap* self, gpointer* result_target); +GType gee_tree_multi_set_get_type (void) G_GNUC_CONST; +GeeTreeMultiSet* gee_tree_multi_set_new (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GCompareDataFunc compare_func, void* compare_func_target, GDestroyNotify compare_func_target_destroy_notify); +GeeTreeMultiSet* gee_tree_multi_set_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GCompareDataFunc compare_func, void* compare_func_target, GDestroyNotify compare_func_target_destroy_notify); +GCompareDataFunc gee_tree_multi_set_get_compare_func (GeeTreeMultiSet* self, gpointer* result_target); +GType gee_tree_set_get_type (void) G_GNUC_CONST; +GeeTreeSet* gee_tree_set_new (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GCompareDataFunc compare_func, void* compare_func_target, GDestroyNotify compare_func_target_destroy_notify); +GeeTreeSet* gee_tree_set_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GCompareDataFunc compare_func, void* compare_func_target, GDestroyNotify compare_func_target_destroy_notify); +GCompareDataFunc gee_tree_set_get_compare_func (GeeTreeSet* self, gpointer* result_target); +GType gee_unfold_iterator_get_type (void) G_GNUC_CONST; +GeeUnfoldIterator* gee_unfold_iterator_new (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeUnfoldFunc func, void* func_target, GDestroyNotify func_target_destroy_notify, GeeLazy* current); +GeeUnfoldIterator* gee_unfold_iterator_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeUnfoldFunc func, void* func_target, GDestroyNotify func_target_destroy_notify, GeeLazy* current); + + +G_END_DECLS + +#endif |