@[instance_reducible]
instance Lean.Compiler.LCNF.instMonadScopeScopeTOfMonad {m : Type → Type} [Monad m] :
MonadScope (ScopeT m)
@[instance_reducible]
instance Lean.Compiler.LCNF.instMonadScopeOfMonadLiftOfMonadFunctor (m n : Type → Type) [MonadLift m n] [MonadFunctor m n] [MonadScope m] :
Instances For
@[inline]
def Lean.Compiler.LCNF.withParams {m : Type → Type} {pu : Purity} {α : Type} [MonadScope m] [Monad m] (ps : Array (Param pu)) (x : m α) :
m α
Instances For
@[inline]
def Lean.Compiler.LCNF.withFVar {m : Type → Type} {α : Type} [MonadScope m] [Monad m] (fvarId : FVarId) (x : m α) :
m α
Instances For
@[inline]
def Lean.Compiler.LCNF.withNewScope {m : Type → Type} {α : Type} [MonadScope m] [Monad m] (x : m α) :
m α