[ANNOUNCE] Libgee 0.5.0 - GObject collection library
- From: Didier 'Ptitjes' <ptitjes free fr>
- To: libgee-list <libgee-list gnome org>
- Cc: gnome-announce-list gnome org, vala-list <vala-list gnome org>
- Subject: [ANNOUNCE] Libgee 0.5.0 - GObject collection library
- Date: Mon, 28 Sep 2009 21:10:20 +0200
We are very pleased to announce version 0.5.0 of Libgee, the GObject
collection library.
Libgee 0.5.0 is now available for download at:
http://download.gnome.org/sources/libgee/0.5/
Also please note that now Libgee has its own mailing-list
http://mail.gnome.org/mailman/listinfo/libgee-list
and its own #gee IRC channel.
New in 0.5.0
------------
* API changes
* Introduce Functions hash, equal and compare function factory
* Introduce Comparable<G> interface
* Implementations provides defaults when constructed without function
* ReadOnly* made internal in favor of a `read_only_view` properties
* Iterator<G> is now mutable and resettable
* Introduction of BidirIterator<G> bidirectional iterators
* List<G>.list_iterator () returns a specialized ListIterator<G>
* Various API contracts clarifications and enhancements
* Introduce List<G>.sort () with TimSort implementation
* Complete Map API rework
* Introduce Queue and Deque interfaces
* Introduce MultiSet and MultiMap interfaces (Ali Sabil)
* Introduce SortedSet interface (Maciej Pietchotka)
* New implementations
* HashMultiSet and HashMultiMap (Ali Sabil)
* TreeMultiSet and TreeMultiMap.
* PriorityQueue
* LinkedList now implements Deque
* TreeSet now implements SortedSet (Maciej Pietchotka)
* Infrastructure
* New test framework and complete tests refactoring (Julien Peters)
* New doc/ documentation directory (--enable-doc)
* Test coverage analysis using lcov (--enable-coverage)
* Basic benchmark framework and sort benchmark (--enable-benchmark)
* Use silent rules by default for users of automake 1.11
* Code Quality
* Many bug fixes
* Many optimizations
* Lots of additional documentation
* Better overall encapsulation, public setters have been removed
* Better test coverage (more than 90%)
For more information about the 0.5.0 release, see:
http://live.gnome.org/Libgee/NewAndNoteworthy-0.5
http://live.gnome.org/Libgee/Migration-0.5
Libgee is a collection library providing GObject-based interfaces and
classes for commonly used data structures.
Libgee provides the following interfaces:
* Iterable
o 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.
More information about Vala is available at
http://live.gnome.org/Libgee
Didier 'Ptitjes' Villevalois
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]