Struct rustc::mir::Projection [] [src]

pub struct Projection<'tcx, B, V> {
    pub base: B,
    pub elem: ProjectionElem<'tcx, V>,
}
🔬 This is a nightly-only experimental API. (rustc_private)

The Projection data structure defines things of the form B.x or *B or B[index]. Note that it is parameterized because it is shared between Constant and Lvalue. See the aliases LvalueProjection etc below.

Fields

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

Trait Implementations

impl<'tcx, B: Clone, V: Clone> Clone for Projection<'tcx, B, V>
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl<'tcx, B: Debug, V: Debug> Debug for Projection<'tcx, B, V>
[src]

Formats the value using the given formatter.

impl<'tcx, B: PartialEq, V: PartialEq> PartialEq for Projection<'tcx, B, V>
[src]

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

This method tests for !=.

impl<'tcx, B: Eq, V: Eq> Eq for Projection<'tcx, B, V>
[src]

impl<'tcx, B: Hash, V: Hash> Hash for Projection<'tcx, B, V>
[src]

Feeds this value into the state given, updating the hasher as necessary.

Feeds a slice of this type into the state provided.

impl<'tcx, B: Encodable, V: Encodable> Encodable for Projection<'tcx, B, V>
[src]

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

deprecated in favor of rustc-serialize on crates.io

impl<'tcx, B: Decodable, V: Decodable> Decodable for Projection<'tcx, B, V>
[src]

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

deprecated in favor of rustc-serialize on crates.io

impl<'tcx, B, V> TypeFoldable<'tcx> for Projection<'tcx, B, V> where B: TypeFoldable<'tcx>,
        V: TypeFoldable<'tcx>
[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