diff options
| author | Maxime Coste <frrrwww@gmail.com> | 2013-03-27 14:27:12 +0100 |
|---|---|---|
| committer | Maxime Coste <frrrwww@gmail.com> | 2013-03-27 14:27:12 +0100 |
| commit | 29f79346c3297dc64045458ca2294cf68ad687da (patch) | |
| tree | 0b22ffe692d0d288f4a944491b64e4af6da67d9c /src/parameters_parser.cc | |
| parent | 3b059bafe523c7d777eb5f11d508d9fa30472fb3 (diff) | |
Move parameter count validation to the ParameterParser
Diffstat (limited to 'src/parameters_parser.cc')
| -rw-r--r-- | src/parameters_parser.cc | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/parameters_parser.cc b/src/parameters_parser.cc index 233f6a3f..162ba0ad 100644 --- a/src/parameters_parser.cc +++ b/src/parameters_parser.cc @@ -4,7 +4,9 @@ namespace Kakoune { ParametersParser::ParametersParser(const ParameterList& params, - std::unordered_map<String, bool> options) + std::unordered_map<String, bool> options, + size_t min_positionals, + size_t max_positionals) : m_params(params), m_options(std::move(options)) { @@ -29,6 +31,9 @@ ParametersParser::ParametersParser(const ParameterList& params, else m_positional_indices.push_back(i); } + size_t count = m_positional_indices.size(); + if (count > max_positionals or count < min_positionals) + throw wrong_argument_count(); } bool ParametersParser::has_option(const String& name) const |
