Enum rustc_mir_build::thir::ExprKind [−][src]
Variants
Fields of Box
value: &'thir Expr<'thir, 'tcx>Fields of If
Fields of Call
ty: Ty<'tcx>fun: &'thir Expr<'thir, 'tcx>args: &'thir [Expr<'thir, 'tcx>]from_hir_call: boolWhether this is from a call in HIR, rather than from an overloaded
operator. true for overloaded function call.
fn_span: SpanThis Span is the span of the function, without the dot and receiver
(e.g. foo(a, b) in x.foo(a, b)
Fields of Deref
arg: &'thir Expr<'thir, 'tcx>Fields of Cast
source: &'thir Expr<'thir, 'tcx>Fields of Use
source: &'thir Expr<'thir, 'tcx>Fields of NeverToAny
source: &'thir Expr<'thir, 'tcx>Fields of Pointer
cast: PointerCastsource: &'thir Expr<'thir, 'tcx>Fields of Loop
body: &'thir Expr<'thir, 'tcx>Fields of Block
body: Block<'thir, 'tcx>Fields of VarRef
id: HirIdUsed to represent upvars mentioned in a closure/generator
Fields of UpvarRef
Fields of Borrow
borrow_kind: BorrowKindarg: &'thir Expr<'thir, 'tcx>A &raw [const|mut] $place_expr raw borrow resulting in type *[const|mut] T.
Fields of AddressOf
mutability: Mutabilityarg: &'thir Expr<'thir, 'tcx>Fields of Continue
label: ScopeFields of ConstBlock
value: &'tcx Const<'tcx>Fields of Adt
Fields of PlaceTypeAscription
Fields of ValueTypeAscription
Fields of Closure
closure_id: DefIdsubsts: UpvarSubsts<'tcx>upvars: &'thir [Expr<'thir, 'tcx>]movability: Option<Movability>fake_reads: Vec<(&'thir Expr<'thir, 'tcx>, FakeReadCause, HirId)>Fields of Literal
A literal containing the address of a static.
This is only distinguished from Literal so that we can register some
info for diagnostics.
Fields of InlineAsm
template: &'tcx [InlineAsmTemplatePiece]operands: &'thir [InlineAsmOperand<'thir, 'tcx>]options: InlineAsmOptionsline_spans: &'tcx [Span]ThreadLocalRef(DefId)An expression taking a reference to a thread local.
Fields of LlvmInlineAsm
Fields of Yield
value: &'thir Expr<'thir, 'tcx>Trait Implementations
Auto Trait Implementations
impl<'thir, 'tcx> !RefUnwindSafe for ExprKind<'thir, 'tcx>
impl<'thir, 'tcx> !Send for ExprKind<'thir, 'tcx>
impl<'thir, 'tcx> !Sync for ExprKind<'thir, 'tcx>
impl<'thir, 'tcx> Unpin for ExprKind<'thir, 'tcx> where
'tcx: 'thir,
'tcx: 'thir,
impl<'thir, 'tcx> !UnwindSafe for ExprKind<'thir, '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, 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>,