Module rustc::ty::maps::plumbing [−][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?
The implementation of the query system itself. Defines the macros that generate the actual methods on tcx which find and execute the provider, manage the caches, and so forth.
Re-exports
use dep_graph::DepNodeIndex; |
use dep_graph::DepNode; |
use dep_graph::DepKind; |
use dep_graph::DepNodeColor; |
use errors::DiagnosticBuilder; |
use errors::Level; |
use errors::Diagnostic; |
use errors::FatalError; |
use ty::tls; |
use ty::TyCtxt; |
use ty::maps::Query; |
use ty::maps::config::QueryConfig; |
use ty::maps::config::QueryDescription; |
use ty::maps::job::QueryJob; |
use ty::maps::job::QueryResult; |
use ty::maps::job::QueryInfo; |
use ty::item_path; |
use util::common::profq_msg; |
use util::common::ProfileQueriesMsg; |
use util::common::QueryMsg; |
use rustc_data_structures::fx::FxHashMap; |
use rustc_data_structures::sync::Lrc; |
use rustc_data_structures::sync::Lock; |
use std::mem; |
use std::ptr; |
use std::collections::hash_map::Entry; |
use syntax_pos::Span; |
use syntax::codemap::DUMMY_SP; |
Structs
CycleError |
[ Experimental ]
|
JobOwner |
[ Experimental ] A type representing the responsibility to execute the job in the |
QueryMap |
[ Experimental ]
|
QueryValue |
[ Experimental ]
|
Enums
TryGetJob |
[ Experimental ] The result of |
Functions
force_from_dep_node |
[ Experimental ] The red/green evaluation system will try to mark a specific DepNode in the
dependency graph as green by recursively trying to mark the dependencies of
that DepNode as green. While doing so, it will sometimes encounter a DepNode
where we don't know if it is red or green and we therefore actually have
to recompute its value in order to find out. Since the only piece of
information that we have at that point is the DepNode we are trying to
re-evaluate, we need some way to re-run a query from just that. This is what
|