19#include <unordered_map>
26 inline std::vector<T> vector_from_set(
const std::set<T> &
in) {
28 for (
const T &t :
in) {
35 inline std::set<T> set_from_vector(
const std::vector<T> &
in) {
37 for (
const T &t :
in) {
43 template<
class K,
class T>
44 inline std::vector<K> keys_from_map(
const std::unordered_map<K, T> &
in) {
46 for (
const auto &[
key, value] :
in) {
namespace for basic c++ utilities
void throw_with_loc(std::string message, SourceLocation loc=SourceLocation{})
Throw an exception and append the source location to it.