[][src]Trait rustc_middle::dep_graph::dep_node::DepNodeParams

pub trait DepNodeParams<Ctxt>: Debug where
    Ctxt: DepContext
{ fn can_reconstruct_query_key() -> bool;
fn recover(
        tcx: Ctxt,
        dep_node: &DepNode<<Ctxt as DepContext>::DepKind>
    ) -> Option<Self>; fn to_fingerprint(&self, Ctxt) -> Fingerprint { ... }
fn to_debug_str(&self, Ctxt) -> String { ... } }

Required methods

fn can_reconstruct_query_key() -> bool

fn recover(
    tcx: Ctxt,
    dep_node: &DepNode<<Ctxt as DepContext>::DepKind>
) -> Option<Self>

This method tries to recover the query key from the given DepNode, something which is needed when forcing DepNodes during red-green evaluation. The query system will only call this method if can_reconstruct_query_key() is true. It is always valid to return None here, in which case incremental compilation will treat the query as having changed instead of forcing it.

Loading content...

Provided methods

fn to_fingerprint(&self, Ctxt) -> Fingerprint

This method turns the parameters of a DepNodeConstructor into an opaque Fingerprint to be used in DepNode. Not all DepNodeParams support being turned into a Fingerprint (they don't need to if the corresponding DepNode is anonymous).

fn to_debug_str(&self, Ctxt) -> String

Loading content...

Implementations on Foreign Types

impl<'tcx> DepNodeParams<TyCtxt<'tcx>> for DefId[src]

impl<'tcx> DepNodeParams<TyCtxt<'tcx>> for LocalDefId[src]

impl<'tcx> DepNodeParams<TyCtxt<'tcx>> for CrateNum[src]

impl<'tcx> DepNodeParams<TyCtxt<'tcx>> for (DefId, DefId)[src]

impl<'tcx> DepNodeParams<TyCtxt<'tcx>> for HirId[src]

Loading content...

Implementors

Loading content...