Documentation

Init.Control.StateRef

def StateRefT' (ω : Type) (σ : Type) (m : TypeType) (α : Type) :
Type
Equations
@[inline]
def StateRefT'.run {ω : Type} {σ : Type} {m : TypeType} [inst : Monad m] [inst : MonadLiftT (ST ω) m] {α : Type} (x : StateRefT' ω σ m α) (s : σ) :
m (α × σ)
Equations
@[inline]
def StateRefT'.run' {ω : Type} {σ : Type} {m : TypeType} [inst : Monad m] [inst : MonadLiftT (ST ω) m] {α : Type} (x : StateRefT' ω σ m α) (s : σ) :
m α
Equations
@[inline]
def StateRefT'.lift {ω : Type} {σ : Type} {m : TypeType} {α : Type} (x : m α) :
StateRefT' ω σ m α
Equations
instance StateRefT'.instMonadStateRefT' {ω : Type} {σ : Type} {m : TypeType} [inst : Monad m] :
Monad (StateRefT' ω σ m)
Equations
instance StateRefT'.instMonadLiftStateRefT' {ω : Type} {σ : Type} {m : TypeType} :
MonadLift m (StateRefT' ω σ m)
Equations
  • StateRefT'.instMonadLiftStateRefT' = { monadLift := fun {α} => StateRefT'.lift }
instance StateRefT'.instMonadFunctorStateRefT' {ω : Type} (σ : Type) (m : TypeType) [inst : Monad m] :
Equations
instance StateRefT'.instAlternativeStateRefT' {ω : Type} {σ : Type} {m : TypeType} [inst : Alternative m] [inst : Monad m] :
Equations
@[inline]
def StateRefT'.get {ω : Type} {σ : Type} {m : TypeType} [inst : Monad m] [inst : MonadLiftT (ST ω) m] :
StateRefT' ω σ m σ
Equations
@[inline]
def StateRefT'.set {ω : Type} {σ : Type} {m : TypeType} [inst : Monad m] [inst : MonadLiftT (ST ω) m] (s : σ) :
Equations
@[inline]
def StateRefT'.modifyGet {ω : Type} {σ : Type} {m : TypeType} {α : Type} [inst : Monad m] [inst : MonadLiftT (ST ω) m] (f : σα × σ) :
StateRefT' ω σ m α
Equations
instance StateRefT'.instMonadStateOfStateRefT' {ω : Type} {σ : Type} {m : TypeType} [inst : MonadLiftT (ST ω) m] [inst : Monad m] :
Equations
  • StateRefT'.instMonadStateOfStateRefT' = { get := StateRefT'.get, set := StateRefT'.set, modifyGet := fun {α} => StateRefT'.modifyGet }
instance StateRefT'.instMonadExceptOfStateRefT' {ω : Type} {σ : Type} {m : TypeType} (ε : Type u_1) [inst : MonadExceptOf ε m] :
Equations
instance instMonadControlStateRefT' (ω : Type) (σ : Type) (m : TypeType) :
Equations
instance instMonadFinallyStateRefT' {m : TypeType} {ω : Type} {σ : Type} [inst : MonadFinally m] [inst : Monad m] :
Equations