@[reducible, inline]
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Lean.Compiler.LCNF.PP.ppExpr e = do let __do_lift ← read liftM ((Lean.Meta.ppExpr e).run' { lctx := __do_lift })
Instances For
Equations
- One or more equations did not get rendered due to their size.
- Lean.Compiler.LCNF.PP.ppArg Lean.Compiler.LCNF.Arg.erased = pure (Std.Format.text "◾")
- Lean.Compiler.LCNF.PP.ppArg (Lean.Compiler.LCNF.Arg.fvar fvarId) = Lean.Compiler.LCNF.PP.ppFVar fvarId
Instances For
Equations
Instances For
Equations
- Lean.Compiler.LCNF.PP.ppLitValue (Lean.Compiler.LCNF.LitValue.nat v) = pure (Std.format v)
- Lean.Compiler.LCNF.PP.ppLitValue (Lean.Compiler.LCNF.LitValue.uint8 v) = pure (Std.format v)
- Lean.Compiler.LCNF.PP.ppLitValue (Lean.Compiler.LCNF.LitValue.uint16 v) = pure (Std.format v)
- Lean.Compiler.LCNF.PP.ppLitValue (Lean.Compiler.LCNF.LitValue.uint32 v) = pure (Std.format v)
- Lean.Compiler.LCNF.PP.ppLitValue (Lean.Compiler.LCNF.LitValue.uint64 v) = pure (Std.format v)
- Lean.Compiler.LCNF.PP.ppLitValue (Lean.Compiler.LCNF.LitValue.usize v) = pure (Std.format v)
- Lean.Compiler.LCNF.PP.ppLitValue (Lean.Compiler.LCNF.LitValue.str v) = pure (Std.format (repr v))
Instances For
@[instance_reducible]
Equations
- One or more equations did not get rendered due to their size.
- Lean.Compiler.LCNF.PP.ppLetValue Lean.Compiler.LCNF.LetValue.erased = pure (Std.Format.text "◾")
- Lean.Compiler.LCNF.PP.ppLetValue (Lean.Compiler.LCNF.LetValue.lit v) = Lean.Compiler.LCNF.PP.ppLitValue v
- Lean.Compiler.LCNF.PP.ppLetValue (Lean.Compiler.LCNF.LetValue.ctor i args h) = do let __do_lift ← Lean.Compiler.LCNF.PP.ppArgs args pure (Std.format i ++ Std.format " " ++ Std.format __do_lift)
- Lean.Compiler.LCNF.PP.ppLetValue (Lean.Compiler.LCNF.LetValue.fap declName args h) = do let __do_lift ← Lean.Compiler.LCNF.PP.ppArgs args pure (Std.format declName ++ Std.format __do_lift)
- Lean.Compiler.LCNF.PP.ppLetValue (Lean.Compiler.LCNF.LetValue.box ty fvarId h) = do let __do_lift ← Lean.Compiler.LCNF.PP.ppFVar fvarId pure (Std.format "box " ++ Std.format __do_lift)
- Lean.Compiler.LCNF.PP.ppLetValue (Lean.Compiler.LCNF.LetValue.unbox fvarId h) = do let __do_lift ← Lean.Compiler.LCNF.PP.ppFVar fvarId pure (Std.format "unbox " ++ Std.format __do_lift)
Instances For
Equations
Instances For
Equations
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
Instances For
Equations
Instances For
Equations
- Lean.Compiler.LCNF.ppFunDecl decl = Lean.Compiler.LCNF.PP.run do let __do_lift ← Lean.Compiler.LCNF.PP.ppFunDecl decl pure (Std.format "fun " ++ Std.format __do_lift)
Instances For
def
Lean.Compiler.LCNF.runCompilerWithoutModifyingState
{α : Type}
(phase : Phase)
(x : CompilerM α)
:
CoreM α
Execute x in CoreM without modifying Cores state.
This is useful if we want make sure we do not affect the next free variable id.
Equations
- Lean.Compiler.LCNF.runCompilerWithoutModifyingState phase x = do let s ← get tryFinally (x.run { } phase) (set s)
Instances For
Similar to ppDecl, but in CoreM, and it does not assume
decl has already been internalized.
This function is used for debugging purposes.
Equations
- Lean.Compiler.LCNF.ppDecl' decl phase = Lean.Compiler.LCNF.runCompilerWithoutModifyingState phase do let __do_lift ← decl.internalize Lean.Compiler.LCNF.ppDecl __do_lift
Instances For
Similar to ppCode, but in CoreM, and it does not assume
code has already been internalized.
Equations
- Lean.Compiler.LCNF.ppCode' code phase = Lean.Compiler.LCNF.runCompilerWithoutModifyingState phase do let __do_lift ← code.internalize Lean.Compiler.LCNF.ppCode __do_lift