Module rustc_query_system::query::plumbing[−][src]

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.

Structs

CycleError
JobOwner

A type representing the responsibility to execute the job in the job field. This will poison the relevant query if dropped.

QueryCacheStore
QueryLookup

Values used when checking a query cache which can be reused on a cache-miss to execute the query.

QueryState
QueryStateShard

Enums

QueryMode
QueryResult

Indicates the state of a query for a given key in a query map.

TryGetJob

The result of try_start.

Functions

ensure_must_run

Ensure that either this query has all green inputs or been executed. Executing query::ensure(D) is considered a read of the dep-node D. Returns true if the query should still run.

force_query
force_query_impl
force_query_with_job
get_query
get_query_impl
hash_for_shard
incremental_verify_ich
load_from_disk_and_cache_in_memory
try_execute_query
try_get_cached

Checks if the query is already computed and in the cache. It returns the shard index and a lock guard to the shard, which will be used if the query is not in the cache and we need to compute it.

with_diagnostics