Skip to main content

Module plumbing

Module plumbing 

Source
Expand description

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.

Macrosยง

call_provider ๐Ÿ”’
cycle_error_handling ๐Ÿ”’
define_queries ๐Ÿ”’
depth_limit ๐Ÿ”’
feedable ๐Ÿ”’
hash_result ๐Ÿ”’
if_cache_on_disk ๐Ÿ”’
Expands to one of two token trees, depending on whether the current query has the cache_on_disk_if modifier.
is_anon ๐Ÿ”’
is_eval_always ๐Ÿ”’
item_if_cache_on_disk ๐Ÿ”’
Conditionally expands to some token trees, if the current query has the cache_on_disk_if modifier.

Structsยง

QueryCtxt
Implements QueryContext for use by rustc_query_system, since that crate does not have direct access to TyCtxt.

Functionsยง

create_deferred_query_stack_frame ๐Ÿ”’
encode_all_query_results ๐Ÿ”’
encode_query_results ๐Ÿ”’
force_from_dep_node_inner ๐Ÿ”’
Implementation of DepKindVTable::force_from_dep_node for queries.
loadable_from_disk ๐Ÿ”’
mk_query_stack_frame_extra ๐Ÿ”’
The deferred part of a deferred query stack frame.
query_key_hash_verify ๐Ÿ”’
query_key_hash_verify_all
try_load_from_disk ๐Ÿ”’
try_load_from_on_disk_cache_inner ๐Ÿ”’
Implementation of DepKindVTable::try_load_from_on_disk_cache for queries.
try_mark_green ๐Ÿ”’