Crate rustc_data_structures
source ·Expand description
Various data structures used by the Rust compiler. The intention is that code in here should be not be specific to rustc, so that it can be easily unit tested and so forth.
§Note
This API is completely unstable and subject to change.
Modules§
- Simple file-locking apis for each OS.
- An immutable, owned value (except for interior mutability).
- A utility class for implementing “snapshottable” things; a snapshottable data structure permits you to take a snapshot (via
start_snapshot
) and then, after making some changes, elect either to rollback to the start of the snapshot or commit those changes. - This module defines types which are thread safe if cfg!(parallel_compiler) is true.
- Module which contains the snapshot/rollback functionality of the
ena
data structures. - Union-find implementation. The main type is
UnificationTable
.
Macros§
- Runs a list of blocks in parallel. The first block is executed immediately on the current thread. Use that for the longest running block.
Structs§
- This is essentially an
AtomicPtr
but is guaranteed to always be valid