[−][src]Struct rustc_middle::mir::VarBindingForm
Fields
binding_mode: BindingModeIs variable bound via x, mut x, ref x, or ref mut x?
opt_ty_info: Option<Span>If an explicit type was provided for this variable binding, this holds the source Span of that type.
NOTE: if you want to change this to a HirId, be wary that
doing so breaks incremental compilation (as of this writing),
while a Span does not cause our tests to fail.
opt_match_place: Option<(Option<Place<'tcx>>, Span)>Place of the RHS of the =, or the subject of the match where this
variable is initialized. None in the case of let PATTERN;.
Some((None, ..)) in the case of and let [mut] x = ... because
(a) the right-hand side isn't evaluated as a place expression.
(b) it gives a way to separate this case from the remaining cases
for diagnostics.
pat_span: SpanThe span of the pattern in which this variable was bound.
Trait Implementations
impl<'tcx> Clone for VarBindingForm<'tcx>[src]
pub fn clone(&self) -> VarBindingForm<'tcx>[src]
pub fn clone_from(&mut self, source: &Self)1.0.0[src]
impl<'tcx> Debug for VarBindingForm<'tcx>[src]
impl<'tcx, __D: TyDecoder<'tcx>> Decodable<__D> for VarBindingForm<'tcx>[src]
impl<'tcx, __E: TyEncoder<'tcx>> Encodable<__E> for VarBindingForm<'tcx>[src]
impl<'tcx, '__ctx> HashStable<StableHashingContext<'__ctx>> for VarBindingForm<'tcx>[src]
pub fn hash_stable(
&self,
__hcx: &mut StableHashingContext<'__ctx>,
__hasher: &mut StableHasher
)[src]
&self,
__hcx: &mut StableHashingContext<'__ctx>,
__hasher: &mut StableHasher
)
Auto Trait Implementations
impl<'tcx> !RefUnwindSafe for VarBindingForm<'tcx>
impl<'tcx> !Send for VarBindingForm<'tcx>
impl<'tcx> !Sync for VarBindingForm<'tcx>
impl<'tcx> Unpin for VarBindingForm<'tcx>
impl<'tcx> !UnwindSafe for VarBindingForm<'tcx>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T[src]
impl<'a, T> Captures<'a> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T> MaybeResult<T> for T[src]
type Error = !
pub fn from(Result<T, <T as MaybeResult<T>>::Error>) -> T[src]
pub fn to_result(self) -> Result<T, <T as MaybeResult<T>>::Error>[src]
impl<T> ToOwned for T where
T: Clone, [src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T[src]
pub fn clone_into(&self, target: &mut T)[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.