[−][src]Trait rustc_query_system::query::config::QueryAccessors

pub trait QueryAccessors<CTX: QueryContext>: QueryConfig {
    type Cache: QueryCache<Key = Self::Key, Stored = Self::Stored, Value = Self::Value>;

    const ANON: bool;
    const EVAL_ALWAYS: bool;
    const DEP_KIND: CTX::DepKind;

    fn query_state<'a>(
        tcx: CTX
    ) -> &'a QueryState<CTX::DepKind, CTX::Query, Self::Cache>;
fn compute(tcx: CTX, key: Self::Key) -> Self::Value;
fn hash_result(
        hcx: &mut CTX::StableHashingContext,
        result: &Self::Value
    ) -> Option<Fingerprint>;
fn handle_cycle_error(
        tcx: CTX,
        error: CycleError<CTX::Query>
    ) -> Self::Value; fn to_dep_node(tcx: CTX, key: &Self::Key) -> DepNode<CTX::DepKind>
    where
        Self::Key: DepNodeParams<CTX>
, { ... } }

Associated Types

type Cache: QueryCache<Key = Self::Key, Stored = Self::Stored, Value = Self::Value>

Loading content...

Associated Constants

const ANON: bool

const EVAL_ALWAYS: bool

const DEP_KIND: CTX::DepKind

Loading content...

Required methods

fn query_state<'a>(
    tcx: CTX
) -> &'a QueryState<CTX::DepKind, CTX::Query, Self::Cache>

fn compute(tcx: CTX, key: Self::Key) -> Self::Value

fn hash_result(
    hcx: &mut CTX::StableHashingContext,
    result: &Self::Value
) -> Option<Fingerprint>

fn handle_cycle_error(tcx: CTX, error: CycleError<CTX::Query>) -> Self::Value

Loading content...

Provided methods

fn to_dep_node(tcx: CTX, key: &Self::Key) -> DepNode<CTX::DepKind> where
    Self::Key: DepNodeParams<CTX>, 

Loading content...

Implementors

Loading content...