Skip to content

Commit 23f9d10

Browse files
committed
Make encode_query_results more generic.
1 parent 24dbb61 commit 23f9d10

File tree

2 files changed

+9
-7
lines changed

2 files changed

+9
-7
lines changed

compiler/rustc_middle/src/ty/query/on_disk_cache.rs

+8-6
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ use crate::mir::interpret::{AllocDecodingSession, AllocDecodingState};
33
use crate::mir::{self, interpret};
44
use crate::ty::codec::{RefDecodable, TyDecoder, TyEncoder};
55
use crate::ty::context::TyCtxt;
6-
use crate::ty::query::QueryCtxt;
76
use crate::ty::{self, Ty};
87
use rustc_data_structures::fingerprint::{Fingerprint, FingerprintDecoder, FingerprintEncoder};
98
use rustc_data_structures::fx::{FxHashMap, FxHashSet, FxIndexSet};
@@ -15,6 +14,8 @@ use rustc_hir::def_id::{CrateNum, DefId, DefIndex, LocalDefId, LOCAL_CRATE};
1514
use rustc_hir::definitions::DefPathHash;
1615
use rustc_hir::definitions::Definitions;
1716
use rustc_index::vec::{Idx, IndexVec};
17+
use rustc_query_system::dep_graph::DepContext;
18+
use rustc_query_system::query::QueryContext;
1819
use rustc_serialize::{
1920
opaque::{self, FileEncodeResult, FileEncoder},
2021
Decodable, Decoder, Encodable, Encoder,
@@ -1215,18 +1216,19 @@ impl<'a> Decodable<opaque::Decoder<'a>> for IntEncodedWithFixedSize {
12151216
}
12161217
}
12171218

1218-
pub fn encode_query_results<'a, 'tcx, Q>(
1219-
tcx: QueryCtxt<'tcx>,
1219+
pub fn encode_query_results<'a, 'tcx, CTX, Q>(
1220+
tcx: CTX,
12201221
encoder: &mut CacheEncoder<'a, 'tcx, FileEncoder>,
12211222
query_result_index: &mut EncodedQueryResultIndex,
12221223
) -> FileEncodeResult
12231224
where
1224-
Q: super::QueryDescription<QueryCtxt<'tcx>> + super::QueryAccessors<QueryCtxt<'tcx>>,
1225+
CTX: QueryContext + 'tcx,
1226+
Q: super::QueryDescription<CTX> + super::QueryAccessors<CTX>,
12251227
Q::Value: Encodable<CacheEncoder<'a, 'tcx, FileEncoder>>,
12261228
{
12271229
let _timer = tcx
1228-
.sess
1229-
.prof
1230+
.dep_context()
1231+
.profiler()
12301232
.extra_verbose_generic_activity("encode_query_results_for", std::any::type_name::<Q>());
12311233

12321234
assert!(Q::query_state(tcx).all_inactive());

compiler/rustc_middle/src/ty/query/plumbing.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -251,7 +251,7 @@ impl<'tcx> QueryCtxt<'tcx> {
251251
macro_rules! encode_queries {
252252
($($query:ident,)*) => {
253253
$(
254-
on_disk_cache::encode_query_results::<ty::query::queries::$query<'_>>(
254+
on_disk_cache::encode_query_results::<_, ty::query::queries::$query<'_>>(
255255
self,
256256
encoder,
257257
query_result_index

0 commit comments

Comments
 (0)