Skip to content

Commit aa4f780

Browse files
cesarefjulianstorer
authored andcommitted
Modify indexOf to also support the index of a plain argument
1 parent 5685fb5 commit aa4f780

2 files changed

Lines changed: 5 additions & 1 deletion

File tree

‎choc/containers/choc_ArgumentList.h‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -229,7 +229,8 @@ inline int ArgumentList::indexOf (std::string_view arg) const
229229
if (auto singleIndex = indexOf ("-" + std::string (arg)); singleIndex != -1)
230230
return singleIndex;
231231

232-
return indexOf ("--" + std::string (arg));
232+
if (auto doubleIndex = indexOf ("--" + std::string (arg)); doubleIndex != -1)
233+
return doubleIndex;
233234
}
234235

235236
bool isDoubleDash = isDoubleDashOption (arg);

‎tests/choc_tests.h‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1403,6 +1403,7 @@ inline void testArgumentList (choc::test::TestProgress& progress)
14031403
CHOC_EXPECT_TRUE (args.contains ("--param3"));
14041404
CHOC_EXPECT_FALSE (args.contains ("--flag3"));
14051405

1406+
CHOC_EXPECT_EQ (args.indexOf ("other1"), 0);
14061407
CHOC_EXPECT_EQ (args.indexOf ("--flag1"), 1);
14071408
CHOC_EXPECT_EQ (args.indexOf ("--param1"), 3);
14081409
CHOC_EXPECT_EQ (args.indexOf ("--flag2"), 4);
@@ -1458,6 +1459,7 @@ inline void testArgumentList (choc::test::TestProgress& progress)
14581459
CHOC_EXPECT_TRUE (args.contains ("-param3"));
14591460
CHOC_EXPECT_FALSE (args.contains ("-flag3"));
14601461

1462+
CHOC_EXPECT_EQ (args.indexOf ("other1"), 0);
14611463
CHOC_EXPECT_EQ (args.indexOf ("-flag1"), 1);
14621464
CHOC_EXPECT_EQ (args.indexOf ("-param1"), 3);
14631465
CHOC_EXPECT_EQ (args.indexOf ("-flag2"), 5);
@@ -1514,6 +1516,7 @@ inline void testArgumentList (choc::test::TestProgress& progress)
15141516
CHOC_EXPECT_TRUE (args.contains ("param3"));
15151517
CHOC_EXPECT_FALSE (args.contains ("flag3"));
15161518

1519+
CHOC_EXPECT_EQ (args.indexOf ("other1"), 0);
15171520
CHOC_EXPECT_EQ (args.indexOf ("flag1"), 1);
15181521
CHOC_EXPECT_EQ (args.indexOf ("param1"), 3);
15191522
CHOC_EXPECT_EQ (args.indexOf ("flag2"), 5);

0 commit comments

Comments
 (0)