A value is required.
This is specified by providing = after the option name within Option.Prototype.
Options with required values are "greedy" -- if the current argument does not contain a value, the next argument will be used as the value, e.g. both -opt:foo and -opt foo will pass "foo" as the value to -opt.