Raise error on spaced UNIX-style flag with no value

This commit is contained in:
Feoramund
2024-06-15 00:24:59 -04:00
parent 42a5a2cf17
commit 76575e834b
2 changed files with 25 additions and 1 deletions
+8 -1
View File
@@ -1,6 +1,7 @@
package flags
import "core:container/bit_array"
import "core:fmt"
Parsing_Style :: enum {
// Odin-style: `-flag`, `-flag:option`, `-map:key=value`
@@ -71,9 +72,15 @@ parse :: proc(
return
}
for /**/; future_args > 0; future_args -= 1 {
for starting_future_args := future_args; future_args > 0; future_args -= 1 {
i += 1
if i == len(args) {
if future_args == starting_future_args {
return Parse_Error {
.No_Value,
fmt.tprintf("Expected a value for `%s` but none was given.", current_flag),
}
}
break
}
#no_bounds_check arg = args[i]