Idris2Doc : Data.Union

Data.Union

(source)

Definitions

dataHandler : List (Type->Type) -> (Type->Type) ->Type
  A list of effect handlers handling effects of types `fs`
wrapping results in type `m`.

Totality: total
Visibility: public export
Constructors:
Nil : Handler [] m
(::) : (fx->mx) ->Handlerfsm->Handler (f::fs) m
dataUnion : List (Type->Type) ->Type->Type
  Sum type holding a value of type `t` wrapped in one of the
effect types listed in `fs`.

Totality: total
Visibility: public export
Constructor: 
U : Hasffs->ft->Unionfst

Hints:
HasIOfs=>HasIO (Free (Unionfs))
Uninhabited (Union [] t)
inj : Hasffs=>ft->Unionfst
  Inject an effectful computation into a `Union`.

Totality: total
Visibility: public export
prj : Hasffs=>Unionfst->Maybe (ft)
  Tries to extract an effect from a `Union`.

Totality: total
Visibility: public export
prj1 : Union [f] t->ft
  Extracts the last effect from a unary sum.

Totality: total
Visibility: public export
handleAll : Handlerfsm->Unionfst->mt
  Handles all remaining effects via the given
(heterogeneous) list of event handlers.

Totality: total
Visibility: public export
weaken1 : Unionfsa->Union (f::fs) a
  Prepend a new effect to an existing `Union` value.

Totality: total
Visibility: public export
weaken : Subsetfsfs'=>Unionfsa->Unionfs'a
Totality: total
Visibility: public export
decomp : {autoprf : Hasffs} ->Unionfsa->Either (Union (fs-f) a) (fa)
  Handle on of the effects in a `Union`. Unlike in other
effect libraries, it's not necessary that the effect
is the first in the list. To improve type inference,
the return type is calculated from the `prf` value.

Totality: total
Visibility: public export
handle : {autoprf : Hasffs} -> (fa->res) ->Unionfsa->Either (Union (fs-f) a) res
  Handle one of the effects in a `Union`. Unlike in other
effect libraries, it's not necessary that the effect
is the first in the list. To improve type inference,
the return type is calculated from the `prf` value.

Totality: total
Visibility: public export