How can I determine the type of the @Argumentvar represented by an ArgumentDefinition or by an ArgumentInfoV0?
If I cannot determine that from either of those, is there any way to determine that info when the ArgumentDefinition / ArgumentInfoV0 is created, so I can modify ArgumentDefinition and/or ArgumentInfoV0 to supply that information?
What do you mean by Type? if you mean the type according to the Swift type checker this isn't currently possible nor stored anywhere in ArgumentDefinition and ArgumentInfoV0. It might be possible to store it as an Any.Type in ArgumentDefinition but we dont want to leak that out via ArgumentInfoV0.
By type, I mean [String] from the following example Swift property of a ParsableArguments:
@Argument
var args: [String]
I actually don't need to have the type available, but having the type available would have solved my issue, so I asked about something broader than I actually need.
@rauhul@nnnnnnnn While ArgumentInfoV0.isRepeating is being set from argument.help.options.contains(.isRepeating), .isRepeating seems to only be in argument.help.options for flags & options, not for repeating arguments.
The completions generators therefore cannot properly handle repeating arguments without some additional information.
As long as .isRepeating can be added to argument.help.options for all Sequence arguments, then it will flow through to ArgumentInfoV0.isRepeating, then zsh completions can handle them.
I assume that the same problem exists for the other 2 shells. I haven't yet checked them because I was focusing on getting zsh completions working completely for my project before looking into the other shells. I will probably try the other shells soon, though,
I should have mentioned all this info in my first post, but I was trying to not overwhelm with detail unless necessary, but obviously, the detail was necessary…