You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I had a window of time, so thought I'd sketch this out. It does move a few things around, but I think separating the things in runner and question_types is going to make extensions come more easily.
There are other ways this could be done, but I think this approach makes writing different validators really quite easy. I'm not in love with the names used.
Okay, it is a matter of opinion, but I think this second approach is easier for a user to write their own validator. There are basically two types InputValidator and OutputValidator. These take a predicate function (either f(input, question_answer) or f(result, question_answer). This should make it relatively easy for users to write specific validators. In addition, there are counterpart function for the R ones. The one possibly confusing part for users is that these functions return validators that gets passed to the validator argument. (Though it doesn't seem that confusing to me, but is a bit more expected when a struct is used, like DefaultCodeValidator.)
Dear @jverzani .
Thanks for the work you put into this PR! I’m sorry for the delay. The past couple of months have been a bit rough, and I haven’t been able to give this the attention it deserves yet.
I haven’t forgotten about it, and I do intend to come back to it once a few things settle. Thanks a lot for your patience!
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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.
I had a window of time, so thought I'd sketch this out. It does move a few things around, but I think separating the things in
runnerandquestion_typesis going to make extensions come more easily.There are other ways this could be done, but I think this approach makes writing different validators really quite easy. I'm not in love with the names used.