Update README
[platform/upstream/libgee.git] / README
1 Libgee is a collection library providing GObject-based interfaces and 
2 classes for commonly used data structures.
3
4 Libgee provides the following interfaces:
5
6      * Traversable
7            o Iterable
8                  + Collection
9                        # List
10                              * BidirList
11                        # Set
12                              * SortedSet
13                                  o BidirSortedSet
14                        # MultiSet
15                        # Queue
16                              * Deque
17                  + Map
18                        # SortedMap
19                              * BidirSortedMap
20            o Iterator
21                  + BidirIterator
22                        # BidirListIterator
23                  + ListIterator
24                        # BidirListIterator
25      * MultiMap
26
27 The ArrayList, ArrauQueue, ConcurrentLinkedList HashSet, HashMap, HashMultiSet,
28 HashMultiMap, LinkedList, PriorityQueue, TreeSet, TreeMap,
29 TreeMultiSet, and TreeMultiMap classes provide a reasonable sample
30 implementation of those interfaces. In addition, a set of abstract
31 classes are provided to ease the implementation of new collections.
32
33 Around that, the API provide means to retrieve read-only views, 
34 efficient sort algorithms, simple, bi-directional or index-based mutable 
35 iterators depending on the collection type.
36
37 Libgee is written in Vala and can be used like any GObject-based C 
38 library. It's planned to provide bindings for further languages.