- var (id : VarId) : FVarClassification
- joinPoint (id : JoinPointId) : FVarClassification
- erased : FVarClassification
Instances For
- fvars : Std.HashMap FVarId FVarClassification
- nextId : Nat
Instances For
@[reducible, inline]
Instances For
Equations
- x.run = StateRefT'.run' x { }
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Lean.IR.ToIR.bindVarToVarId fvarId varId = modify fun (s : Lean.IR.ToIR.BuilderState) => { fvars := s.fvars.insertIfNew fvarId (Lean.IR.ToIR.FVarClassification.var varId), nextId := s.nextId }
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Lean.IR.ToIR.bindErased fvarId = modify fun (s : Lean.IR.ToIR.BuilderState) => { fvars := s.fvars.insertIfNew fvarId Lean.IR.ToIR.FVarClassification.erased, nextId := s.nextId }
Instances For
Equations
- Lean.IR.ToIR.findDecl n = do let __do_lift ← Lean.getEnv pure (Lean.IR.findEnvDecl __do_lift n)
Instances For
Equations
- Lean.IR.ToIR.addDecl d = Lean.modifyEnv fun (env : Lean.Environment) => Lean.PersistentEnvExtension.addEntry Lean.IR.declMapExt env d
Instances For
Equations
- Lean.IR.ToIR.lowerLitValue (Lean.Compiler.LCNF.LitValue.nat n) = (Lean.IR.LitVal.num n, if n < UInt32.size then Lean.IR.IRType.tagged else Lean.IR.IRType.tobject)
- Lean.IR.ToIR.lowerLitValue (Lean.Compiler.LCNF.LitValue.str s) = (Lean.IR.LitVal.str s, Lean.IR.IRType.object)
- Lean.IR.ToIR.lowerLitValue (Lean.Compiler.LCNF.LitValue.uint8 v_2) = (Lean.IR.LitVal.num v_2.toNat, Lean.IR.IRType.uint8)
- Lean.IR.ToIR.lowerLitValue (Lean.Compiler.LCNF.LitValue.uint16 v_2) = (Lean.IR.LitVal.num v_2.toNat, Lean.IR.IRType.uint16)
- Lean.IR.ToIR.lowerLitValue (Lean.Compiler.LCNF.LitValue.uint32 v_2) = (Lean.IR.LitVal.num v_2.toNat, Lean.IR.IRType.uint32)
- Lean.IR.ToIR.lowerLitValue (Lean.Compiler.LCNF.LitValue.uint64 v_2) = (Lean.IR.LitVal.num v_2.toNat, Lean.IR.IRType.uint64)
- Lean.IR.ToIR.lowerLitValue (Lean.Compiler.LCNF.LitValue.usize v_2) = (Lean.IR.LitVal.num v_2.toNat, Lean.IR.IRType.usize)
Instances For
Equations
- One or more equations did not get rendered due to their size.
- Lean.IR.ToIR.lowerArg Lean.Compiler.LCNF.Arg.erased = pure Lean.IR.Arg.erased
- Lean.IR.ToIR.lowerArg (Lean.Compiler.LCNF.Arg.type expr) = pure Lean.IR.Arg.erased
Instances For
- expr (e : Expr) : TranslatedProj
- erased : TranslatedProj
Instances For
Equations
- Lean.IR.ToIR.lowerProj base ctorInfo (Lean.IR.CtorFieldInfo.object i irType) = (Lean.IR.ToIR.TranslatedProj.expr (Lean.IR.Expr.proj i base), irType)
- Lean.IR.ToIR.lowerProj base ctorInfo (Lean.IR.CtorFieldInfo.usize i) = (Lean.IR.ToIR.TranslatedProj.expr (Lean.IR.Expr.uproj i base), Lean.IR.IRType.usize)
- Lean.IR.ToIR.lowerProj base ctorInfo (Lean.IR.CtorFieldInfo.scalar sz offset irType) = (Lean.IR.ToIR.TranslatedProj.expr (Lean.IR.Expr.sproj (ctorInfo.size + ctorInfo.usize) offset base), irType)
- Lean.IR.ToIR.lowerProj base ctorInfo Lean.IR.CtorFieldInfo.erased = (Lean.IR.ToIR.TranslatedProj.erased, Lean.IR.IRType.erased)
Instances For
Equations
- Lean.IR.ToIR.lowerParam p = do let x ← Lean.IR.ToIR.bindVar p.fvarId let ty ← liftM (Lean.IR.toIRType p.type) pure { x := x, borrow := p.borrow, ty := ty }
Instances For
Equations
- Lean.IR.ToIR.lowerResultType type arity = liftM (Lean.IR.toIRType (Lean.IR.ToIR.lowerResultType.resultTypeForArity✝ type arity))
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.