diff options
| author | Camille GILLOT <gillot.camille@gmail.com> | 2021-01-17 14:58:34 +0100 |
|---|---|---|
| committer | Camille GILLOT <gillot.camille@gmail.com> | 2021-02-19 17:51:50 +0100 |
| commit | 3f868b1791587e6af77e3b42a3b941f7fef03bcc (patch) | |
| tree | 32be357849d56844a748b2a6f4181755979f68ac | |
| parent | 2db2776589eced747c35e030aa185f3a4fc93ffa (diff) | |
| download | rust-3f868b1791587e6af77e3b42a3b941f7fef03bcc.tar.gz rust-3f868b1791587e6af77e3b42a3b941f7fef03bcc.zip | |
Opacify query invocation.
| -rw-r--r-- | compiler/rustc_middle/src/ty/query/plumbing.rs | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/compiler/rustc_middle/src/ty/query/plumbing.rs b/compiler/rustc_middle/src/ty/query/plumbing.rs index 91a267e38d5..b084fd01327 100644 --- a/compiler/rustc_middle/src/ty/query/plumbing.rs +++ b/compiler/rustc_middle/src/ty/query/plumbing.rs @@ -450,8 +450,7 @@ macro_rules! define_queries { Err(lookup) => lookup, }; - let qcx = QueryCtxt(self.tcx); - get_query::<queries::$name<'_>, _>(qcx, DUMMY_SP, key, lookup, QueryMode::Ensure); + self.tcx.queries.$name(self.tcx, DUMMY_SP, key, lookup, QueryMode::Ensure); })* } @@ -542,8 +541,7 @@ macro_rules! define_queries { Err(lookup) => lookup, }; - let qcx = QueryCtxt(self.tcx); - get_query::<queries::$name<'_>, _>(qcx, self.span, key, lookup, QueryMode::Get).unwrap() + self.tcx.queries.$name(self.tcx, self.span, key, lookup, QueryMode::Get).unwrap() })* } @@ -598,6 +596,20 @@ macro_rules! define_queries_struct { Some(jobs) } + + $($(#[$attr])* + #[inline(always)] + fn $name( + &self, + tcx: TyCtxt<$tcx>, + span: Span, + key: query_keys::$name<$tcx>, + lookup: QueryLookup, + mode: QueryMode, + ) -> Option<query_stored::$name<$tcx>> { + let qcx = QueryCtxt(tcx); + get_query::<queries::$name<$tcx>, _>(qcx, span, key, lookup, mode) + })* } }; } |
