Revamp Conjunction.__call__
#374
Closed
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.
EDIT: this is not good enough, because
Conjunction
still has other issues. See #379 for a much better fix ofConjunction
.This changes the implementation of
Conjunction.__call__
: now we first compute the union of the dictionaries, then compute theoutput_type
, and then instantiate it with the union. This is easier to read in my opinion and it fixes types issues.Note that this is conflicting with #369, which uses
_C
instead of_B
, so we'll have to be careful when merging.