mutually Exclusive Options
fun <T : Any> ParameterHolder.mutuallyExclusiveOptions(option1: OptionDelegate<out T?>, option2: OptionDelegate<out T?>, vararg options: OptionDelegate<out T?>, name: String? = null, help: String? = null): MutuallyExclusiveOptions<T, T?>
Declare a set of two or more mutually exclusive options.
If none of the options are given on the command line, the value of this delegate will be null. If one option is given, the value will be that option's value. If more than one option is given, the value of the last one is used.
All options in the group must have a name specified. All options must be nullable (they cannot use flag, required etc.). If you want flags, you should use switch instead.
Example:
val fruits: Int? by mutuallyExclusiveOptions(
option("--apples").int(),
option("--oranges").int()
)
Content copied to clipboard
See also
Parameters
name
If given, the options in this group will be grouped together under this value in the help output
help
If given, this text will be added in help output to the group. If name is null, this value is not used.