#unification #union-find

build ena

Union-find, congruence closure, and other unification code. Based on code from rustc.

18 releases (9 breaking)

0.10.1 Sep 7, 2018
0.9.3 May 18, 2018
0.9.2 Mar 5, 2018
0.8.0 Oct 31, 2017
0.3.0 Oct 27, 2016

#18 in Data structures

Download history 6937/week @ 2018-09-01 7156/week @ 2018-09-08 7841/week @ 2018-09-15 7414/week @ 2018-09-22 8194/week @ 2018-09-29 7933/week @ 2018-10-06 7976/week @ 2018-10-13 8616/week @ 2018-10-20 8546/week @ 2018-10-27 7946/week @ 2018-11-03 7857/week @ 2018-11-10 7947/week @ 2018-11-17 10127/week @ 2018-11-24

34,877 downloads per month
Used in 89 crates (4 directly)

MIT/Apache

60KB
1.5K SLoC

Build Status

An implementation of union-find in Rust; extracted from (and used by) rustc.

Name

The name "ena" comes from the Greek word for "one".

Features

By default, you just get the union-find implementation. You can also opt-in to the following experimental features:

  • bench: use to run benchmarks (cargo bench --features bench)

License

Like rustc itself, this code is dual-licensed under the MIT and Apache licenses. Pull requests, comments, and other contributions are assumed to imply consent to those terms. Moreover, it is understood that any changes here may well be used in rustc itself under the same terms.


lib.rs:

An implementation of union-find. See the unify module for more details.

Dependencies

~157KB