13#include <argparse/argparse.hpp>
15#include "dlinear/util/Config.h"
36 void Parse(
int argc,
const char **argv);
39 [[nodiscard]]
static std::string
version();
43 [[nodiscard]] std::string
prompt()
const;
61 [[nodiscard]] T
get(
const std::string &key)
const {
78 friend std::ostream &operator<<(std::ostream &os,
const ArgParser &parser);
Used to parse command line arguments and produce a corresponding Config object to be used throughout ...
const std::string soplex_hash_
The hash of the Soplex library. Used in the prompt.
void Parse(int argc, const char **argv)
Parse the command line arguments.
argparse::ArgumentParser parser_
The parser object.
void AddOptions()
Add all the options, positional arguments and flags to the parser.
int verbosity_
Verbosity level of the program.
void ValidateOptions()
Validate the options, ensuring the correctness of the parameters and the consistency of the options.
static std::string version()
Get read-only access to the version of the program.
const std::string qsoptex_hash_
The hash of the QSoptEx library. Used in the prompt.
ArgParser()
Construct a new argparser object.
std::string prompt() const
Get read-only access to the printable console prompt of the program.
Config ToConfig() const
Convert the parser to a Config.
T get(const std::string &key) const
Get the value of a parameter from the internal parser.
static std::string repository_status()
Get read-only access to the hash status of the repository.
Simple dataclass used to store the configuration of the program.
Global namespace for the dlinear library.