blob: ee2cdf8811ede12512aacbdaec0b66cfbcca9c46 [file] [edit]
import Lean.Elab.Term
open Lean Expr Elab Term
elab "lett " decl:letDecl ";" e:term : term <= ty? => do
let elabE (ty? : Option Expr) : TermElabM Expr := do elabTerm e ty?
elabToSyntax elabE fun body => do
elabTerm (← `(let $decl:letDecl; $body)) ty?
#guard lett x := 42; (x + 1) = 43