[][src]Trait rustc_hir::stable_hash_impls::HashStableContext

pub trait HashStableContext: HashStableContext + HashStableContext {
    fn hash_hir_id(&mut self, _: HirId, hasher: &mut StableHasher);
fn hash_body_id(&mut self, _: BodyId, hasher: &mut StableHasher);
fn hash_reference_to_item(&mut self, _: HirId, hasher: &mut StableHasher);
fn hash_hir_mod(&mut self, _: &Mod<'_>, hasher: &mut StableHasher);
fn hash_hir_expr(&mut self, _: &Expr<'_>, hasher: &mut StableHasher);
fn hash_hir_ty(&mut self, _: &Ty<'_>, hasher: &mut StableHasher);
fn hash_hir_visibility_kind(
        &mut self,
        _: &VisibilityKind<'_>,
        hasher: &mut StableHasher
    );
fn hash_hir_item_like<F: FnOnce(&mut Self)>(&mut self, f: F);
fn local_def_path_hash(&self, def_id: LocalDefId) -> DefPathHash; }

Requirements for a StableHashingContext to be used in this crate. This is a hack to allow using the HashStable_Generic derive macro instead of implementing everything in librustc_middle.

Required methods

fn hash_hir_id(&mut self, _: HirId, hasher: &mut StableHasher)

fn hash_body_id(&mut self, _: BodyId, hasher: &mut StableHasher)

fn hash_reference_to_item(&mut self, _: HirId, hasher: &mut StableHasher)

fn hash_hir_mod(&mut self, _: &Mod<'_>, hasher: &mut StableHasher)

fn hash_hir_expr(&mut self, _: &Expr<'_>, hasher: &mut StableHasher)

fn hash_hir_ty(&mut self, _: &Ty<'_>, hasher: &mut StableHasher)

fn hash_hir_visibility_kind(
    &mut self,
    _: &VisibilityKind<'_>,
    hasher: &mut StableHasher
)

fn hash_hir_item_like<F: FnOnce(&mut Self)>(&mut self, f: F)

fn local_def_path_hash(&self, def_id: LocalDefId) -> DefPathHash

Loading content...

Implementors

Loading content...