- step: Lake.Name → Array Lean.IR.Decl → Lean.IR.LogEntry
- message: Lean.Format → Lean.IR.LogEntry
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Lean.IR.LogEntry.instToFormatLogEntry = { format := Lean.IR.LogEntry.fmt }
@[inline, reducible]
Equations
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[export lean_ir_log_to_string]
Equations
Instances For
@[inline, reducible]
Instances For
Equations
- Lean.IR.log entry = modify fun s => { env := s.env, log := Array.push s.log entry }
Instances For
Equations
- Lean.IR.tracePrefixOptionName = `trace.compiler.ir
Instances For
@[inline]
Equations
- Lean.IR.logDecls cls decl = Lean.IR.logDeclsAux (Lean.IR.tracePrefixOptionName ++ cls) cls decl
Instances For
@[inline]
Equations
Instances For
@[inline]
Instances For
@[inline]
Equations
- Lean.IR.modifyEnv f = modify fun s => { env := f s.env, log := s.log }
Instances For
@[inline, reducible]
Equations
Instances For
@[export lean_ir_find_env_decl]
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Lean.IR.findDecl n = do let __do_lift ← get pure (Lean.IR.findEnvDecl __do_lift.env n)
Instances For
Equations
- Lean.IR.containsDecl n = do let __do_lift ← Lean.IR.findDecl n pure (Option.isSome __do_lift)
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[export lean_ir_add_decl]
Equations
- Lean.IR.addDeclAux env decl = Lean.PersistentEnvExtension.addEntry Lean.IR.declMapExt (Lean.Environment.addExtraName env (Lean.IR.Decl.name decl)) decl
Instances For
Equations
Instances For
Equations
- Lean.IR.getEnv = do let s ← get pure s.env
Instances For
Equations
- Lean.IR.addDecl decl = Lean.IR.modifyEnv fun env => Lean.PersistentEnvExtension.addEntry Lean.IR.declMapExt (Lean.Environment.addExtraName env (Lean.IR.Decl.name decl)) decl
Instances For
Equations
- Lean.IR.addDecls decls = Array.forM Lean.IR.addDecl decls 0 (Array.size decls)
Instances For
Equations
- Lean.IR.findEnvDecl' env n decls = match Array.find? decls fun decl => Lean.IR.Decl.name decl == n with | some decl => some decl | none => Lean.IR.findEnvDecl env n
Instances For
Equations
- Lean.IR.findDecl' n decls = do let __do_lift ← get pure (Lean.IR.findEnvDecl' __do_lift.env n decls)
Instances For
Equations
- Lean.IR.containsDecl' n decls = if Array.any decls (fun decl => Lean.IR.Decl.name decl == n) 0 (Array.size decls) = true then pure true else Lean.IR.containsDecl n
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[export lean_decl_get_sorry_dep]
Equations
- Lean.IR.getSorryDep env declName = match Lean.IR.findEnvDecl env declName with | some (Lean.IR.Decl.fdecl f xs type body { sorryDep? := dep? }) => dep? | x => none