@@ -87,9 +87,10 @@ class ArgumentParser {
8787 if (!_help) {
8888 for (auto &a : _arguments) {
8989 if (a._required ) {
90- if (_variables.find (a._name ) == _variables.end ())
90+ if (_variables.find (a._name ) == _variables.end ()) {
9191 throw ArgumentException (
9292 (" Required argument not found: " + a._name ).c_str ());
93+ }
9394 }
9495 }
9596 }
@@ -124,11 +125,9 @@ class ArgumentParser {
124125 bool required = false )
125126 : _name(name), _desc(desc), _required(required) {}
126127
127- private:
128128 std::string _name;
129129 std::string _desc;
130130 bool _required;
131- friend class ArgumentParser ;
132131 };
133132 inline bool _add_variable (std::string name,
134133 std::vector<std::string> &arg_parts, char *argv[]) {
@@ -139,13 +138,14 @@ class ArgumentParser {
139138 _ltrim (name, [](int c) { return c != (int )' -' ; });
140139 name = _delimit (name);
141140 std::string val;
142- if (arg_parts.size () > 1 )
141+ if (arg_parts.size () > 1 ) {
143142 val = std::accumulate (arg_parts.begin () + 1 , arg_parts.end (),
144143 std::string (), [](std::string a, std::string b) {
145144 return _trim_copy (a) + " " + _trim_copy (b);
146145 });
147- else
146+ } else {
148147 val = " " ;
148+ }
149149 _variables[name] = val;
150150 }
151151 static std::string _delimit (const std::string &name) {
@@ -223,5 +223,4 @@ inline std::vector<std::string> ArgumentParser::getv<std::string>(
223223 std::string argstr = get<std::string>(name);
224224 return _split (argstr, " \\ s" );
225225}
226-
227226#endif
0 commit comments