Struct LocalInit
pub struct LocalInit { pub eq_token: Eq, pub expr: Box<Expr>, pub diverge: Option<(Else, Box<Expr>)> }
The expression assigned in a local let binding, including optional
diverging else block.
LocalInit represents = s.parse()? in let x: u64 = s.parse()? and
= r else { return } in let Ok(x) = r else { return }.
Fields
eq_token: Eqexpr: Box<Expr>diverge: Option<(Else, Box<Expr>)>
Trait Implementations
impl Clone for LocalInit
fn clone(&self) -> Self
Auto Trait Implementations
impl !Send for LocalInit
impl !Sync for LocalInit
impl Freeze for LocalInit
impl RefUnwindSafe for LocalInit
impl Unpin for LocalInit
impl UnsafeUnpin for LocalInit
impl UnwindSafe for LocalInit
Blanket Implementations
impl<T> Any for LocalInit
where
T: 'static + ?Sized,
fn type_id(&self) -> TypeId
impl<T> Borrow<T> for LocalInit
where
T: ?Sized,
fn borrow(&self) -> &T
impl<T> BorrowMut<T> for LocalInit
where
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
impl<T> CloneToUninit for LocalInit
where
T: Clone,
unsafe fn clone_to_uninit(&self, dest: *mut u8)
impl<T> From<T> for LocalInit
fn from(t: T) -> TReturns the argument unchanged.
impl<T> ToOwned for LocalInit
where
T: Clone,
type Owned = T;fn to_owned(&self) -> Tfn clone_into(&self, target: &mut T)
impl<T, U> Into<U> for LocalInit
where
U: From<T>,
fn into(self) -> UCalls
U::from(self).That is, this conversion is whatever the implementation of
[From]<T> for Uchooses to do.
impl<T, U> TryFrom<U> for LocalInit
where
U: Into<T>,
type Error = never;fn try_from(value: U) -> Result<T, never>
impl<T, U> TryInto<U> for LocalInit
where
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error;fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>