Remove StableHashProvider.

This commit is contained in:
Camille GILLOT 2021-09-29 19:47:55 +02:00
parent 8961616e60
commit 2d38c53767
2 changed files with 1 additions and 31 deletions

View File

@ -1,5 +1,4 @@
use crate::ich;
use crate::ty::TyCtxt;
use rustc_ast as ast;
use rustc_data_structures::fx::FxHashSet;
use rustc_data_structures::stable_hasher::{HashStable, StableHasher};
@ -178,35 +177,6 @@ impl<'a> StableHashingContext<'a> {
}
}
/// Something that can provide a stable hashing context.
pub trait StableHashingContextProvider<'a> {
fn get_stable_hashing_context(&self) -> StableHashingContext<'a>;
}
impl<'a, 'b, T: StableHashingContextProvider<'a>> StableHashingContextProvider<'a> for &'b T {
fn get_stable_hashing_context(&self) -> StableHashingContext<'a> {
(**self).get_stable_hashing_context()
}
}
impl<'a, 'b, T: StableHashingContextProvider<'a>> StableHashingContextProvider<'a> for &'b mut T {
fn get_stable_hashing_context(&self) -> StableHashingContext<'a> {
(**self).get_stable_hashing_context()
}
}
impl StableHashingContextProvider<'tcx> for TyCtxt<'tcx> {
fn get_stable_hashing_context(&self) -> StableHashingContext<'tcx> {
(*self).create_stable_hashing_context()
}
}
impl<'a> StableHashingContextProvider<'a> for StableHashingContext<'a> {
fn get_stable_hashing_context(&self) -> StableHashingContext<'a> {
self.clone()
}
}
impl<'a> HashStable<StableHashingContext<'a>> for ast::NodeId {
fn hash_stable(&self, _: &mut StableHashingContext<'a>, _: &mut StableHasher) {
panic!("Node IDs should not appear in incremental state");

View File

@ -1,6 +1,6 @@
//! ICH - Incremental Compilation Hash
pub use self::hcx::{NodeIdHashingMode, StableHashingContext, StableHashingContextProvider};
pub use self::hcx::{NodeIdHashingMode, StableHashingContext};
use rustc_span::symbol::{sym, Symbol};
mod hcx;