[][src]Struct rustc::ty::query::on_disk_cache::CacheDecoder

struct CacheDecoder<'a, 'tcx> {
    tcx: TyCtxt<'tcx>,
    opaque: Decoder<'a>,
    source_map: &'a SourceMap,
    cnum_map: &'a IndexVec<CrateNum, Option<CrateNum>>,
    synthetic_syntax_contexts: &'a Lock<FxHashMap<AbsoluteBytePos, SyntaxContext>>,
    file_index_to_file: &'a Lock<FxHashMap<SourceFileIndex, Lrc<SourceFile>>>,
    file_index_to_stable_id: &'a FxHashMap<SourceFileIndex, StableSourceFileId>,
    alloc_decoding_session: AllocDecodingSession<'a>,
}
⚙️ This is an internal compiler API. (rustc_private)

This crate is being loaded from the sysroot, a permanently unstable location for private compiler dependencies. It is not intended for general use. Prefer using a public version of this crate from crates.io via Cargo.toml.

A decoder that can read fro the incr. comp. cache. It is similar to the one we use for crate metadata decoding in that it can rebase spans and eventually will also handle things that contain Ty instances.

Fields

tcx: TyCtxt<'tcx>
⚙️ This is an internal compiler API. (rustc_private)

This crate is being loaded from the sysroot, a permanently unstable location for private compiler dependencies. It is not intended for general use. Prefer using a public version of this crate from crates.io via Cargo.toml.

opaque: Decoder<'a>
⚙️ This is an internal compiler API. (rustc_private)

This crate is being loaded from the sysroot, a permanently unstable location for private compiler dependencies. It is not intended for general use. Prefer using a public version of this crate from crates.io via Cargo.toml.

source_map: &'a SourceMap
⚙️ This is an internal compiler API. (rustc_private)

This crate is being loaded from the sysroot, a permanently unstable location for private compiler dependencies. It is not intended for general use. Prefer using a public version of this crate from crates.io via Cargo.toml.

cnum_map: &'a IndexVec<CrateNum, Option<CrateNum>>
⚙️ This is an internal compiler API. (rustc_private)

This crate is being loaded from the sysroot, a permanently unstable location for private compiler dependencies. It is not intended for general use. Prefer using a public version of this crate from crates.io via Cargo.toml.

synthetic_syntax_contexts: &'a Lock<FxHashMap<AbsoluteBytePos, SyntaxContext>>
⚙️ This is an internal compiler API. (rustc_private)

This crate is being loaded from the sysroot, a permanently unstable location for private compiler dependencies. It is not intended for general use. Prefer using a public version of this crate from crates.io via Cargo.toml.

file_index_to_file: &'a Lock<FxHashMap<SourceFileIndex, Lrc<SourceFile>>>
⚙️ This is an internal compiler API. (rustc_private)

This crate is being loaded from the sysroot, a permanently unstable location for private compiler dependencies. It is not intended for general use. Prefer using a public version of this crate from crates.io via Cargo.toml.

file_index_to_stable_id: &'a FxHashMap<SourceFileIndex, StableSourceFileId>
⚙️ This is an internal compiler API. (rustc_private)

This crate is being loaded from the sysroot, a permanently unstable location for private compiler dependencies. It is not intended for general use. Prefer using a public version of this crate from crates.io via Cargo.toml.

alloc_decoding_session: AllocDecodingSession<'a>
⚙️ This is an internal compiler API. (rustc_private)

This crate is being loaded from the sysroot, a permanently unstable location for private compiler dependencies. It is not intended for general use. Prefer using a public version of this crate from crates.io via Cargo.toml.

Methods

impl<'a, 'tcx> CacheDecoder<'a, 'tcx>[src]

fn file_index_to_file(&self, index: SourceFileIndex) -> Lrc<SourceFile>[src]

⚙️ This is an internal compiler API. (rustc_private)

This crate is being loaded from the sysroot, a permanently unstable location for private compiler dependencies. It is not intended for general use. Prefer using a public version of this crate from crates.io via Cargo.toml.

Trait Implementations

impl<'a, 'tcx> Decoder for CacheDecoder<'a, 'tcx>[src]

type Error = String

⚙️ This is an internal compiler API. (rustc_private)

This crate is being loaded from the sysroot, a permanently unstable location for private compiler dependencies. It is not intended for general use. Prefer using a public version of this crate from crates.io via Cargo.toml.

impl<'a, 'tcx> DecoderWithPosition for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<&'tcx [(Predicate<'tcx>, Span)]> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<&'tcx [BitSet<Local>]> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<&'tcx [Graph]> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<&'tcx [HashSet<DefId, BuildHasherDefault<FxHasher>>]> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<&'tcx AdtDef> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<&'tcx Allocation<(), ()>> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<&'tcx BitSet<Local>> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<&'tcx Const<'tcx>> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<&'tcx Graph> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<&'tcx HashSet<DefId, BuildHasherDefault<FxHasher>>> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<&'tcx List<&'tcx TyS<'tcx>>> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<&'tcx List<CanonicalVarInfo>> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<&'tcx List<ExistentialPredicate<'tcx>>> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<&'tcx List<GenericArg<'tcx>>> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<&'tcx RegionKind> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<&'tcx TyS<'tcx>> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<AllocId> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx, T: Decodable> SpecializedDecoder<ClearCrossCrate<T>> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<CrateNum> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<DefId> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<DefIndex> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<Fingerprint> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<HirId> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<Ident> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<LocalDefId> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<NodeId> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<Place<'tcx>> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> SpecializedDecoder<Span> for CacheDecoder<'a, 'tcx>[src]

impl<'a, 'tcx> TyDecoder<'tcx> for CacheDecoder<'a, 'tcx>[src]

Auto Trait Implementations

impl<'a, 'tcx> !RefUnwindSafe for CacheDecoder<'a, 'tcx>

impl<'a, 'tcx> !Send for CacheDecoder<'a, 'tcx>

impl<'a, 'tcx> !Sync for CacheDecoder<'a, 'tcx>

impl<'a, 'tcx> Unpin for CacheDecoder<'a, 'tcx>

impl<'a, 'tcx> !UnwindSafe for CacheDecoder<'a, 'tcx>

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<'a, T> Captures<'a> for T where
    T: ?Sized
[src]

impl<T> Erased for T[src]

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

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

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

type Error = !

⚙️ This is an internal compiler API. (rustc_private)

This crate is being loaded from the sysroot, a permanently unstable location for private compiler dependencies. It is not intended for general use. Prefer using a public version of this crate from crates.io via Cargo.toml.

impl<E> SpecializationError for E[src]

impl<D, T> SpecializedDecoder<T> for D where
    D: Decoder,
    T: UseSpecializedDecodable
[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.

impl<T> WithConstness for T[src]