Expose the sort/unique code from Sizzle as Sizzle.uniqueSort().
authorJohn Resig <jeresig@gmail.com>
Wed, 25 Feb 2009 15:19:08 +0000 (15:19 +0000)
committerJohn Resig <jeresig@gmail.com>
Wed, 25 Feb 2009 15:19:08 +0000 (15:19 +0000)
src/selector.js

index 2e6d8e1..48aeea5 100644 (file)
@@ -124,22 +124,25 @@ var Sizzle = function(selector, context, results, seed) {
 
        if ( extra ) {
                Sizzle( extra, origContext, results, seed );
+               Sizzle.uniqueSort( results );
+       }
 
-               if ( sortOrder ) {
-                       hasDuplicate = false;
-                       results.sort(sortOrder);
+       return results;
+};
 
-                       if ( hasDuplicate ) {
-                               for ( var i = 1; i < results.length; i++ ) {
-                                       if ( results[i] === results[i-1] ) {
-                                               results.splice(i--, 1);
-                                       }
+Sizzle.uniqueSort = function(results){
+       if ( sortOrder ) {
+               hasDuplicate = false;
+               results.sort(sortOrder);
+
+               if ( hasDuplicate ) {
+                       for ( var i = 1; i < results.length; i++ ) {
+                               if ( results[i] === results[i-1] ) {
+                                       results.splice(i--, 1);
                                }
                        }
                }
        }
-
-       return results;
 };
 
 Sizzle.matches = function(expr, set){