-
Notifications
You must be signed in to change notification settings - Fork 135
Open
Labels
set-theoretic typesunions, intersections and moreunions, intersections and more
Milestone
Description
With astral-sh/ruff#17419 we set a low limit on the size of unions-of-literals. We will probably want to increase this limit (maybe to somewhere in the 4-5000 range?), so we can support e.g. exhaustiveness checks on large code-generated enum types.
In order to do this without exposing ourselves to exponential slowdowns, we will need to expand the optimization in astral-sh/ruff#17403 so that, instead of applying just to UnionBuilder, it is applied throughout our union and intersection representation. (That is, groups of same-kind literals are kept in a set and can be handled as a single block, instead of repetitively.)
sharkdp and AlexWaygood
Metadata
Metadata
Assignees
Labels
set-theoretic typesunions, intersections and moreunions, intersections and more