48 lines
1.2 KiB
JavaScript
48 lines
1.2 KiB
JavaScript
// Metro module 3815 (f3816).
|
|
import * as _isSymbol from "./isSymbol";
|
|
const { floor, min } = Math;
|
|
module.exports = function baseSortedIndexBy(a0, a1, a2, a3) {
|
|
let r25;
|
|
const r13 = a0 == null ? 0 : a0.length;
|
|
if (r13 === 0) {
|
|
return 0;
|
|
}
|
|
const r17 = a2(a1);
|
|
const r10 = r17 != r17;
|
|
const r16 = _isSymbol(r17);
|
|
const r6 = 0 < r13;
|
|
let r32 = r13;
|
|
let r33 = 0;
|
|
let r34 = r32;
|
|
if (r6) {
|
|
do {
|
|
const r23 = floor((r33 + r32) / 2);
|
|
const r36 = a2(a0[r23]);
|
|
const r37 = r36 == r36;
|
|
const r27 = _isSymbol(r36);
|
|
const r41 = r32;
|
|
let r42 = r33;
|
|
if (r10) {
|
|
r25 = a3 ? a3 : r37;
|
|
} else {
|
|
const r8 = r36 !== void 0;
|
|
if (r17 === void 0) {
|
|
r25 = r37 ? a3 ? a3 : r8 : r37;
|
|
} else {
|
|
const r7 = r36 === null;
|
|
r25 = r17 === null ? (r37 ? r8 : r37) && (a3 ? a3 : !r7) : r16 ? (r37 ? r8 : r37) && !r7 && (a3 ? a3 : !r27) : (r7 ? !r7 : !r27) && (a3 ? r36 <= r17 : r36 < r17);
|
|
}
|
|
}
|
|
let r49 = r23;
|
|
if (r25) {
|
|
r42 = r23 + 1;
|
|
r49 = r41;
|
|
}
|
|
r32 = r49;
|
|
r33 = r42;
|
|
r34 = r32;
|
|
} while (r33 < r34);
|
|
}
|
|
return min(r34, 4294967294);
|
|
};
|