Expand description
Support for serializing the dep-graph and reloading it.
Modules§
- assert_
dep_ 🔒graph - This pass is only used for the UNIT TESTS and DEBUGGING NEEDS
around dependency graph construction. It serves two purposes; it
will dump graphs in graphviz form to disk, and it searches for
#[rustc_if_this_changed]
and#[rustc_then_this_would_need]
annotations. These annotations can be used to test whether paths exist in the graph. These checks run after codegen, so they view the the final state of the dependency graph. Note that there are similar assertions found inpersist::dirty_clean
which check the initial state of the dependency graph, just after it has been loaded from disk. - errors 🔒
- persist 🔒
- When in incremental mode, this pass dumps out the dependency graph into the given directory. At the same time, it also hashes the various HIR nodes.
Enums§
- Load
Result - Represents the result of an attempt to load incremental compilation data.
Statics§
- DEFAULT_
LOCALE_ RESOURCE - Raw content of Fluent resource for this crate, generated by
fluent_messages
macro, imported byrustc_driver
to include all crates’ resources in one bundle.
Functions§
- copy_
cgu_ workproduct_ to_ incr_ comp_ cache_ dir - Copies a CGU work product to the incremental compilation directory, so next compilation can find and reuse it.
- finalize_
session_ directory - This function finalizes and thus ‘publishes’ the session directory by
renaming it to
s-{timestamp}-{svh}
and releasing the file lock. If there have been compilation errors, however, this function will just delete the presumably invalid session directory. - in_
incr_ comp_ dir - Returns the path for a given filename within the incremental compilation directory, not necessarily from the current session.
- in_
incr_ comp_ dir_ sess - Returns the path for a given filename within the incremental compilation directory in the current session.
- load_
query_ result_ cache - Attempts to load the query result cache from disk
- provide
- save_
work_ product_ index - Saves the work product index.
- setup_
dep_ graph - Setups the dependency graph by loading an existing graph from disk and set up streaming of a new graph to an incremental session directory.