Expand description
Support for serializing the dep-graph and reloading it.
ModulesΒ§
- _dep_
kind_ πvtable_ ctors - Module containing a named function for each dep kind (including queries)
that creates a
DepKindVTable. - plumbing π
- The implementation of the query system itself. This defines the macros that generate the actual methods on tcx which find and execute the provider, manage the caches, and so forth.
- profiling_
support π - query_
impl π
StructsΒ§
- Query
Ctxt - Implements
QueryContextfor use byrustc_query_system, since that crate does not have direct access to [TyCtxt]. - Query
Flags π - Semi
Dynamic πQuery Dispatcher - Combines a [
QueryVTable] with some additional compile-time booleans to implementQueryDispatcher, for use by code inrustc_query_system.
ConstantsΒ§
- ALLOC_
SELF_ πPROFILE_ QUERY_ STRINGS - ENCODE_
QUERY_ πRESULTS - PER_
QUERY_ πGATHER_ ACTIVE_ JOBS_ FNS - Used by
collect_active_jobs_from_all_queriesto iterate over all queries, and gather the active jobs for each query. - QUERY_
KEY_ πHASH_ VERIFY
TraitsΒ§
- Query
Dispatcher πUnerased - Provides access to vtable-like operations for a query
(by creating a
QueryDispatcher), but also keeps track of the βunerasedβ value type of the query (i.e. the actual result type in the query declaration).
FunctionsΒ§
- alloc_
self_ profile_ query_ strings - All self-profiling events generated by the query engine use
virtual
StringIds for theirevent_id. This method makes all those virtualStringIds point to actual strings. - engine π
- make_
dep_ kind_ vtables - make_
query_ vtables - provide
- query_
key_ hash_ verify_ all - query_
system