44 std::type_identity_t<std::function<std::string(
const T&)>>
label,
45 std::type_identity_t<std::function<
void(std::optional<T>)>>
callback)
47 std::vector<std::string> labels;
48 labels.reserve(items.size());
49 for (
const auto& item : items) {
50 labels.push_back(
label(item));
53 pick(std::move(title), std::move(labels),