1#ifndef KOUTIL_ARGS_ERRORS_H
2#define KOUTIL_ARGS_ERRORS_H
13inline std::string
make_argument_count(std::string_view name, std::uint32_t expected, std::uint32_t provided) {
15 "'{}' requires {} argument{}, but {} {} provided",
18 expected == 1 ?
"" :
"s",
20 provided == 1 ?
"was" :
"were"
28inline std::string
make_unknown_argument(std::string_view name) {
return std::format(
"unknown argument: {}", name); }
31 return std::format(
"unknown option '--{}'", name);
37 return std::format(
"Invalid short option '-{}': must be a single character", name);
41 return std::format(
"option '{}' requires a value", whole_name);
45 return std::format(
"option '{}' doesn't accept a value", whole_name);
52 display = std::format(
"--{}", *option.
long_name());
54 display += std::format(
" (-{})", *option.
short_name());
57 display = std::format(
"-{}", *option.
short_name());
60 return std::format(
"required option {} was not provided", display);
Represents a command-line option.
Definition option.h:41
auto short_name() const
Gets the short option name.
Definition option.h:85
auto long_name() const
Gets the long option name.
Definition option.h:79
std::string make_invalid_short_option(std::string_view name)
Definition errors.h:36
std::string make_missing_required_option(const option_t< Result > &option)
Definition errors.h:48
std::string make_command_argument_count(std::string_view name, std::uint32_t expected, std::uint32_t provided)
Definition errors.h:24
std::string make_unknown_argument(std::string_view name)
Definition errors.h:28
std::string make_unexpected_option_value(std::string_view whole_name)
Definition errors.h:44
std::string make_unknown_short_option(char name)
Definition errors.h:34
std::string make_argument_count(std::string_view name, std::uint32_t expected, std::uint32_t provided)
Definition errors.h:13
std::string make_option_requires_value(std::string_view whole_name)
Definition errors.h:40
std::string make_unknown_long_option(std::string_view name)
Definition errors.h:30