(sortPredicate, reverseOrder)
| 19432 | }; |
| 19433 | |
| 19434 | function processPredicates(sortPredicate, reverseOrder) { |
| 19435 | reverseOrder = reverseOrder ? -1 : 1; |
| 19436 | return sortPredicate.map(function(predicate) { |
| 19437 | var descending = 1, get = identity; |
| 19438 | |
| 19439 | if (isFunction(predicate)) { |
| 19440 | get = predicate; |
| 19441 | } else if (isString(predicate)) { |
| 19442 | if ((predicate.charAt(0) == '+' || predicate.charAt(0) == '-')) { |
| 19443 | descending = predicate.charAt(0) == '-' ? -1 : 1; |
| 19444 | predicate = predicate.substring(1); |
| 19445 | } |
| 19446 | if (predicate !== '') { |
| 19447 | get = $parse(predicate); |
| 19448 | if (get.constant) { |
| 19449 | var key = get(); |
| 19450 | get = function(value) { return value[key]; }; |
| 19451 | } |
| 19452 | } |
| 19453 | } |
| 19454 | return { get: get, descending: descending * reverseOrder }; |
| 19455 | }); |
| 19456 | } |
| 19457 | |
| 19458 | function isPrimitive(value) { |
| 19459 | switch (typeof value) { |
no test coverage detected