Skip to content

Commit 261cc36

Browse files
committed
Fewer regex
1 parent 33905b1 commit 261cc36

File tree

1 file changed

+1
-4
lines changed

1 file changed

+1
-4
lines changed

library/src/scala/annotation/newMain.scala

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -65,10 +65,7 @@ final class newMain extends MainAnnotation[FromString, Any]:
6565
private inline val argMarker = "--"
6666
private inline val shortArgMarker = "-"
6767

68-
private val longArgNameRegex = "[a-zA-Z][a-zA-Z0-9]*".r
6968
private val longArgRegex = "--[a-zA-Z][a-zA-Z0-9]*".r
70-
71-
private val shortArgNameRegex = "[a-zA-Z]".r
7269
private val shortArgRegex = "-[a-zA-Z]".r
7370

7471
extension (param: Parameter)
@@ -341,7 +338,7 @@ final class newMain extends MainAnnotation[FromString, Any]:
341338
throw IllegalArgumentException(s"$name is used for multiple parameters: ${canonicalNames.mkString(", ")}")
342339
def checkValidNames() =
343340
def isValidArgName(name: String): Boolean =
344-
longArgNameRegex.matches(name) || shortArgNameRegex.matches(name)
341+
longArgRegex.matches(argMarker + name) || shortArgRegex.matches(shortArgMarker + name)
345342
for param <- info.parameters do
346343
if !isValidArgName(param.name) then
347344
throw IllegalArgumentException(s"The following argument name is invalid: ${param.name}")

0 commit comments

Comments
 (0)