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

pub struct Projection<'tcx, B, V> {
    pub base: B,
    pub elem: ProjectionElem<'tcx, V>,
}
Unstable (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

base: B
Unstable (rustc_private)
elem: ProjectionElem<'tcx, V>
Unstable (rustc_private)

Trait Implementations

Derived Implementations

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

fn decode<__DBV: Decoder>(__arg_0: &mut __DBV) -> Result<Projection<'tcx, B, V>, __DBV::Error>

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

fn encode<__SBV: Encoder>(&self, __arg_0: &mut __SBV) -> Result<(), __SBV::Error>

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

fn hash<__HBV: Hasher>(&self, __arg_0: &mut __HBV)

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

fn hash_slice<H>(data: &[Self], state: &mut H) where H: Hasher
1.3.0

Feeds a slice of this type into the state provided.

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

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

fn eq(&self, __arg_0: &Projection<'tcx, B, V>) -> bool

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

fn ne(&self, __arg_0: &Projection<'tcx, B, V>) -> bool

This method tests for !=.

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

fn fmt(&self, __arg_0: &mut Formatter) -> Result

Formats the value using the given formatter.

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

fn clone(&self) -> Projection<'tcx, B, V>

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