decoder: Collect targets w/ interpolation for Any
correctly
#257
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.
As discovered in #251
In a hypothetical perfect/ideal scenario we could collect just targets which match the type but in reality we cannot always establish the expression type, because:
Also it's questionable whether it's beneficial to suppress mismatching targets.
We mostly only do it as a hack to aid
LiteralType
andReference
inOneOf
.The LOC in the diff may seem high, but 95% of that is a result of copying over all tests for reference target collection from
LiteralType
& replacingLiteralType{Type}
withAnyExpression{OfType}
+ updating that one test for "mismatching" constraint which becomes a positive test.UX Before
UX After