3#ifndef pRC_CORE_PARAMETER_PARSE_H
4#define pRC_CORE_PARAMETER_PARSE_H
15 template<
class N,
class D,
class... Ps>
20 static inline constexpr auto parse(
int const argc,
21 char const *
const *
const argv, N &&appName,
D &&appDescription,
28 for(
int i = 1;
i < argc; ++
i)
30 if(std::strcmp(argv[
i],
"--help") == 0)
42 if(std::strcmp(argv[
i],
parameter.argument().cString()) ==
48 auto const msg =
"Missing value for parameter " +
61 (
parse(parameters), ...);
65 auto const check = [&allSet](
auto const &
parameter)
85 (check(parameters), ...);
92 return report(parameters...);
pRC::Size const D
Definition CalculatePThetaTests.cpp:9
int i
Definition gmock-matchers-comparisons_test.cc:603
static void log(X &&arg, Xs &&...args)
Definition io.hpp:17
static void error(Xs &&...args)
Definition log.hpp:14
Definition cholesky.hpp:10
std::remove_reference_t< T > RemoveReference
Definition basics.hpp:41
static constexpr auto report(Ps &&...parameters)
Definition report.hpp:12
static constexpr auto help(Ps &&...parameters)
Definition help.hpp:13
static constexpr auto parse(int const argc, char const *const *const argv, N &&appName, D &&appDescription, Ps &...parameters)
Definition parse.hpp:20
static constexpr auto parameter(A &&argument, N &&name, D &&description, T const &defaultValue)
Definition parameter.hpp:216
static constexpr auto name()
Definition type_name.hpp:11
Context
Definition context.hpp:9