Equations
- One or more equations did not get rendered due to their size.
- (Lean.IR.LogEntry.message msg).fmt = msg
Instances For
Equations
- Lean.IR.LogEntry.instToFormat = { format := Lean.IR.LogEntry.fmt }
@[reducible, inline]
Equations
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[reducible, inline]
Equations
Instances For
Equations
- Lean.IR.log entry = Lean.addTrace `Compiler.IR (Lean.toMessageData "" ++ Lean.toMessageData entry ++ Lean.toMessageData "")
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
@[reducible, inline]
Equations
Instances For
Whether a declaration should be exported for interpretation.
Equations
- Lean.IR.isDeclMeta env (n.str "_boxed") = if (!env.header.isModule) = true then true else have inferFor := n; (Lean.IR.declMetaExt✝.getState env).snd.contains inferFor
- Lean.IR.isDeclMeta env declName = if (!env.header.isModule) = true then true else have inferFor := declName; (Lean.IR.declMetaExt✝.getState env).snd.contains inferFor
Instances For
Marks a declaration to be exported for interpretation.
Equations
- One or more equations did not get rendered due to their size.
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 ← Lean.getEnv pure (Lean.IR.findEnvDecl __do_lift n)
Instances For
Equations
- Lean.IR.containsDecl n = do let __do_lift ← Lean.IR.findDecl n pure __do_lift.isSome
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Lean.IR.findLocalDecl n = do let __do_lift ← Lean.getEnv pure (Lean.PersistentHashMap.find? (Lean.IR.declMapExt.getState __do_lift) n)
Instances For
Returns the list of IR declarations in declaration order.
Equations
Instances For
Equations
- Lean.IR.addDecl decl = Lean.modifyEnv fun (x : Lean.Environment) => Lean.PersistentEnvExtension.addEntry Lean.IR.declMapExt x decl
Instances For
Equations
- Lean.IR.addDecls decls = Array.forM Lean.IR.addDecl decls
Instances For
Equations
- Lean.IR.findEnvDecl' env n decls = match Array.find? (fun (decl : Lean.IR.Decl) => decl.name == n) decls with | some decl => some decl | none => Lean.IR.findEnvDecl env n
Instances For
Equations
- Lean.IR.findDecl' n decls = do let __do_lift ← Lean.getEnv pure (Lean.IR.findEnvDecl' __do_lift n decls)
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