From 07345245a321c7c9b119d8c136503452948577fb Mon Sep 17 00:00:00 2001 From: "Taylor C. Richberger" Date: Thu, 12 May 2016 11:47:37 -0600 Subject: shrink into shorthand branches --- args.hxx | 62 +++++++++++++++++++++++--------------------------------------- 1 file changed, 23 insertions(+), 39 deletions(-) diff --git a/args.hxx b/args.hxx index b5d9b0d..17f9a3d 100644 --- a/args.hxx +++ b/args.hxx @@ -512,19 +512,15 @@ namespace args { for (Base *child: children) { - FlagBase *flagBase = dynamic_cast(child); - Group *group = dynamic_cast(child); - if (flagBase) + if (FlagBase *flagBase = dynamic_cast(child)) { - FlagBase *match = flagBase->Match(flag); - if (match) + if (FlagBase *match = flagBase->Match(flag)) { return match; } - } else if (group) + } else if (Group *group = dynamic_cast(child)) { - FlagBase *match = group->Match(flag); - if (match) + if (FlagBase *match = group->Match(flag)) { return match; } @@ -542,19 +538,15 @@ namespace args { for (Base *child: children) { - FlagBase *flagBase = dynamic_cast(child); - Group *group = dynamic_cast(child); - if (flagBase) + if (FlagBase *flagBase = dynamic_cast(child)) { - FlagBase *match = flagBase->Match(flag); - if (match) + if (FlagBase *match = flagBase->Match(flag)) { return match; } - } else if (group) + } else if (Group *group = dynamic_cast(child)) { - FlagBase *match = group->Match(flag); - if (match) + if (FlagBase *match = group->Match(flag)) { return match; } @@ -593,13 +585,11 @@ namespace args { for (Base *child: children) { - FlagBase *flag = dynamic_cast(child); - Group *group = dynamic_cast(child); - if (flag) + if (dynamic_cast(child)) { return true; } - if (group) + if (Group *group = dynamic_cast(child)) { if (group->HasFlag()) { @@ -660,9 +650,7 @@ namespace args std::vector> descriptions; for (const auto &child: children) { - const Group *group = dynamic_cast(child); - const NamedBase *named = dynamic_cast(child); - if (group) + if (const Group *group = dynamic_cast(child)) { // Push that group description on the back: descriptions.emplace_back(group->help, "", indent); @@ -671,7 +659,7 @@ namespace args std::end(descriptions), std::make_move_iterator(std::begin(groupDescriptions)), std::make_move_iterator(std::end(groupDescriptions))); - } else if (named) + } else if (const NamedBase *named = dynamic_cast(child)) { const std::tuple description(named->GetDescription(shortPrefix, longPrefix, shortSeparator, longSeparator)); descriptions.emplace_back(std::get<0>(description), std::get<1>(description), indent); @@ -687,16 +675,14 @@ namespace args std::vector names; for (const auto &child: children) { - const Group *group = dynamic_cast(child); - const PositionalBase *pos = dynamic_cast(child); - if (group) + if (const Group *group = dynamic_cast(child)) { std::vector groupNames(group->GetPosNames()); names.insert( std::end(names), std::make_move_iterator(std::begin(groupNames)), std::make_move_iterator(std::end(groupNames))); - } else if (pos) + } else if (const PositionalBase *pos = dynamic_cast(child)) { names.emplace_back(pos->Name()); } @@ -745,10 +731,12 @@ namespace args { for (const auto child: group.Children()) { - const Group *group = dynamic_cast(child); - if (group && (!group->Matched())) + if (const Group *group = dynamic_cast(child)) { - return false; + if (!group->Matched()) + { + return false; + } } } return true; @@ -1102,11 +1090,9 @@ namespace args std::string(argchunk, 0, separator) : argchunk); - FlagBase *base = Match(arg); - if (base) + if (FlagBase *base = Match(arg)) { - ValueFlagBase *argbase = dynamic_cast(base); - if (argbase) + if (ValueFlagBase *argbase = dynamic_cast(base)) { if (separator != argchunk.npos) { @@ -1159,11 +1145,9 @@ namespace args { const char arg = *argit; - Base *base = Match(arg); - if (base) + if (Base *base = Match(arg)) { - ValueFlagBase *argbase = dynamic_cast(base); - if (argbase) + if (ValueFlagBase *argbase = dynamic_cast(base)) { const std::string arg(++argit, std::end(argchunk)); if (!arg.empty()) -- cgit v1.2.1