aboutsummaryrefslogtreecommitdiff
path: root/test/containers.cc
diff options
context:
space:
mode:
authorSebastian Geerken <devnull@localhost>2013-04-10 22:52:55 +0200
committerSebastian Geerken <devnull@localhost>2013-04-10 22:52:55 +0200
commit812d9f27982903650a0f5497cd67c1602efc1ce7 (patch)
treeb259bde8c9159aa5128da469944a699ff11f8f47 /test/containers.cc
parentf28fb7335e1e47a82c9b869bf6b6f44e60372f19 (diff)
Introduced Comparator.
Diffstat (limited to 'test/containers.cc')
-rw-r--r--test/containers.cc15
1 files changed, 15 insertions, 0 deletions
diff --git a/test/containers.cc b/test/containers.cc
index 40b2d8c8..7cbaf2c9 100644
--- a/test/containers.cc
+++ b/test/containers.cc
@@ -4,6 +4,16 @@
using namespace lout::object;
using namespace lout::container::typed;
+class ReverseComparator: public Comparator
+{
+private:
+ Comparator *reversed;
+
+public:
+ ReverseComparator (Comparator *reversed) { this->reversed = reversed; }
+ int compare(Object *o1, Object *o2) { return - reversed->compare (o1, o2); }
+};
+
void testHashSet ()
{
puts ("--- testHashSet ---");
@@ -38,6 +48,8 @@ void testHashTable ()
void testVector1 ()
{
+ ReverseComparator reverse (&standardComparator);
+
puts ("--- testVector (1) ---");
Vector<String> v (true, 1);
@@ -47,6 +59,9 @@ void testVector1 ()
v.put (new String ("three"));
puts (v.toString());
+ v.sort (&reverse);
+ puts (v.toString());
+
v.sort ();
puts (v.toString());
}