diff --git a/src/as/com/threerings/util/Comparators.as b/src/as/com/threerings/util/Comparators.as index 49d814e7d..5e1f99747 100644 --- a/src/as/com/threerings/util/Comparators.as +++ b/src/as/com/threerings/util/Comparators.as @@ -5,13 +5,14 @@ package com.threerings.util { /** * Contains sorting Comparators. + * These functions are suitable for passing to Array.sort(), or with a flex Sort object. */ public class Comparators { /** * A standard Comparator for comparing Comparable values. */ - public static function COMPARABLE (c1 :Comparable, c2 :Comparable) :int + public static function COMPARABLE (c1 :Comparable, c2 :Comparable, ... ignored) :int { if (c1 == c2) { // same object -or- both null return 0; @@ -23,5 +24,15 @@ public class Comparators return c1.compareTo(c2); } } + + /** + * Create a Comparator function that reverses the ordering of the specified Comparator. + */ + public static function createReverse (comparator :Function) :Function + { + return function (o1 :Object, o2 :Object, ... ignored) :int { + return comparator(o2, o1); // simply reverse the ordering + } + } } }