Safe Haskell | None |
---|---|
Language | GHC2021 |
Data.Effect.Chronicle
Documentation
data ChronicleF c a where Source #
Constructors
Dictate :: forall c. c -> ChronicleF c () | |
Confess :: forall c a. c -> ChronicleF c a |
data ChronicleH c (f :: Type -> Type) a where Source #
Constructors
Memento :: forall (f :: Type -> Type) a1 c. f a1 -> ChronicleH c f (Either c a1) | |
Absolve :: forall a (f :: Type -> Type) c. a -> f a -> ChronicleH c f a | |
Condemn :: forall (f :: Type -> Type) a c. f a -> ChronicleH c f a |
Instances
() => HFunctor (ChronicleH c) Source # | |
Defined in Data.Effect.Chronicle Methods hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> ChronicleH c f :-> ChronicleH c g # |
type LChronicleF c = LiftFOE (ChronicleF c) Source #
pattern LConfess :: forall a c f a1. () => forall. (a ~ a1, ()) => c -> LiftFOE (ChronicleF c) f a Source #
dictate :: SendFOE (ChronicleF c) f => c -> f () Source #
dictate'' :: forall {k} (key :: k) c f. SendFOEBy key (ChronicleF c) f => c -> f () Source #
confess :: forall c a f. SendFOE (ChronicleF c) f => c -> f a Source #
confess'' :: forall {k} (key :: k) c a f. SendFOEBy key (ChronicleF c) f => c -> f a Source #
memento' :: forall {k} (tag :: k) a c f. SendHOE (TagH (ChronicleH c) tag) f => f a -> f (Either c a) Source #
memento'' :: forall {k} (key :: k) a c f. SendHOEBy key (ChronicleH c) f => f a -> f (Either c a) Source #
absolve :: forall a c f. SendHOE (ChronicleH c) f => a -> f a -> f a Source #
absolve' :: forall {k} (tag :: k) a c f. SendHOE (TagH (ChronicleH c) tag) f => a -> f a -> f a Source #
absolve'' :: forall {k} (key :: k) a c f. SendHOEBy key (ChronicleH c) f => a -> f a -> f a Source #
condemn :: forall a c f. SendHOE (ChronicleH c) f => f a -> f a Source #
condemn'' :: forall {k} (key :: k) a c f. SendHOEBy key (ChronicleH c) f => f a -> f a Source #
chronicle :: (ChronicleF c <: f, Applicative f) => These c a -> f a Source #