Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

evaluator: take advantage of disjunction elements being mutually exclusive #2893

Open
myitcv opened this issue Feb 29, 2024 · 0 comments
Open
Assignees

Comments

@myitcv
Copy link
Member

myitcv commented Feb 29, 2024

This is a placeholder issue for performance improvements in the new evaluator that take advantage of elements of a disjunction being mutually exclusive. This can happen in a number of situations:

  • Mutually exclusive concrete values: 1 | 2 | 3
  • Elements that are mutually exclusive by virtue of their type: int | string | {}
  • Structured values that have elements which are mutually exclusive, otherwise referred to as discriminator fields: {kind: "k1"} | {kind: "k2"}

The new evaluator will enable a vast performance improvement in the resolution of such disjunctions, as well as provide better error messages.

(More detail required here for the use cases that will be "covered" by this issue).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Backlog
Development

No branches or pull requests

2 participants