Struct rustc::traits::VtableImplData
[−]
[src]
pub struct VtableImplData<'tcx, N> {
pub impl_def_id: DefId,
pub substs: &'tcx Substs<'tcx>,
pub nested: Vec<N>,
}rustc_private)Identifies a particular impl in the source, along with a set of
substitutions from the impl's type/lifetime parameters. The
nested vector corresponds to the nested obligations attached to
the impl's type parameters.
The type parameter N indicates the type used for "nested
obligations" that are required by the impl. During type check, this
is Obligation, as one might expect. During trans, however, this
is (), because trans only requires a shallow resolution of an
impl, and nested obligations are satisfied later.
Fields
impl_def_id: DefId
rustc_private)substs: &'tcx Substs<'tcx>
rustc_private)nested: Vec<N>
rustc_private)Trait Implementations
impl<'tcx, N: Debug> Debug for VtableImplData<'tcx, N>[src]
impl<'tcx, N: TypeFoldable<'tcx>> TypeFoldable<'tcx> for VtableImplData<'tcx, N>[src]
fn super_fold_with<'gcx: 'tcx, F: TypeFolder<'gcx, 'tcx>>(&self,
folder: &mut F)
-> Self
folder: &mut F)
-> Self
rustc_private)fn super_visit_with<V: TypeVisitor<'tcx>>(&self, visitor: &mut V) -> bool
rustc_private)fn fold_with<'gcx: 'tcx, F: TypeFolder<'gcx, 'tcx>>(&self,
folder: &mut F)
-> Self
folder: &mut F)
-> Self
rustc_private)fn visit_with<V: TypeVisitor<'tcx>>(&self, visitor: &mut V) -> bool
rustc_private)fn has_regions_escaping_depth(&self, depth: u32) -> bool
rustc_private)fn has_escaping_regions(&self) -> bool
rustc_private)fn has_type_flags(&self, flags: TypeFlags) -> bool
rustc_private)fn has_projection_types(&self) -> bool
rustc_private)fn references_error(&self) -> bool
rustc_private)fn has_param_types(&self) -> bool
rustc_private)fn has_self_ty(&self) -> bool
rustc_private)fn has_infer_types(&self) -> bool
rustc_private)fn needs_infer(&self) -> bool
rustc_private)fn needs_subst(&self) -> bool
rustc_private)fn has_re_skol(&self) -> bool
rustc_private)fn has_closure_types(&self) -> bool
rustc_private)fn has_erasable_regions(&self) -> bool
rustc_private)fn is_normalized_for_trans(&self) -> bool
rustc_private)fn is_global(&self) -> bool
rustc_private)Indicates whether this value references only 'global' types/lifetimes that are the same regardless of what fn we are in. This is used for caching. Errs on the side of returning false. Read more
impl<'tcx, N: Clone> Clone for VtableImplData<'tcx, N>[src]
fn clone(&self) -> VtableImplData<'tcx, N>
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)1.0.0
Performs copy-assignment from source. Read more
impl<'tcx, N: PartialEq> PartialEq for VtableImplData<'tcx, N>[src]
fn eq(&self, __arg_0: &VtableImplData<'tcx, N>) -> bool
This method tests for self and other values to be equal, and is used by ==. Read more
fn ne(&self, __arg_0: &VtableImplData<'tcx, N>) -> bool
This method tests for !=.