# libgee Libgee is a collection library providing GObject-based interfaces and classes for commonly used data structures. Libgee provides the following interfaces: * Iterable * Collection * List * Set * MultiSet * Queue * Deque * Iterator * Map * MultiMap The ArrayList, HashSet, HashMap, HashMultiSet, HashMultiMap, LinkedList, PriorityQueue, TreeSet, TreeMap, TreeMultiSet, and TreeMultiMap classes provide a reasonable sample implementation of those interfaces. In addition, a set of abstract classes are provided to ease the implementation of new collections. Around that, the API provide means to retrieve read-only views, efficient sort algorithms, simple, bi-directional or index-based mutable iterators depending on the collection type. Libgee is written in Vala and can be used like any GObject-based C library. It's planned to provide bindings for further languages.