Didier 'Ptitjes [Wed, 23 Sep 2009 21:08:16 +0000 (23:08 +0200)]
Implement TreeMultiSet
Fixes bug 594940.
Didier 'Ptitjes [Wed, 23 Sep 2009 20:54:23 +0000 (22:54 +0200)]
Extract AbstractMultiSet from HashMultiSet
Didier 'Ptitjes [Wed, 23 Sep 2009 20:33:04 +0000 (22:33 +0200)]
Introduce MapIterator<K,V> and implement it in HashMap and TreeMap
Maciej Piechotka [Wed, 16 Sep 2009 18:42:58 +0000 (20:42 +0200)]
Fix the iterators of the TreeMap and TreeSet implementations
Didier 'Ptitjes [Sun, 20 Sep 2009 01:03:00 +0000 (03:03 +0200)]
Enhance the tests for the ReadOnly* implementations
Didier 'Ptitjes [Sun, 20 Sep 2009 15:19:17 +0000 (17:19 +0200)]
Reuse the keys, values and entries view instances where possible
We use the same mechanism as for the read-only views.
Didier 'Ptitjes [Sun, 20 Sep 2009 14:25:17 +0000 (16:25 +0200)]
Introduce the Map.Entry<K,V> class and the Map.entries property
We also use Map.entries to optimize the implementations of
set_all, has_all and HashMultiMap by avoiding the common pattern:
iterate on keys and for each key get the associated value.
Didier 'Ptitjes [Sun, 20 Sep 2009 14:23:51 +0000 (16:23 +0200)]
Introduce the Map.has (K key, V value) method
Also we use Map.has to fix the implementation of has_all.
Didier 'Ptitjes [Sun, 20 Sep 2009 14:00:39 +0000 (16:00 +0200)]
Modify the Map interface API
We do apply the following renaming:
- remove to unset
- contains to has_key
- remove_all to unset_all
- contains_all to has_all
Old methods are documented as deprecated.
Also get_keys() and get_values() are transformed into properties.
Maciej Piechotka [Sat, 19 Sep 2009 20:59:33 +0000 (22:59 +0200)]
Fix fix_up method in the TreeSet and TreeMap implementations
Fixes bug 595703.
Didier 'Ptitjes [Sun, 20 Sep 2009 01:14:31 +0000 (03:14 +0200)]
Add a dependency to gee's vapi in tests' Makefile
Didier 'Ptitjes [Sun, 20 Sep 2009 00:53:17 +0000 (02:53 +0200)]
Introduce the Comparable interface and provide a CompareFunc for it
Didier 'Ptitjes [Sat, 19 Sep 2009 15:40:13 +0000 (17:40 +0200)]
Remove unusefull private setter only and construct only properties
Didier 'Ptitjes [Sat, 19 Sep 2009 15:18:22 +0000 (17:18 +0200)]
Fix first() and last() signatures in AbstractList
Didier 'Ptitjes [Tue, 15 Sep 2009 23:46:58 +0000 (01:46 +0200)]
Refactor the Set implementations' tests
Fixes bug 594241.
Didier 'Ptitjes [Tue, 15 Sep 2009 23:51:28 +0000 (01:51 +0200)]
Fix some bugs in TreeSet implementation
Fixes part of bug 594868.
The access to child nodes two level deeper does not check that the
child at the intermediate level is not null.
Also has_next was incorrectly handled in case of an empty set.
Didier 'Ptitjes [Tue, 15 Sep 2009 23:48:23 +0000 (01:48 +0200)]
Remove construct block in HashSet
Removing construct block enables the use of Vala's constructor chain up.
Didier 'Ptitjes [Tue, 15 Sep 2009 23:53:38 +0000 (01:53 +0200)]
Make Functions class a namespace and fix copyright and authorship
Didier 'Ptitjes [Tue, 15 Sep 2009 11:33:29 +0000 (13:33 +0200)]
Introduce the ListIterator interface and make lists implement it
Maciej Piechotka [Mon, 14 Sep 2009 18:09:43 +0000 (20:09 +0200)]
Introduce the BidirIterator interface
Didier 'Ptitjes [Tue, 15 Sep 2009 15:07:36 +0000 (17:07 +0200)]
Introduce remove method to the Iterator interface
Didier 'Ptitjes [Mon, 14 Sep 2009 18:51:06 +0000 (20:51 +0200)]
Add has_next and first methods to the Iterator interface
Maciej Piechotka [Mon, 14 Sep 2009 10:32:28 +0000 (12:32 +0200)]
Fix and improve the TreeMap and TreeSet implementations
Didier 'Ptitjes [Mon, 14 Sep 2009 21:06:14 +0000 (23:06 +0200)]
Fix read-only view unique instance test
Didier 'Ptitjes [Mon, 14 Sep 2009 21:05:01 +0000 (23:05 +0200)]
Fix benchmark's build with vala master
Jürg Billeter [Mon, 14 Sep 2009 20:16:06 +0000 (22:16 +0200)]
Fix build with vala master
Didier 'Ptitjes [Mon, 14 Sep 2009 17:15:18 +0000 (19:15 +0200)]
Add some tests for List.slice
Didier 'Ptitjes [Mon, 14 Sep 2009 17:09:53 +0000 (19:09 +0200)]
Fix List.get API contract and fix implementations accordingly
Didier 'Ptitjes [Mon, 14 Sep 2009 16:55:58 +0000 (18:55 +0200)]
Add tests for GObject properties
Didier 'Ptitjes [Fri, 11 Sep 2009 22:09:36 +0000 (00:09 +0200)]
Introduce PriorityQueue implementation of the Queue interface
Didier 'Ptitjes [Mon, 14 Sep 2009 16:34:09 +0000 (18:34 +0200)]
Use non-nullable capacities and a constant to specify unbounded
Didier 'Ptitjes [Mon, 14 Sep 2009 13:50:23 +0000 (15:50 +0200)]
Make Slice<G> a private inner class of TimSort<G>
Inline methods are now inlined correctly by gcc.
Julien Peeters [Fri, 11 Sep 2009 19:03:09 +0000 (21:03 +0200)]
Refactor the Map implementations' tests
Fixes part of bug 594241.
Julien Peeters [Fri, 11 Sep 2009 19:01:27 +0000 (21:01 +0200)]
Fix a bug in TreeMap implementation
Fixes part of bug 594868.
The access to child nodes two level deeper does not check that the
child at the intermediate level is not null.
Julien Peeters [Fri, 11 Sep 2009 14:04:08 +0000 (16:04 +0200)]
Change the Iterator.get method signature and fix implementations
Fixes part of bug 594868.
Change the return type of the Iterator.get method from G? to G and
apply those changes to implementations: ArrayList, HashMap,
HashMultiSet, HashSet, LinkedList, TreeMap, TreeSet.
Julien Peeters [Fri, 11 Sep 2009 11:41:16 +0000 (13:41 +0200)]
Improve the access to first and last elements in LinkedList
Fixes part of bug 594868.
The signature of first and last properties in List did not take in account the
fact that lists permit null elements. Their type has been changed from G? to G
to reflect this.
Also we optimized the access to first and last elements in LinkedList, which can
be made through head and tail pointers directly.
Julien Peeters [Thu, 10 Sep 2009 16:15:13 +0000 (18:15 +0200)]
Improve the read-only view property by using weak pointers
Fixes bug 594758.
By using weak pointers the read-only view is destroyed when there is no
references to it anymore.
Didier 'Ptitjes [Fri, 11 Sep 2009 08:05:00 +0000 (10:05 +0200)]
Introduce Queue and Deque interfaces, and implement them in LinkedList
Didier 'Ptitjes [Fri, 11 Sep 2009 07:49:54 +0000 (09:49 +0200)]
Make List.remove_at return the removed element
Didier 'Ptitjes [Fri, 11 Sep 2009 16:06:53 +0000 (18:06 +0200)]
DÃefinitiely remove trailing whitespaces
Didier 'Ptitjes [Thu, 10 Sep 2009 14:52:32 +0000 (16:52 +0200)]
Make TimSort a GObject
Didier 'Ptitjes [Thu, 10 Sep 2009 14:31:29 +0000 (16:31 +0200)]
Setup test code coverage with lcov
Code coverage analysis is enabled with --enable-coverage.
Didier 'Ptitjes [Wed, 9 Sep 2009 23:24:50 +0000 (01:24 +0200)]
Add missing --library in addition to --vapi in gee/Makefile
The --gir option is not activated is --library is missing.
Julien Peeters [Tue, 8 Sep 2009 23:00:20 +0000 (01:00 +0200)]
Hide read-only views and make them accessible through a property
Fixes bug 594578.
A new read_only_view property is introduced in the Collection, List, Set and Map
interfaces. The AbstractSet class is introduced to put the common code for the
read_only_view property.
Didier 'Ptitjes [Wed, 9 Sep 2009 20:06:26 +0000 (22:06 +0200)]
Introduce benchmarks
Didier 'Ptitjes [Wed, 9 Sep 2009 20:25:00 +0000 (22:25 +0200)]
Introduce TimSort and the public sorting API
Maciej Piechotka [Sun, 6 Sep 2009 22:47:57 +0000 (00:47 +0200)]
Remove possibility of passing null to constructors of ReadOnly* classes
Fixes bug 590305.
Tomaž Vajngerl [Mon, 3 Aug 2009 20:09:24 +0000 (22:09 +0200)]
Change ReadOnlySet to inherit from ReadOnlyCollection.
Fixes part of bug 590677.
Tomaž Vajngerl [Mon, 3 Aug 2009 20:10:48 +0000 (22:10 +0200)]
Change ReadOnlyList to inherit from ReadOnlyCollection.
Fixes part of bug 590677.
Didier 'Ptitjes [Sun, 6 Sep 2009 22:38:53 +0000 (00:38 +0200)]
Fix ReadOnlyCollection and ReadOnlyMap encapsulation failure
Tomaž Vajngerl [Sun, 6 Sep 2009 20:37:00 +0000 (22:37 +0200)]
Add tests for ReadOnlyCollection and ReadOnlyList
Fixes part of bug 590677.
Contains missing tests for ReadOnlyCollection and ReadOnlyList following
the new tests implementation.
Ali Sabil [Sun, 6 Sep 2009 19:24:35 +0000 (21:24 +0200)]
Introduce the MultiMap interface and its hash based implementation
Ali Sabil [Sun, 6 Sep 2009 18:35:53 +0000 (20:35 +0200)]
Introduce the MultiSet interface and its hash based implementation
Julien Peeters [Sun, 6 Sep 2009 18:47:17 +0000 (20:47 +0200)]
Reuse generic Collection and List tests for LinkedList
LinkedList tests now follow the same way of testing than ArrayList ones.
LinkedList tests inherit from the ListTests.
Julien Peeters [Sun, 6 Sep 2009 18:38:25 +0000 (20:38 +0200)]
Fix misunderstanding about ArrayList.{retain,remove}_all semantics
These methods did not match the semantic of the Collection interface ones.
Then they are deleted in order to use the implementation in
AbstractCollection.
By the way, few optimization could probably be found for these methods in
the case of ArrayList.
Julien Peeters [Sat, 5 Sep 2009 16:29:58 +0000 (18:29 +0200)]
Add generic tests for collections and lists and refactor ArrayListTests
Fixes part of bug 594241.
Julien Peeters [Sat, 5 Sep 2009 14:25:54 +0000 (16:25 +0200)]
Some more enhancements to the test infrastructure
TestCase is a more appropriate name, and so are set_up and tear_down.
Julien Peeters [Sat, 5 Sep 2009 09:21:29 +0000 (11:21 +0200)]
Adding a short descriptive introduction for each implementation class.
Generally this introduction consists of a implementation description and
few word about comparison with other structures.
Julien Peeters [Fri, 4 Sep 2009 16:07:08 +0000 (18:07 +0200)]
Adding a first very basic documentation to data types implementations.
When a data type method is already documented in a super class or
in an interface the '@inheritDoc' parameter is set.
Didier 'Ptitjes [Fri, 4 Sep 2009 00:44:48 +0000 (02:44 +0200)]
Initial documentation infrastructure import
Didier 'Ptitjes [Thu, 3 Sep 2009 22:14:53 +0000 (00:14 +0200)]
Fixing generics typo in HashMap's Value collection
Didier 'Ptitjes [Thu, 3 Sep 2009 18:57:00 +0000 (20:57 +0200)]
Change inner classes' properties from construct to private set
Removing construct properties enables the use of Vala's constructor chain up.
Didier 'Ptitjes [Wed, 26 Aug 2009 13:41:53 +0000 (15:41 +0200)]
Provide sane defaults for equal, hash and compare functions
Didier 'Ptitjes [Wed, 26 Aug 2009 13:38:49 +0000 (15:38 +0200)]
Change *_func properties from construct to private set
Removing construct properties enables to use Vala's constructor chain up.
Didier 'Ptitjes [Wed, 5 Aug 2009 11:07:11 +0000 (13:07 +0200)]
Post-release version bump
Didier 'Ptitjes [Wed, 5 Aug 2009 11:04:30 +0000 (13:04 +0200)]
Release 0.3.0
Didier 'Ptitjes [Wed, 5 Aug 2009 08:26:07 +0000 (10:26 +0200)]
Enhanced Map removal to optionally retrieve removed value
Fixes bug 587134.
Didier 'Ptitjes [Tue, 4 Aug 2009 23:20:23 +0000 (01:20 +0200)]
Remove invalid to_array implementation and re-enable test
Didier 'Ptitjes [Mon, 3 Aug 2009 09:48:27 +0000 (11:48 +0200)]
Bump library's version info
Didier 'Ptitjes [Fri, 31 Jul 2009 16:15:16 +0000 (18:15 +0200)]
Temporarily disable to_array test
Tomaž Vajngerl [Sun, 26 Jul 2009 10:49:27 +0000 (12:49 +0200)]
Add Map.is_empty|set_all|remove_all|contains_all and AbstractMap implementations
Fixes bug 589902.
Tomaž Vajngerl [Sun, 26 Jul 2009 10:33:49 +0000 (12:33 +0200)]
Add List.first|last|insert_all methods and AbstractList implementations
Fixes bug 589894.
Tomaž Vajngerl [Sat, 25 Jul 2009 15:24:41 +0000 (17:24 +0200)]
Added Collection.is_empty|add_all|contains_all|remove_all|retain_all
Fixes bug 589690.
Maciej Piechotka [Fri, 31 Jul 2009 12:59:01 +0000 (14:59 +0200)]
Make Iterable.get_element_type a property
Fixes bug 589551.
Didier 'Ptitjes [Fri, 31 Jul 2009 12:50:47 +0000 (14:50 +0200)]
Remove unused inherited interface declarations
Didier 'Ptitjes [Fri, 31 Jul 2009 10:23:11 +0000 (12:23 +0200)]
Fix list of maintainers
Didier 'Ptitjes [Mon, 27 Jul 2009 21:46:34 +0000 (23:46 +0200)]
Fix invalid test commit
Julien Peeters [Mon, 27 Jul 2009 20:50:00 +0000 (22:50 +0200)]
Make TestFixture's setup and teardown methods virtual
Didier 'Ptitjes [Mon, 27 Jul 2009 20:39:32 +0000 (22:39 +0200)]
Initial rework for tests
Didier 'Ptitjes [Mon, 27 Jul 2009 20:16:54 +0000 (22:16 +0200)]
Fix AbstractCollection.to_array method
Julien Peeters [Mon, 27 Jul 2009 20:09:21 +0000 (22:09 +0200)]
Add test fixture helper
Didier 'Ptitjes [Thu, 23 Jul 2009 22:41:03 +0000 (00:41 +0200)]
Introduce Collection.to_array() method
A default naive implementation is provided in AbstractCollection. This
implementation is overriden in ArrayList in order to take benefit of its array
nature.
Didier 'Ptitjes [Thu, 23 Jul 2009 12:05:31 +0000 (14:05 +0200)]
Introduce AbstractCollection base class
All collection implementations now have a common AbstractCollection base class
and now share the implementation of the get_element_type() method.
Didier 'Ptitjes [Thu, 23 Jul 2009 12:17:27 +0000 (14:17 +0200)]
Remove unused variable in tests
Didier 'Ptitjes [Thu, 23 Jul 2009 11:42:46 +0000 (13:42 +0200)]
Fix generic parameter typo
Mark Lee [Thu, 23 Jul 2009 08:15:27 +0000 (10:15 +0200)]
Add doubly linked list implementation
Fixes bug 584032.
Maciej Piechotka [Sun, 24 May 2009 14:37:07 +0000 (16:37 +0200)]
Make func and wrappee properties non-updatable
Fixes bug 583723.
Signed-off-by: Didier 'Ptitjes <ptitjes@free.fr>
Maciej Piechotka [Sun, 19 Jul 2009 20:29:17 +0000 (22:29 +0200)]
Add left-leaning red-black tree based set and map
Fixes bug 583728.
Signed-off-by: Didier 'Ptitjes <ptitjes@free.fr>
Didier 'Ptitjes [Wed, 22 Jul 2009 12:18:50 +0000 (14:18 +0200)]
Post-release version bump
Didier 'Ptitjes [Wed, 22 Jul 2009 11:46:24 +0000 (13:46 +0200)]
Release 0.2.0
Didier 'Ptitjes [Wed, 22 Jul 2009 11:44:59 +0000 (13:44 +0200)]
Hardcode gir repository path
Use of pkg-config make distcheck fail.
Didier 'Ptitjes [Mon, 20 Jul 2009 14:30:23 +0000 (16:30 +0200)]
Match vala-0.7.4's required GLib version
Signed-off-by: Didier 'Ptitjes <ptitjes@free.fr>
Didier 'Ptitjes [Mon, 20 Jul 2009 09:58:52 +0000 (11:58 +0200)]
Generate, install and distribute GIR file
Signed-off-by: Didier 'Ptitjes <ptitjes@free.fr>
Didier 'Ptitjes [Mon, 20 Jul 2009 07:44:06 +0000 (09:44 +0200)]
Post-release version bump
Signed-off-by: Didier 'Ptitjes <ptitjes@free.fr>
Didier 'Ptitjes [Sun, 19 Jul 2009 22:04:55 +0000 (00:04 +0200)]
Release 0.1.6
Signed-off-by: Didier 'Ptitjes <ptitjes@free.fr>
Julien Fontanet [Sun, 19 Jul 2009 21:52:24 +0000 (23:52 +0200)]
Make ArrayList.Iterator._stamp private
Signed-off-by: Didier 'Ptitjes <ptitjes@free.fr>
Julien Fontanet [Sun, 19 Jul 2009 21:50:45 +0000 (23:50 +0200)]
Split asserts in ArrayList
Signed-off-by: Didier 'Ptitjes <ptitjes@free.fr>
Didier 'Ptitjes [Sun, 19 Jul 2009 14:11:57 +0000 (16:11 +0200)]
Hide inherited get and set methods from GLib.Object
Signed-off-by: Julien Fontanet <julien.fontanet@isonoe.net>
Didier 'Ptitjes [Sun, 19 Jul 2009 13:53:57 +0000 (15:53 +0200)]
Add missing method documentation comment
Signed-off-by: Didier 'Ptitjes <ptitjes@free.fr>
Didier 'Ptitjes [Thu, 16 Jul 2009 08:53:46 +0000 (10:53 +0200)]
Initialize 'next' variables
Fixes bug 588758.
Signed-off-by: Didier 'Ptitjes <ptitjes@free.fr>