Skip to main content

Crate rustc_query_impl

Crate rustc_query_impl 

Source
Expand description

Support for serializing the dep-graph and reloading it.

Modulesยง

_dep_kind_vtable_ctors_for_queries ๐Ÿ”’
Declares a dep-kind vtable constructor for each query.
dep_kind_vtables ๐Ÿ”’
error ๐Ÿ”’
execution ๐Ÿ”’
job ๐Ÿ”’
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 ๐Ÿ”’
values ๐Ÿ”’

Structsยง

QueryJobMap
Map from query job IDs to job information collected by collect_active_jobs_from_all_queries.

Constantsยง

ALLOC_SELF_PROFILE_QUERY_STRINGS ๐Ÿ”’
ENCODE_QUERY_RESULTS ๐Ÿ”’
PER_QUERY_GATHER_ACTIVE_JOBS_FNS ๐Ÿ”’
Used by collect_active_jobs_from_all_queries to iterate over all queries, and gather the active jobs for each query.
QUERY_KEY_HASH_VERIFY ๐Ÿ”’

Traitsยง

GetQueryVTable ๐Ÿ”’
Trait that knows how to look up the QueryVTable for a particular query.

Functionsยง

alloc_self_profile_query_strings
All self-profiling events generated by the query engine use virtual StringIds for their event_id. This method makes all those virtual StringIds point to actual strings.
break_query_cycles
Detects query cycles by using depth first search over all active query jobs. If a query cycle is found it will break the cycle by finding an edge which uses a query latch and then resuming that waiter. There may be multiple cycles involved in a deadlock, so this searches all active queries for cycles before finally resuming all the waiters at once.
collect_active_jobs_from_all_queries
Returns a map of currently active query jobs, collected from all queries.
make_dep_kind_vtables
make_query_vtables
print_query_stack
provide
query_key_hash_verify_all
query_system