Struct rustc::traits::VtableImplData [] [src]

pub struct VtableImplData<'tcx, N> {
    pub impl_def_id: DefId,
    pub substs: &'tcx Substs<'tcx>,
    pub nested: Vec<N>,
}
🔬 This is a nightly-only experimental API. (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

🔬 This is a nightly-only experimental API. (rustc_private)
🔬 This is a nightly-only experimental API. (rustc_private)
🔬 This is a nightly-only experimental API. (rustc_private)

Trait Implementations

impl<'tcx, N: Debug> Debug for VtableImplData<'tcx, N>
[src]

Formats the value using the given formatter.

impl<'tcx, N: TypeFoldable<'tcx>> TypeFoldable<'tcx> for VtableImplData<'tcx, N>
[src]

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (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]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl<'tcx, N: PartialEq> PartialEq for VtableImplData<'tcx, N>
[src]

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

impl<'tcx, N: Eq> Eq for VtableImplData<'tcx, N>
[src]