Enum rustc_typeck::check::cast::PointerKind [−][src]
enum PointerKind<'tcx> {
Thin,
Vtable(Option<DefId>),
Length,
OfProjection(&'tcx ProjectionTy<'tcx>),
OfAnon(DefId, &'tcx Substs<'tcx>),
OfParam(&'tcx ParamTy),
}🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
The kind of pointer and associated metadata (thin, length or vtable) - we only allow casts between fat pointers if their metadata have the same kind.
Variants
Thin🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
No metadata attached, ie pointer to sized type or foreign type
Vtable(Option<DefId>)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
A trait object
Length🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Slice
OfProjection(&'tcx ProjectionTy<'tcx>)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
The unsize info of this projection
OfAnon(DefId, &'tcx Substs<'tcx>)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
The unsize info of this anon ty
OfParam(&'tcx ParamTy)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
The unsize info of this parameter
Trait Implementations
impl<'tcx> Copy for PointerKind<'tcx>[src]
impl<'tcx> Copy for PointerKind<'tcx>impl<'tcx> Clone for PointerKind<'tcx>[src]
impl<'tcx> Clone for PointerKind<'tcx>fn clone(&self) -> PointerKind<'tcx>[src]
fn clone(&self) -> PointerKind<'tcx>Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)1.0.0[src]
fn clone_from(&mut self, source: &Self)Performs copy-assignment from source. Read more
impl<'tcx> PartialEq for PointerKind<'tcx>[src]
impl<'tcx> PartialEq for PointerKind<'tcx>fn eq(&self, other: &PointerKind<'tcx>) -> bool[src]
fn eq(&self, other: &PointerKind<'tcx>) -> boolThis method tests for self and other values to be equal, and is used by ==. Read more
fn ne(&self, other: &PointerKind<'tcx>) -> bool[src]
fn ne(&self, other: &PointerKind<'tcx>) -> boolThis method tests for !=.
impl<'tcx> Eq for PointerKind<'tcx>[src]
impl<'tcx> Eq for PointerKind<'tcx>fn assert_receiver_is_total_eq(&self)[src]
fn assert_receiver_is_total_eq(&self)Auto Trait Implementations
impl<'tcx> !Send for PointerKind<'tcx>
impl<'tcx> !Send for PointerKind<'tcx>impl<'tcx> !Sync for PointerKind<'tcx>
impl<'tcx> !Sync for PointerKind<'tcx>