@[instance 100]
instance
Lake.instAlternativeOfMonadOfMonadExceptOfPUnit_lake
{m : Type u_1 → Type u_2}
[Monad m]
[MonadExceptOf PUnit m]
:
@[instance 10000]
instance
Lake.instMonadLiftTOfMonadLift_lake
{α : Type u_1 → Type u_2}
{β : Type u_1 → Type u_3}
[MonadLift α β]
:
MonadLiftT α β
Ensure direct lifts are preferred over indirect ones.
@[instance 100]
@[instance 100]
instance
Lake.instMonadLiftTExceptOfPureOfMonadExceptOf_lake
{m : Type u_1 → Type u_2}
{ε : Type u_3}
[Pure m]
[MonadExceptOf ε m]
:
MonadLiftT (Except ε) m
@[instance 100]
instance
Lake.instMonadLiftTReaderTOfBindOfMonadReaderOf_lake
{m : Type u_1 → Type u_2}
{ρ : Type u_1}
{n : Type u_1 → Type u_3}
[Bind m]
[MonadReaderOf ρ m]
[MonadLiftT n m]
:
MonadLiftT (ReaderT ρ n) m
@[instance 100]
instance
Lake.instMonadLiftTStateTOfMonadOfMonadStateOf_lake
{m : Type u_1 → Type u_2}
{σ : Type u_1}
{n : Type u_1 → Type u_3}
[Monad m]
[MonadStateOf σ m]
[MonadLiftT n m]
:
MonadLiftT (StateT σ n) m
Equations
- One or more equations did not get rendered due to their size.
@[instance 100]
instance
Lake.instMonadLiftTOptionTOfMonadOfAlternative_lake
{m : Type u_1 → Type u_2}
{n : Type u_1 → Type u_3}
[Monad m]
[Alternative m]
[MonadLiftT n m]
:
MonadLiftT (OptionT n) m
@[instance 100]
instance
Lake.instMonadLiftTExceptTOfMonadOfMonadExceptOf_lake
{m : Type u_1 → Type u_2}
{ε : Type u_1}
{n : Type u_1 → Type u_3}
[Monad m]
[MonadExceptOf ε m]
[MonadLiftT n m]
:
MonadLiftT (ExceptT ε n) m
@[instance 100]
instance
Lake.instMonadLiftTEIOOfMonadOfMonadExceptOfOfBaseIO_lake
{m : Type → Type u_1}
{ε : Type}
[Monad m]
[MonadExceptOf ε m]
[MonadLiftT BaseIO m]
:
MonadLiftT (EIO ε) m