@@ -418,6 +418,13 @@ deal with all of the above but so far that seemed like more trouble than it woul
418418
419419## Query modifiers
420420
421+ > FIXME: Make [ ` rustc_middle::query::modifiers ` ] the home for query modifier documentation,
422+ > and migrate all other useful modifier docs there after verifying that they are still accurate.
423+
424+ [ ` rustc_middle::query::modifiers ` ] :
425+ https://doc.rust-lang.org/nightly/nightly-rustc/rustc_middle/query/modifiers/index.html
426+
427+
421428The query system allows for applying [ modifiers] [ mod ] to queries.
422429These modifiers affect certain aspects of how the system treats the query with
423430respect to incremental compilation:
@@ -437,6 +444,9 @@ respect to incremental compilation:
437444 as an optimization because the system can skip recording dependencies in
438445 the first place.
439446
447+ - ` no_force ` - Never "force" the dep nodes for this query, even if the query's
448+ key type is recoverable.
449+
440450 - ` no_hash ` - Applying ` no_hash ` to a query tells the system to not compute
441451 the fingerprint of the query's result.
442452 This has two consequences:
@@ -475,13 +485,6 @@ respect to incremental compilation:
475485 For example, it makes no sense to store values from upstream
476486 crates in the cache because they are already available in the upstream crate's metadata.
477487
478- - ` anon ` - This attribute makes the system use "anonymous" dep-nodes for the given query.
479- An anonymous dep-node is not identified by the corresponding query key.
480- Instead, its ID is computed from the IDs of its dependencies.
481- This allows the red-green system to do its change detection even if there is no
482- query key available for a given dep-node -- something which is needed for
483- handling trait selection because it is not based on queries.
484-
485488[ mod ] : ../query.html#adding-a-new-kind-of-query
486489
487490
0 commit comments