[−][src]Struct rustc_query_system::query::config::QueryVtable

pub(crate) struct QueryVtable<CTX: QueryContext, K, V> {
    pub anon: bool,
    pub dep_kind: CTX::DepKind,
    pub eval_always: bool,
    pub compute: fn(_: CTX, _: K) -> V,
    pub hash_result: fn(_: &mut CTX::StableHashingContext, _: &V) -> Option<Fingerprint>,
    pub handle_cycle_error: fn(_: CTX, _: CycleError<CTX::Query>) -> V,
    pub cache_on_disk: fn(_: CTX, _: &K, _: Option<&V>) -> bool,
    pub try_load_from_disk: fn(_: CTX, _: SerializedDepNodeIndex) -> Option<V>,
}

Fields

anon: booldep_kind: CTX::DepKindeval_always: boolcompute: fn(_: CTX, _: K) -> Vhash_result: fn(_: &mut CTX::StableHashingContext, _: &V) -> Option<Fingerprint>handle_cycle_error: fn(_: CTX, _: CycleError<CTX::Query>) -> Vcache_on_disk: fn(_: CTX, _: &K, _: Option<&V>) -> booltry_load_from_disk: fn(_: CTX, _: SerializedDepNodeIndex) -> Option<V>

Implementations

impl<CTX: QueryContext, K, V> QueryVtable<CTX, K, V>[src]

pub(crate) fn to_dep_node(&self, tcx: CTX, key: &K) -> DepNode<CTX::DepKind> where
    K: DepNodeParams<CTX>, 
[src]

pub(crate) fn compute(&self, tcx: CTX, key: K) -> V[src]

pub(crate) fn hash_result(
    &self,
    hcx: &mut CTX::StableHashingContext,
    value: &V
) -> Option<Fingerprint>
[src]

pub(crate) fn handle_cycle_error(
    &self,
    tcx: CTX,
    error: CycleError<CTX::Query>
) -> V
[src]

pub(crate) fn cache_on_disk(&self, tcx: CTX, key: &K, value: Option<&V>) -> bool[src]

pub(crate) fn try_load_from_disk(
    &self,
    tcx: CTX,
    index: SerializedDepNodeIndex
) -> Option<V>
[src]

Auto Trait Implementations

impl<CTX, K, V> RefUnwindSafe for QueryVtable<CTX, K, V> where
    <CTX as DepContext>::DepKind: RefUnwindSafe, 

impl<CTX, K, V> Send for QueryVtable<CTX, K, V> where
    <CTX as DepContext>::DepKind: Send, 

impl<CTX, K, V> Sync for QueryVtable<CTX, K, V> where
    <CTX as DepContext>::DepKind: Sync, 

impl<CTX, K, V> Unpin for QueryVtable<CTX, K, V> where
    <CTX as DepContext>::DepKind: Unpin, 

impl<CTX, K, V> UnwindSafe for QueryVtable<CTX, K, V> where
    <CTX as DepContext>::DepKind: UnwindSafe, 

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized, 
[src]

impl<T> Borrow<T> for T where
    T: ?Sized, 
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.