PHP 7.4.33
Preview: bisector.js Size: 1.53 KB
/var/www/gtechmarathon2026.bitkit.dk/httpdocs/node_modules/d3-array/src/bisector.js
import ascending from "./ascending.js";
import descending from "./descending.js";

export default function bisector(f) {
  let compare1, compare2, delta;

  // If an accessor is specified, promote it to a comparator. In this case we
  // can test whether the search value is (self-) comparable. We can’t do this
  // for a comparator (except for specific, known comparators) because we can’t
  // tell if the comparator is symmetric, and an asymmetric comparator can’t be
  // used to test whether a single value is comparable.
  if (f.length !== 2) {
    compare1 = ascending;
    compare2 = (d, x) => ascending(f(d), x);
    delta = (d, x) => f(d) - x;
  } else {
    compare1 = f === ascending || f === descending ? f : zero;
    compare2 = f;
    delta = f;
  }

  function left(a, x, lo = 0, hi = a.length) {
    if (lo < hi) {
      if (compare1(x, x) !== 0) return hi;
      do {
        const mid = (lo + hi) >>> 1;
        if (compare2(a[mid], x) < 0) lo = mid + 1;
        else hi = mid;
      } while (lo < hi);
    }
    return lo;
  }

  function right(a, x, lo = 0, hi = a.length) {
    if (lo < hi) {
      if (compare1(x, x) !== 0) return hi;
      do {
        const mid = (lo + hi) >>> 1;
        if (compare2(a[mid], x) <= 0) lo = mid + 1;
        else hi = mid;
      } while (lo < hi);
    }
    return lo;
  }

  function center(a, x, lo = 0, hi = a.length) {
    const i = left(a, x, lo, hi - 1);
    return i > lo && delta(a[i - 1], x) > -delta(a[i], x) ? i - 1 : i;
  }

  return {left, center, right};
}

function zero() {
  return 0;
}

Directory Contents

Dirs: 1 × Files: 58
Name Size Perms Modified Actions
threshold DIR
- drwxr-xr-x 2025-07-10 12:54:56
Edit Download
90 B lrw-r--r-- 2025-07-10 12:54:55
Edit Download
127 B lrw-r--r-- 2025-07-10 12:54:55
Edit Download
3.96 KB lrw-r--r-- 2025-07-10 12:54:55
Edit Download
337 B lrw-r--r-- 2025-07-10 12:54:55
Edit Download
1.53 KB lrw-r--r-- 2025-07-10 12:54:55
Edit Download
3.99 KB lrw-r--r-- 2025-07-10 12:54:55
Edit Download
58 B lrw-r--r-- 2025-07-10 12:54:55
Edit Download
424 B lrw-r--r-- 2025-07-10 12:54:55
Edit Download
872 B lrw-r--r-- 2025-07-10 12:54:55
Edit Download
218 B lrw-r--r-- 2025-07-10 12:54:55
Edit Download
144 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
164 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
250 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
404 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
265 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
723 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
291 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
1.56 KB lrw-r--r-- 2025-07-10 12:54:56
Edit Download
675 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
470 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
1.68 KB lrw-r--r-- 2025-07-10 12:54:56
Edit Download
429 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
52 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
2.99 KB lrw-r--r-- 2025-07-10 12:54:56
Edit Download
446 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
672 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
467 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
310 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
502 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
582 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
483 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
245 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
165 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
502 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
582 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
708 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
535 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
465 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
307 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
97 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
1.73 KB lrw-r--r-- 2025-07-10 12:54:56
Edit Download
1.52 KB lrw-r--r-- 2025-07-10 12:54:56
Edit Download
350 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
942 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
460 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
183 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
178 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
329 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
263 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
1.22 KB lrw-r--r-- 2025-07-10 12:54:56
Edit Download
123 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
362 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
530 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
1.91 KB lrw-r--r-- 2025-07-10 12:54:56
Edit Download
369 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
217 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
668 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
106 B lrw-r--r-- 2025-07-10 12:54:56
Edit Download
If ZipArchive is unavailable, a .tar will be created (no compression).