Skip to main content

Module query

Module query 

Source

Re-exports§

pub use crate::queries::Providers;

Modules§

arena_cached 🔒
caches 🔒
erase
To improve compile times and code size for the compiler itself, query values are “erased” in some contexts (e.g. inside in-memory cache types), to reduce the number of generic instantiations created during codegen.
inner 🔒
Helper functions that serve as the immediate implementation of tcx.$query(..) and its variations.
into_query_key 🔒
job 🔒
keys 🔒
Defines the set of legal keys that can be used in queries.
modifiers 🔒
This contains documentation which is linked from query modifiers used in the rustc_queries! proc macro.
on_disk_cache
plumbing 🔒
stack 🔒

Structs§

Cycle
DefIdCache
In-memory cache for queries whose key is a DefId.
DefaultCache
In-memory cache for queries whose keys aren’t suitable for any of the more specialized kinds of cache. Backed by a sharded hashmap.
LocalCrate
Placeholder for CrateNum’s “local” counterpart
QueryJob
Represents an active query job.
QueryJobId
A value uniquely identifying an active query job.
QueryLatch
QueryStackFrame
Description of a frame in the query stack.
QueryState
For a particular query, keeps track of “active” keys, i.e. keys whose evaluation has started but has not yet finished successfully.
QuerySystem
QueryVTable
Stores data and metadata (e.g. function pointers) for a particular query.
QueryWaiter
SingleCache
In-memory cache for queries whose key type only has one value (e.g. ()). The cache therefore only needs to store one query return value.
TyCtxtAt
TyCtxtEnsureDone
TyCtxtEnsureOk
TyCtxtEnsureResult
VecCache
In-memory cache for queries whose keys are densely-numbered IDs (e.g CrateNum, LocalDefId), and can therefore be used as indices into a dense vector of cached values.

Enums§

ActiveKeyStatus
For a particular query and key, tracks the status of a query evaluation that has started, but has not yet finished successfully.
EnsureMode
Distinguishes between tcx.ensure_ok() and tcx.ensure_done() in shared code paths that handle both modes.
QueryMode

Traits§

AsLocalQueryKey
IntoQueryKey
Argument-conversion trait used by some queries and other TyCtxt methods.
QueryCache
Trait for types that serve as an in-memory cache for query results, for a given key (argument) type and value (return) type.
QueryKey
Controls what types can legally be used as the key for a query.

Functions§

describe_as_module