Skip to content

Provide bare and opt set operations#15433

Merged
josevalim merged 9 commits into
mainfrom
jv-opt-descr
Jun 10, 2026
Merged

Provide bare and opt set operations#15433
josevalim merged 9 commits into
mainfrom
jv-opt-descr

Conversation

@josevalim

Copy link
Copy Markdown
Member

This pull request breaks set operations (union, intersections, differences, and negations) into bare and opt (optimized). This is a large PR but most changes are mechanical:

  • All functions outside of the Descr module use the optimized versions
  • The Descr module uses the bare versions for everything, except for to_quoted and type "mutators" (tuple_update, map_delete, etc)

Therefore, to review this code, it is best to open up the descr.ex module and see if the usage of opt_* functions within that module are acceptable. There are not many of them.

Comment thread lib/elixir/test/elixir/module/types/expr_test.exs Outdated
@josevalim josevalim merged commit 9f24a45 into main Jun 10, 2026
23 of 25 checks passed
@josevalim josevalim deleted the jv-opt-descr branch June 10, 2026 17:37
@josevalim

Copy link
Copy Markdown
Member Author

💚 💙 💜 💛 ❤️

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant