Rework Argument generic types to retain chaining information #31
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The internal Argument typing was nice and simple with chaining calls modifying a single generic
ArgType
... but there were some permutations that were wrong (#30). Adding.choices()
in #29 also does not fit into the single model.Switch to same style as Option. Retain all the separate typing information in generics, and leave sorting it out until
.addArgument()
is called.I was struggling to work out why one existing test started failing, until realised the test was wrong! The default value will never get used in this test, basically the default is wasted.