pub enum PostfixTarget {
Local {
ident: Ident,
boxed: bool,
target_ty: Type,
},
Global {
name: Ident,
mangled: MangledName,
target_ty: Type,
},
Field {
receiver: ExprId,
name: Ident,
target_ty: Type,
},
Index {
receiver: ExprId,
index: ExprId,
elem_ty: Type,
},
}Variants§
Local
boxed is set by Capture when an inner closure references this binding.
Global
Only let globals; const global targets are rejected by the inferer.
Field
Receiver is cached in an anonymous local to avoid double-evaluating side effects.
Index
Both receiver and index are cached in anonymous locals to avoid double-evaluation.
Trait Implementations§
Source§impl Clone for PostfixTarget
impl Clone for PostfixTarget
Source§impl Debug for PostfixTarget
impl Debug for PostfixTarget
Source§impl PartialEq for PostfixTarget
impl PartialEq for PostfixTarget
impl StructuralPartialEq for PostfixTarget
Auto Trait Implementations§
impl Freeze for PostfixTarget
impl RefUnwindSafe for PostfixTarget
impl Send for PostfixTarget
impl Sync for PostfixTarget
impl Unpin for PostfixTarget
impl UnsafeUnpin for PostfixTarget
impl UnwindSafe for PostfixTarget
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more