X-Git-Url: http://git.tdb.fi/?p=libs%2Fcore.git;a=blobdiff_plain;f=source%2Fcore%2Fgetopt.cpp;h=cbc0afb0d76e9d5eec8f79e4a835d1cf01ff7700;hp=ec821e0d26aea1372c3314cc8a1a99a268d5443e;hb=HEAD;hpb=f24e7b96e76b63c9b9b8a6bce4c7a9db64276ea8 diff --git a/source/core/getopt.cpp b/source/core/getopt.cpp index ec821e0..cbc0afb 100644 --- a/source/core/getopt.cpp +++ b/source/core/getopt.cpp @@ -6,8 +6,7 @@ using namespace std; namespace Msp { -GetOpt::GetOpt(): - help(false) +GetOpt::GetOpt() { add_option("help", help, NO_ARG).set_help("Displays this help"); } @@ -32,7 +31,7 @@ GetOpt::OptionImpl &GetOpt::add_option(char s, const string &l, const Store &t, if((s!=0 && (*i)->get_short()==s) || (*i)->get_long()==l) { delete *i; - opts.erase(i++); + i = opts.erase(i); } else ++i; @@ -260,7 +259,7 @@ string GetOpt::generate_help() const bool any_short = any_of(opts.begin(), opts.end(), [](const OptionImpl *o){ return o->get_short(); }); string::size_type maxw = 0; - list switches; + vector switches; for(const OptionImpl *o: opts) { string swtch; @@ -289,7 +288,7 @@ string GetOpt::generate_help() const maxw = max(maxw, swtch.size()); } - list pargs; + vector pargs; for(const ArgumentImpl *a: args) { string parg = format("<%s>", a->get_name()); @@ -318,9 +317,6 @@ GetOpt::OptionImpl::OptionImpl(char s, const string &l, const Store &t, ArgType shrt(s), lng(l), arg_type(a), - seen_count(0), - ext_seen_count(0), - metavar("ARG"), store(t.clone()) { }