1 var isSymbol = require(
'./isSymbol');
11 function compareAscending(value, other) {
12 if (value !== other) {
13 var valIsDefined = value !== undefined,
14 valIsNull = value === null,
15 valIsReflexive = value === value,
16 valIsSymbol = isSymbol(value);
18 var othIsDefined = other !== undefined,
19 othIsNull = other === null,
20 othIsReflexive = other === other,
21 othIsSymbol = isSymbol(other);
23 if ((!othIsNull && !othIsSymbol && !valIsSymbol && value > other) ||
24 (valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol) ||
25 (valIsNull && othIsDefined && othIsReflexive) ||
26 (!valIsDefined && othIsReflexive) ||
30 if ((!valIsNull && !valIsSymbol && !othIsSymbol && value < other) ||
31 (othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol) ||
32 (othIsNull && valIsDefined && valIsReflexive) ||
33 (!othIsDefined && valIsReflexive) ||
41 module.exports = compareAscending;