[][src]Struct c2rust_refactor::analysis::ownership::AnalysisResult

pub struct AnalysisResult<'lty, 'tcx> {
    pub statics: HashMap<DefId, PTy<'lty, 'tcx>>,
    pub funcs: HashMap<DefId, FunctionResult<'lty, 'tcx>>,
    pub variants: HashMap<DefId, VariantResult>,
    pub monos: HashMap<(DefId, usize), MonoResult>,
    // some fields omitted
}

The collected results of running the analysis.

Fields

statics: HashMap<DefId, PTy<'lty, 'tcx>>

The permission-labeled type of every non-fn item. This includes statics, consts, and struct/enum fields.

funcs: HashMap<DefId, FunctionResult<'lty, 'tcx>>

Results for to each (analysis-level) function. Note that only the primary variant of each variant group will have its DefId present in this table - look up variants[&id].func_id first if you aren't sure whether a fn is a primary variant.

variants: HashMap<DefId, VariantResult>

Results for to each variant fn. Every fn that was analyzed should have an entry in this table.

monos: HashMap<(DefId, usize), MonoResult>

Results for each monomorphization of each analysis-level function, indexed by function ID and monomorphization index.

Methods

impl<'lty, 'tcx> AnalysisResult<'lty, 'tcx>[src]

pub fn fn_results(
    &self,
    id: DefId
) -> (&FunctionResult<'lty, 'tcx>, &VariantResult)
[src]

Get the function and variant results for a fn item-like.

pub fn arena(&self) -> &'lty SyncDroplessArena[src]

Auto Trait Implementations

impl<'lty, 'tcx> !Send for AnalysisResult<'lty, 'tcx>

impl<'lty, 'tcx> !Sync for AnalysisResult<'lty, 'tcx>

Blanket Implementations

impl<T> Lone for T[src]

impl<T> From for T[src]

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

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

type Error = Infallible

The type returned in the event of a conversion error.

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

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

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

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

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

The type returned in the event of a conversion error.

impl<E> SpecializationError for E[src]

impl<T> Erased for T[src]

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

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

impl<T> Same for T

type Output = T

Should always be Self

impl<T> MaybeResult for T[src]

impl<'a, T> Captures for T where
    T: ?Sized
[src]

impl<T> Erased for T

impl<T> Make for T[src]

impl<T> Slottable for T[src]