gee-0.8
Description:
Libgee is a collection library providing GObject-based interfaces and classes for commonly used data structures.
Content:
Namespaces:
- Gee
- BidirIterator - A bi-directional iterator.
- BidirList
- BidirListIterator
- BidirMapIterator - A bi-directional Map iterator.
- BidirSortedMap
- BidirSortedSet
- Collection - A generic collection of objects.
- Comparable - This interface defines a total ordering among instances of each class implementing it.
- Deque - A double-ended queue.
- Future - Future is a value which might not yet be computed - for example it is calculated in different thread or depends on I/O value.
- Hashable - This interface defines a hash function among instances of each class implementing it.
- Iterable - An object that can provide an Iterator.
- Iterator - An iterator over a collection.
- List - An ordered collection.
- ListIterator - A list iterator. This supports bi-directional and index-based iteration.
- Map - An object that maps keys to values.
- MapIterator - An iterator over a map.
- MultiMap - A map with multiple values per key.
- MultiSet - A collection with duplicate elements.
- Queue - A collection designed for holding elements prior to processing.
- Set - A collection without duplicate elements.
- SortedMap
- SortedSet - A sorted set, which you can navigate over and get sub-sets of.
- Traversable - It's a common interface for Iterator and Iterable. It provides a fast, high level functions.
- AbstractBidirList
- AbstractBidirSortedMap - Skeletal implementation of the BidirSortedSet interface.
- AbstractBidirSortedSet - Skeletal implementation of the BidirSortedSet interface.
- AbstractCollection - Skeletal implementation of the Collection interface.
- AbstractList - Skeletal implementation of the List interface.
- AbstractMap - Skeletal implementation of the Map interface.
- AbstractMultiMap - Skeletal implementation of the MultiMap interface.
- AbstractMultiSet - Skeletal implementation of the MultiSet interface.
- AbstractQueue - Skeletal implementation of the Queue interface.
- AbstractSet - Skeletal implementation of the Set interface.
- AbstractSortedMap
- AbstractSortedSet - Skeletal implementation of the SortedSet interface.
- ArrayList - Resizable array implementation of the List interface.
- ArrayQueue - Resizable array implementation of the Deque interface.
- ConcurrentList - A single-linked list. This implementation is based on Mikhail Fomitchev and Eric Ruppert paper .
- ConcurrentSet - A skip-linked list. This implementation is based on Mikhail Fomitchev Master Thesis.
- HashMap - Hash table implementation of the Map interface.
- HashMultiMap - Hash table implementation of the MultiMap interface.
- HashMultiSet - Hash table implementation of the MultiSet interface.
- HashSet - Hash table implementation of the Set interface.
- HazardPointer - Hazard pointer is a method of protecting a pointer shared by many threads. If you want to use atomic pointer that may be freed you should use following code:
- Lazy - Represents a lazy value. I.e. value that is computed on demand.
- LinkedList - Doubly-linked list implementation of the List interface.
- PriorityQueue - Relaxed fibonacci heap priority queue implementation of the Queue.
- Promise - Promise allows to set a value with associated Future. Please note that value can be stored only once.
- TreeMap - Left-leaning red-black tree implementation of the Map interface.
- TreeMultiMap - Left-leaning red-black tree implementation of the MultiMap interface.
- TreeMultiSet - Left-leaning red-black tree implementation of the MultiSet interface.
- TreeSet - Left-leaning red-black tree implementation of the Set interface.
- UnrolledLinkedList - Unrolled doubly-linked list implementation of the List interface.
- public delegate bool EqualDataFunc<T> (T a, T b)
A function comparing two object defining equivalence relationship.
- public delegate Iterator<A> FlatMapFunc<A,G> (owned G g)
- public delegate A FoldFunc<A,G> (owned G g, owned A a)
- public delegate A FoldMapFunc<A,K,V> (K k, V v, owned A a)
- public delegate bool ForallFunc<G> (owned G g)
- public delegate bool ForallMapFunc<K,V> (K k, V v)
- public delegate uint HashDataFunc<T> (T v)
A function producing a hash for an object. Two hashes of equal objects (as specified by corresponding EqualDataFunc) have to be equal.
- public delegate G LazyFunc<G> ()
- public delegate A MapFunc<A,G> (owned G g)
- public delegate bool Predicate<G> (G g)
- public delegate Stream StreamFunc<G,A> (Stream state, owned Lazy<G>? g, out Lazy<A>? lazy)
- public delegate G Task<G> ()
- public delegate Lazy<A>? UnfoldFunc<A> ()
- public async void async_task () throws ThreadError
Continues the execution asynchroniously in helper thread. Internally one of threads from pool will execute the task.
- public Future<G> task<G> (owned Task<G> task) throws ThreadError
Schedules a task to execute asynchroniously. Internally one of threads from pool will execute the task.
- Functions - Helpers for equal, hash and compare functions.
- public CompareDataFunc<void*> get_compare_func_for (Type t)
Get a comparator function for a given type.
- public EqualDataFunc<void*> get_equal_func_for (Type t)
Get a equality testing function for a given type.
- public HashDataFunc<void*> get_hash_func_for (Type t)
Get a hash function for a given type.