/* gee.h generated by valac 0.36.11, the Vala compiler, do not modify */
#ifndef __GEE_H__
#define __GEE_H__
#include <glib.h>
#include <glib-object.h>
#include <gio/gio.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_FUTURE (gee_future_get_type ())
#define GEE_FUTURE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_FUTURE, GeeFuture))
#define GEE_IS_FUTURE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_FUTURE))
#define GEE_FUTURE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GEE_TYPE_FUTURE, GeeFutureIface))
typedef struct _GeeFuture GeeFuture;
typedef struct _GeeFutureIface GeeFutureIface;
#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 ())
#define GEE_HAZARD_POINTER_TYPE_RELEASE_POLICY (gee_hazard_pointer_release_policy_get_type ())
typedef struct _GeeHazardPointerContext GeeHazardPointerContext;
typedef struct _GeeHazardPointerFreeNode GeeHazardPointerFreeNode;
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_PROMISE (gee_promise_get_type ())
#define GEE_PROMISE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_PROMISE, GeePromise))
#define GEE_PROMISE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_PROMISE, GeePromiseClass))
#define GEE_IS_PROMISE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_PROMISE))
#define GEE_IS_PROMISE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_PROMISE))
#define GEE_PROMISE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_PROMISE, GeePromiseClass))
typedef struct _GeePromise GeePromise;
typedef struct _GeePromiseClass GeePromiseClass;
typedef struct _GeePromisePrivate GeePromisePrivate;
#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_UNROLLED_LINKED_LIST (gee_unrolled_linked_list_get_type ())
#define GEE_UNROLLED_LINKED_LIST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GEE_TYPE_UNROLLED_LINKED_LIST, GeeUnrolledLinkedList))
#define GEE_UNROLLED_LINKED_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GEE_TYPE_UNROLLED_LINKED_LIST, GeeUnrolledLinkedListClass))
#define GEE_IS_UNROLLED_LINKED_LIST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GEE_TYPE_UNROLLED_LINKED_LIST))
#define GEE_IS_UNROLLED_LINKED_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GEE_TYPE_UNROLLED_LINKED_LIST))
#define GEE_UNROLLED_LINKED_LIST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GEE_TYPE_UNROLLED_LINKED_LIST, GeeUnrolledLinkedListClass))
typedef struct _GeeUnrolledLinkedList GeeUnrolledLinkedList;
typedef struct _GeeUnrolledLinkedListClass GeeUnrolledLinkedListClass;
typedef struct _GeeUnrolledLinkedListPrivate GeeUnrolledLinkedListPrivate;
typedef gboolean (*GeeForallFunc) (gpointer g, void* user_data);
typedef enum {
GEE_TRAVERSABLE_STREAM_YIELD,
GEE_TRAVERSABLE_STREAM_CONTINUE,
GEE_TRAVERSABLE_STREAM_END,
GEE_TRAVERSABLE_STREAM_WAIT
} 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);
typedef GeeIterator* (*GeeFlatMapFunc) (gpointer 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);
GeeIterator* (*flat_map) (GeeTraversable* self, GType a_type, GBoxedCopyFunc a_dup_func, GDestroyNotify a_destroy_func, GeeFlatMapFunc f, void* f_target, GDestroyNotify f_target_destroy_notify);
GeeIterator** (*tee) (GeeTraversable* self, guint forks, int* result_length1);
gpointer (*first_match) (GeeTraversable* self, GeePredicate pred, void* pred_target, GDestroyNotify pred_target_destroy_notify);
gboolean (*any_match) (GeeTraversable* self, GeePredicate pred, void* pred_target, GDestroyNotify pred_target_destroy_notify);
gboolean (*all_match) (GeeTraversable* self, GeePredicate pred, void* pred_target, GDestroyNotify pred_target_destroy_notify);
gpointer (*max) (GeeTraversable* self, GCompareDataFunc compare, void* compare_target, GDestroyNotify compare_target_destroy_notify);
gpointer (*min) (GeeTraversable* self, GCompareDataFunc compare, void* compare_target, GDestroyNotify compare_target_destroy_notify);
GeeIterator* (*order_by) (GeeTraversable* self, GCompareDataFunc compare, void* compare_target, GDestroyNotify compare_target_destroy_notify);
};
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);
gboolean (*add_all_array) (GeeCollection* self, gpointer* array, int array_length1);
gboolean (*contains_all_array) (GeeCollection* self, gpointer* array, int array_length1);
gboolean (*remove_all_array) (GeeCollection* self, gpointer* array, int array_length1);
gboolean (*add_all_iterator) (GeeCollection* self, GeeIterator* iter);
gboolean (*contains_all_iterator) (GeeCollection* self, GeeIterator* iter);
gboolean (*remove_all_iterator) (GeeCollection* self, GeeIterator* iter);
};
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);
typedef enum {
GEE_FUTURE_ERROR_ABANDON_PROMISE,
GEE_FUTURE_ERROR_EXCEPTION
} GeeFutureError;
#define GEE_FUTURE_ERROR gee_future_error_quark ()
typedef gpointer (*GeeFutureMapFunc) (gconstpointer value, void* user_data);
typedef gconstpointer (*GeeFutureLightMapFunc) (gconstpointer value, void* user_data);
typedef gpointer (*GeeFutureZipFunc) (gconstpointer a, gconstpointer b, void* user_data);
typedef GeeFuture* (*GeeFutureFlatMapFunc) (gconstpointer value, void* user_data);
struct _GeeFutureIface {
GTypeInterface parent_iface;
GType (*get_g_type) (GeeFuture* self);
GBoxedCopyFunc (*get_g_dup_func) (GeeFuture* self);
GDestroyNotify (*get_g_destroy_func) (GeeFuture* self);
gconstpointer (*wait) (GeeFuture* self, GError** error);
gboolean (*wait_until) (GeeFuture* self, gint64 end_time, gconstpointer* value, GError** error);
void (*wait_async) (GeeFuture* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
gconstpointer (*wait_finish) (GeeFuture* self, GAsyncResult* _res_, GError** error);
GeeFuture* (*map) (GeeFuture* self, GType a_type, GBoxedCopyFunc a_dup_func, GDestroyNotify a_destroy_func, GeeFutureMapFunc func, void* func_target, GDestroyNotify func_target_destroy_notify);
GeeFuture* (*light_map) (GeeFuture* self, GType a_type, GBoxedCopyFunc a_dup_func, GDestroyNotify a_destroy_func, GeeFutureLightMapFunc func, void* func_target);
GeeFuture* (*zip) (GeeFuture* self, GType a_type, GBoxedCopyFunc a_dup_func, GDestroyNotify a_destroy_func, GType b_type, GBoxedCopyFunc b_dup_func, GDestroyNotify b_destroy_func, GeeFutureZipFunc zip_func, void* zip_func_target, GeeFuture* second);
GeeFuture* (*flat_map) (GeeFuture* self, GType a_type, GBoxedCopyFunc a_dup_func, GDestroyNotify a_destroy_func, GeeFutureFlatMapFunc func, void* func_target, GDestroyNotify func_target_destroy_notify);
gconstpointer (*get_value) (GeeFuture* self);
gboolean (*get_ready) (GeeFuture* self);
GError* (*get_exception) (GeeFuture* self);
GeeFuture* (*light_map_fixed) (GeeFuture* self, GType a_type, GBoxedCopyFunc a_dup_func, GDestroyNotify a_destroy_func, GeeFutureLightMapFunc func, void* func_target, GDestroyNotify func_target_destroy_notify);
};
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;
struct _GeeHazardPointerContext {
GeeHazardPointerContext* _parent;
GeeArrayList* _to_free;
GeeHazardPointerPolicy* _policy;
};
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 _GeePromise {
GTypeInstance parent_instance;
volatile int ref_count;
GeePromisePrivate * priv;
};
struct _GeePromiseClass {
GTypeClass parent_class;
void (*finalize) (GeePromise *self);
};
typedef gpointer (*GeeTask) (void* user_data);
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 _GeeUnrolledLinkedList {
GeeAbstractBidirList parent_instance;
GeeUnrolledLinkedListPrivate * priv;
};
struct _GeeUnrolledLinkedListClass {
GeeAbstractBidirListClass 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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
gboolean gee_collection_add_all_iterator (GeeCollection* self, GeeIterator* iter);
gboolean gee_collection_contains_all_iterator (GeeCollection* self, GeeIterator* iter);
gboolean gee_collection_remove_all_iterator (GeeCollection* self, GeeIterator* iter);
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);
GQuark gee_future_error_quark (void);
GType gee_future_get_type (void) G_GNUC_CONST;
gconstpointer gee_future_wait (GeeFuture* self, GError** error);
gboolean gee_future_wait_until (GeeFuture* self, gint64 end_time, gconstpointer* value, GError** error);
void gee_future_wait_async (GeeFuture* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
gconstpointer gee_future_wait_finish (GeeFuture* self, GAsyncResult* _res_, GError** error);
GeeFuture* gee_future_map (GeeFuture* self, GType a_type, GBoxedCopyFunc a_dup_func, GDestroyNotify a_destroy_func, GeeFutureMapFunc func, void* func_target, GDestroyNotify func_target_destroy_notify);
GeeFuture* gee_future_light_map_fixed (GeeFuture* self, GType a_type, GBoxedCopyFunc a_dup_func, GDestroyNotify a_destroy_func, GeeFutureLightMapFunc func, void* func_target, GDestroyNotify func_target_destroy_notify);
GeeFuture* gee_future_light_map (GeeFuture* self, GType a_type, GBoxedCopyFunc a_dup_func, GDestroyNotify a_destroy_func, GeeFutureLightMapFunc func, void* func_target);
GeeFuture* gee_future_zip (GeeFuture* self, GType a_type, GBoxedCopyFunc a_dup_func, GDestroyNotify a_destroy_func, GType b_type, GBoxedCopyFunc b_dup_func, GDestroyNotify b_destroy_func, GeeFutureZipFunc zip_func, void* zip_func_target, GeeFuture* second);
GeeFuture* gee_future_flat_map (GeeFuture* self, GType a_type, GBoxedCopyFunc a_dup_func, GDestroyNotify a_destroy_func, GeeFutureFlatMapFunc func, void* func_target, GDestroyNotify func_target_destroy_notify);
gconstpointer gee_future_get_value (GeeFuture* self);
gboolean gee_future_get_ready (GeeFuture* self);
GError* gee_future_get_exception (GeeFuture* self);
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_fixed (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);
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, GDestroyNotify hash_func_target_destroy_notify, GeeEqualDataFunc equal_func, void* equal_func_target, GDestroyNotify equal_func_target_destroy_notify);
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) G_GNUC_DEPRECATED;
GeeHashMultiSet* gee_hash_multi_set_construct_broken (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) G_GNUC_DEPRECATED;
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);
G_GNUC_INTERNAL 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);
GType gee_hazard_pointer_release_policy_get_type (void) G_GNUC_CONST;
GeeHazardPointer* gee_hazard_pointer_new (gconstpointer* ptr);
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, GDestroyNotify 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);
void gee_hazard_pointer_context_free (GeeHazardPointerContext * self);
G_GNUC_INTERNAL void gee_hazard_pointer_free_node_free (GeeHazardPointerFreeNode * self);
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);
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);
GeeFuture* gee_lazy_get_future (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);
gpointer gee_promise_ref (gpointer instance);
void gee_promise_unref (gpointer instance);
GParamSpec* gee_param_spec_promise (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void gee_value_set_promise (GValue* value, gpointer v_object);
void gee_value_take_promise (GValue* value, gpointer v_object);
gpointer gee_value_get_promise (const GValue* value);
GType gee_promise_get_type (void) G_GNUC_CONST;
GeePromise* gee_promise_new (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func);
GeePromise* gee_promise_construct (GType object_type, GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func);
void gee_promise_set_value (GeePromise* self, gpointer value);
void gee_promise_set_exception (GeePromise* self, GError* exception);
GeeFuture* gee_promise_get_future (GeePromise* self);
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);
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);
GeeFuture* gee_task (GType g_type, GBoxedCopyFunc g_dup_func, GDestroyNotify g_destroy_func, GeeTask task, void* task_target, GError** error);
void gee_async_task (GAsyncReadyCallback _callback_, gpointer _user_data_);
void gee_async_task_finish (GAsyncResult* _res_, GError** error);
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);
GeeIterator* gee_traversable_flat_map (GeeTraversable* self, GType a_type, GBoxedCopyFunc a_dup_func, GDestroyNotify a_destroy_func, GeeFlatMapFunc f, void* f_target, GDestroyNotify f_target_destroy_notify);
GeeIterator** gee_traversable_tee (GeeTraversable* self, guint forks, int* result_length1);
gpointer gee_traversable_first_match (GeeTraversable* self, GeePredicate pred, void* pred_target, GDestroyNotify pred_target_destroy_notify);
gboolean gee_traversable_any_match (GeeTraversable* self, GeePredicate pred, void* pred_target, GDestroyNotify pred_target_destroy_notify);
gboolean gee_traversable_all_match (GeeTraversable* self, GeePredicate pred, void* pred_target, GDestroyNotify pred_target_destroy_notify);
gpointer gee_traversable_max (GeeTraversable* self, GCompareDataFunc compare, void* compare_target, GDestroyNotify compare_target_destroy_notify);
gpointer gee_traversable_min (GeeTraversable* self, GCompareDataFunc compare, void* compare_target, GDestroyNotify compare_target_destroy_notify);
GeeIterator* gee_traversable_order_by (GeeTraversable* self, GCompareDataFunc compare, void* compare_target, GDestroyNotify compare_target_destroy_notify);
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_unrolled_linked_list_get_type (void) G_GNUC_CONST;
GeeUnrolledLinkedList* gee_unrolled_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);
GeeUnrolledLinkedList* gee_unrolled_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);
GeeEqualDataFunc gee_unrolled_linked_list_get_equal_func (GeeUnrolledLinkedList* self, gpointer* result_target);
G_END_DECLS
#endif