Vanha frontend siirretty temp/. Uusi rakenne: - StatusBar.astro, Terminal.astro, Editor.astro, Guide.astro - global.css erillinen - Wasm pääsäikeessä (ei Worker — yksinkertainen, debugattava) - Tab-completion, dropdown, projektikortti, Monaco, GUIDE.md - Ei tokenisointia eikä koodilaboratoriota Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
19 lines
560 B
JavaScript
19 lines
560 B
JavaScript
// Port of lower_bound from https://en.cppreference.com/w/cpp/algorithm/lower_bound
|
|
// Used to compute insertion index to keep queue sorted after insertion
|
|
export default function lowerBound(array, value, comparator) {
|
|
let first = 0;
|
|
let count = array.length;
|
|
while (count > 0) {
|
|
const step = Math.trunc(count / 2);
|
|
let it = first + step;
|
|
if (comparator(array[it], value) <= 0) {
|
|
first = ++it;
|
|
count -= step + 1;
|
|
}
|
|
else {
|
|
count = step;
|
|
}
|
|
}
|
|
return first;
|
|
}
|