1#ifndef HYPERISO_CLI_UTILS_H
2#define HYPERISO_CLI_UTILS_H
23 std::map<std::string, std::vector<std::string>>
options;
27 bool has(
const std::string& key)
const;
28 std::string
get(
const std::string& key,
const std::string& fallback =
"")
const;
29 int get_int(
const std::string& key,
int fallback)
const;
30 double get_double(
const std::string& key,
double fallback)
const;
31 bool flag(
const std::string& key,
bool fallback =
false)
const;
32 std::vector<std::string>
list(
const std::string& key,
const std::vector<std::string>& fallback = {})
const;
void print_section(const std::string &title)
ContributionType parse_contribution(const std::string &contribution)
HyperisoMaster init_hyperiso_from_cli(const CliOptions &opts)
Model parse_model(const std::string &model)
QCDOrder parse_qcd_order(const std::string &order)
High-level helpers for initializing and monitoring the Hyperiso framework.
High-level interface to initialize and monitor the main framework configuration.
Small command-line parser for the Hyperiso terminal interface.
double get_double(const std::string &key, double fallback) const
std::vector< std::string > list(const std::string &key, const std::vector< std::string > &fallback={}) const
bool has(const std::string &key) const
bool flag(const std::string &key, bool fallback=false) const
std::vector< std::string > positionals
std::map< std::string, std::vector< std::string > > options
int get_int(const std::string &key, int fallback) const
static CliOptions parse(int argc, char *argv[], int first=1)
std::string get(const std::string &key, const std::string &fallback="") const