Module rustc_data_structures::unify
[−]
[src]
🔬 This is a nightly-only experimental API. (rustc_private
)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml
instead?
Structs
Snapshot |
[ Experimental ] At any time, users may snapshot a unification table. The changes made during the snapshot may either be committed or rolled back. |
UnificationTable |
[ Experimental ] Table of unification keys and their values. |
VarValue |
[ Experimental ] Value of a unification key. We implement Tarjan's union-find
algorithm: when two keys are unified, one of them is converted
into a "redirect" pointing at the other. These redirects form a
DAG: the roots of the DAG (nodes that are not redirected) are each
associated with a value of type |
Traits
Combine |
[ Experimental ] This trait is implemented for unify values that can be combined. This relation should be a monoid. |
UnifyKey |
[ Experimental ] This trait is implemented by any type that can serve as a type
variable. We call such variables unification keys. For example,
this trait is implemented by |