Skip to main content

Module project

Module project 

Source
Expand description

Code for projecting associated types out of trait references.

Re-exportsยง

use rustc_data_structures::snapshot_map; ๐Ÿ”’
use rustc_data_structures::snapshot_map::SnapshotMapRef; ๐Ÿ”’
use rustc_data_structures::snapshot_map::SnapshotMapStorage; ๐Ÿ”’
use rustc_data_structures::undo_log::Rollback; ๐Ÿ”’
use rustc_macros::TypeVisitable; ๐Ÿ”’
use rustc_middle::traits::EvaluationResult; ๐Ÿ”’
use rustc_middle::ty; ๐Ÿ”’
use tracing::debug; ๐Ÿ”’
use tracing::info; ๐Ÿ”’
use super::PredicateObligations; ๐Ÿ”’
use crate::infer::snapshot::undo_log::InferCtxtUndoLogs; ๐Ÿ”’

Structsยง

MismatchedProjectionTypes
Normalized
ProjectionCache
The projection cache. Unlike the standard caches, this can include infcx-dependent type variables, therefore we have to roll the cache back each time we roll a snapshot back, to avoid assumptions on yet-unresolved inference variables. Types with placeholder regions also have to be removed when the respective snapshot ends.
ProjectionCacheKey
ProjectionCacheStorage

Enumsยง

ProjectionCacheEntry

Type Aliasesยง

NormalizedTerm
UndoLog ๐Ÿ”’