pub type CanonicalQueryInput<'tcx, V> = CanonicalQueryInput<TyCtxt<'tcx>, V>;
Aliased Type§
struct CanonicalQueryInput<'tcx, V> {
pub canonical: Canonical<TyCtxt<'tcx>, V>,
pub defining_opaque_types: &'tcx RawList<(), LocalDefId>,
}
Fields§
§canonical: Canonical<TyCtxt<'tcx>, V>
§defining_opaque_types: &'tcx RawList<(), LocalDefId>
Trait Implementations§
source§impl<'tcx, T: Clone> Key for CanonicalQueryInput<'tcx, T>
impl<'tcx, T: Clone> Key for CanonicalQueryInput<'tcx, T>
Canonical query goals correspond to abstract trait operations that are not tied to any crate in particular.
type Cache<V> = DefaultCache<CanonicalQueryInput<TyCtxt<'tcx>, T>, V>
source§fn default_span(&self, _tcx: TyCtxt<'_>) -> Span
fn default_span(&self, _tcx: TyCtxt<'_>) -> Span
In the event that a cycle occurs, if no explicit span has been
given for a query with key
self
, what span should we use?source§fn key_as_def_id(&self) -> Option<DefId>
fn key_as_def_id(&self) -> Option<DefId>
fn ty_def_id(&self) -> Option<DefId>
Layout§
Note: Unable to compute type layout, possibly due to this type having generic parameters. Layout can only be computed for concrete, fully-instantiated types.