pub fn three_needle_bytes(&self) -> anyhow::Result<(u8, u8, u8)> {
        anyhow::ensure!(
            self.needles.len() == 3,
            "benchmark supports three needles, but {} were found",
            self.needles.len(),
        );
        anyhow::ensure!(
            self.needles[0].len() == 1,
            "first needle has length {} but expected 1",
            self.needles[0].len(),
        );
        anyhow::ensure!(
            self.needles[1].len() == 1,
            "second needle has length {} but expected 1",
            self.needles[1].len(),
        );
        anyhow::ensure!(
            self.needles[2].len() == 1,
            "second needle has length {} but expected 1",
            self.needles[2].len(),
        );
        Ok((self.needles[0][0], self.needles[1][0], self.needles[2][0]))
    }
Return a single needle byte from this benchmark. If the benchmark has
a number of needles not equal to 2, or if any of the needles have a
length not equal to 1, then an error is returned.
benchmarks/shared/lib.rs