Added Comparators.COMPARABLE.

git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4937 542714f4-19e9-0310-aa3c-eee0fc999fb1
This commit is contained in:
Ray Greenwell
2008-02-19 00:40:36 +00:00
parent cde838dc45
commit 875d4988a3
2 changed files with 28 additions and 11 deletions
+1 -11
View File
@@ -36,17 +36,7 @@ public class ArrayUtil
*/
public static function sort (arr :Array) :void
{
arr.sort(function (obj1 :Object, obj2 :Object) :int {
if (obj1 == obj2) { // same object or both null
return 0;
} else if (obj1 == null) {
return -1;
} else if (obj2 == null) {
return 1;
} else {
return Comparable(obj1).compareTo(obj2);
}
});
arr.sort(Comparators.COMPARABLE);
}
/**
+27
View File
@@ -0,0 +1,27 @@
//
// $Id$
package com.threerings.util {
/**
* Contains sorting Comparators.
*/
public class Comparators
{
/**
* A standard Comparator for comparing Comparable values.
*/
public static function COMPARABLE (c1 :Comparable, c2 :Comparable) :int
{
if (c1 == c2) { // same object -or- both null
return 0;
} else if (c1 == null) {
return -1;
} else if (c2 == null) {
return 1;
} else {
return c1.compareTo(c2);
}
}
}
}