pub struct ExprLet {
pub bindings: Vec<Expr>,
pub body: Box<Expr>,
}Expand description
A scoped binding expression with one or more bindings.
Evaluates each binding in order, pushes all results into a new scope, then
evaluates body in that scope. The body references binding i via
Arg(position=i, nesting=0).
ExprLet is transient scaffolding used during lowering. It is always
inlined away (by substituting the bindings into the body) before the
planner sees the expression tree.
Fields§
§bindings: Vec<Expr>Expressions whose results are bound as arg(0), arg(1), etc. in a
new scope.
body: Box<Expr>The body expression evaluated in the new scope.
Trait Implementations§
impl StructuralPartialEq for ExprLet
Auto Trait Implementations§
impl Freeze for ExprLet
impl RefUnwindSafe for ExprLet
impl Send for ExprLet
impl Sync for ExprLet
impl Unpin for ExprLet
impl UnwindSafe for ExprLet
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