2727#include < iterator>
2828#include < string>
2929#include < string_view>
30- #include < type_traits>
3130#include < unordered_set>
3231#include < utility>
3332#include < vector>
@@ -98,18 +97,9 @@ void Flag::ValidateAlias(const FlagAlias& alias) {
9897 if (alias.mode == FlagAliasMode::kFlagConsumesFollowing ) {
9998 CHECK (!HasAlias ({FlagAliasMode::kFlagExact , alias.name }))
10099 << " Overlapping flag aliases for " << alias.name ;
101- CHECK (!HasAlias ({FlagAliasMode::kFlagConsumesArbitrary , alias.name }))
102- << " Overlapping flag aliases for " << alias.name ;
103100 } else if (alias.mode == FlagAliasMode::kFlagExact ) {
104101 CHECK (!HasAlias ({FlagAliasMode::kFlagConsumesFollowing , alias.name }))
105102 << " Overlapping flag aliases for " << alias.name ;
106- CHECK (!HasAlias ({FlagAliasMode::kFlagConsumesArbitrary , alias.name }))
107- << " Overlapping flag aliases for " << alias.name ;
108- } else if (alias.mode == FlagAliasMode::kFlagConsumesArbitrary ) {
109- CHECK (!HasAlias ({FlagAliasMode::kFlagExact , alias.name }))
110- << " Overlapping flag aliases for " << alias.name ;
111- CHECK (!HasAlias ({FlagAliasMode::kFlagConsumesFollowing , alias.name }))
112- << " Overlapping flag aliases for " << alias.name ;
113103 }
114104}
115105
@@ -151,10 +141,6 @@ Flag Flag::Setter(std::function<Result<void>(const FlagMatch&)> setter) && {
151141 return *this ;
152142}
153143
154- static bool LikelyFlag (const std::string& next_arg) {
155- return absl::StartsWith (next_arg, " -" );
156- }
157-
158144Result<bool > ParseBool (std::string_view value, std::string_view name) {
159145 bool result;
160146 CF_EXPECTF (absl::SimpleAtob (value, &result),
@@ -178,17 +164,6 @@ Result<Flag::FlagProcessResult> Flag::Process(
178164 for (auto & alias : aliases_) {
179165 auto normalized_alias = absl::StrReplaceAll (alias.name , {{" -" , " _" }});
180166 switch (alias.mode ) {
181- case FlagAliasMode::kFlagConsumesArbitrary :
182- if (normalized_arg != normalized_alias) {
183- continue ;
184- }
185- if (!next_arg || LikelyFlag (*next_arg)) {
186- CF_EXPECTF ((*setter_)({arg, " " }), " Processing \" {}\" failed" , arg);
187- return FlagProcessResult::kFlagConsumed ;
188- }
189- CF_EXPECTF ((*setter_)({arg, *next_arg}),
190- " Processing \" {}\" \" {}\" failed" , arg, *next_arg);
191- return FlagProcessResult::kFlagConsumedOnlyFollowing ;
192167 case FlagAliasMode::kFlagConsumesFollowing :
193168 if (normalized_arg != normalized_alias) {
194169 continue ;
@@ -232,9 +207,6 @@ Result<void> Flag::Parse(std::vector<std::string>& arguments) const {
232207 case FlagProcessResult::kFlagConsumedWithFollowing :
233208 arguments.erase (arguments.begin () + i, arguments.begin () + i + 2 );
234209 break ;
235- case FlagProcessResult::kFlagConsumedOnlyFollowing :
236- arguments.erase (arguments.begin () + i + 1 , arguments.begin () + i + 2 );
237- break ;
238210 case FlagProcessResult::kFlagSkip :
239211 i++;
240212 break ;
@@ -451,9 +423,6 @@ Result<void> ConsumeFlagsConstrained(const std::vector<Flag>& flags,
451423 case Flag::FlagProcessResult::kFlagConsumedWithFollowing :
452424 args.erase (args.begin (), args.begin () + 2 );
453425 break ;
454- case Flag::FlagProcessResult::kFlagConsumedOnlyFollowing :
455- args.erase (args.begin () + 1 , args.begin () + 2 );
456- break ;
457426 }
458427 }
459428 return {};
0 commit comments