Module

Presto.Core.Types.Language.Interaction

Package
purescript-presto
Repository
juspay/purescript-presto

#Interact Source

class (Encode a, Decode b) <= Interact err a b | a -> b, b -> a where

Represents a relation between types a (input type) and b (output type).

Members

#Interaction Source

type Interaction s = Free InteractionF s

Free monadic Interaction type. Denotes a request-response interaction.

#interactConv Source

interactConv :: forall err s b a. Interact err a b => a -> (b -> Either err s) -> Interaction (Either err s)

#defaultInteract Source

defaultInteract :: forall b a. Encode a => Decode b => a -> Interaction (Either Error b)

#InteractionF Source

data InteractionF next

Constructors

#ForeignIn Source

newtype ForeignIn

Constructors

#ForeignOut Source

newtype ForeignOut

Constructors