Module

Erl.Untagged.Union

#Choices

data Choices

#Item

data Item :: Type -> Choices -> Choicesdata Item t0 t1

Instances

#Union

data Union :: Choices -> Typedata Union choices

Instances

#type (|+|)

Operator alias for Erl.Untagged.Union.Item (right-associative / precedence 7)

#Apply

type Apply :: forall k1 k2. (k1 -> k2) -> k1 -> k2type Apply a b = a b

#type (|$|)

Operator alias for Erl.Untagged.Union.Apply (right-associative / precedence 1)

#inj

inj :: forall a choices rem. IsInChoices a choices rem => ValidChoices choices => a -> Union choices

#prj

prj :: forall a choices d rem. IsInChoices a choices rem => RuntimeType a d => RuntimeTypeMatch (Item a Nil) d => Union choices -> Maybe a

#on

on :: forall a x d choices rem. IsInChoices a choices rem => RuntimeType a d => RuntimeTypeMatch (Item a Nil) d => (a -> x) -> (Union rem -> x) -> Union choices -> x

#case_

case_ :: forall x. Union Nil -> x

#term_

term_ :: forall x. (Foreign -> x) -> Union Term -> x

#ChoicesWithType

#ItemWithType

data ItemWithType :: Type -> RTTerm -> ChoicesWithType -> ChoicesWithTypedata ItemWithType t0 t1 t2

Instances

#ValidChoices

class ValidChoices :: Choices -> Constraintclass ValidChoices choices 

Instances

#ReceivesMessage

class ReceivesMessage :: forall k. k -> Type -> Constraintclass ReceivesMessage a msg | a -> msg

Instances

#CanReceiveMessage

class CanReceiveMessage :: Type -> (Type -> Type) -> Constraintclass CanReceiveMessage msg m 

Instances

#IsSupportedMessage

class IsSupportedMessage msg canReceive 

Instances

#IsInChoices

class IsInChoices :: Type -> Choices -> Choices -> Constraintclass IsInChoices item choices rem | item choices -> rem

Instances

#RuntimeType

class RuntimeType :: Type -> RTTerm -> Constraintclass RuntimeType a t | a -> t

Instances

#GatherTypes

class GatherTypes :: Choices -> ChoicesWithType -> Constraintclass GatherTypes choices choicesWithType | choices -> choicesWithType

Instances

#AddRuntimeType

class AddRuntimeType :: Type -> RTTerm -> ChoicesWithType -> ChoicesWithType -> Constraintclass AddRuntimeType item rtType initial final | item rtType initial -> final

Instances

#IsAmbiguous

class IsAmbiguous :: ChoicesWithType -> Constraintclass IsAmbiguous choicesWithType 

Instances

#IsAmbiguous'

class IsAmbiguous' :: Type -> RTTerm -> ChoicesWithType -> Constraintclass IsAmbiguous' toCheck toCheckType types 

Instances

#IsAmbiguousType

class IsAmbiguousType :: RTTerm -> RTTerm -> Boolean -> Constraintclass IsAmbiguousType lhs rhs result | lhs rhs -> result

Instances

#RuntimeTypeMatch

class RuntimeTypeMatch :: Choices -> RTTerm -> Constraintclass RuntimeTypeMatch choices d  where

Members

Instances

#HasNoConversions

#HasNoConversionsRT

class HasNoConversionsRT :: RTTerm -> Constraintclass HasNoConversionsRT term 

Instances

#WasMatch

#MaybeFail

class MaybeFail :: Boolean -> Type -> RTTerm -> Type -> RTTerm -> Constraintclass MaybeFail result toCheck toCheckType compare compareType 

Instances

#CanShow

class CanShow :: Choices -> Constraintclass CanShow choices  where

Members

Instances

#CanEq

class CanEq :: Choices -> Constraintclass CanEq choices  where

Members

Instances

#RTTerm

data RTTerm

#RTOption

data RTOption :: RTTerm -> RTTerm -> RTTermdata RTOption t0 t1

Instances

#RTLiteralAtomConvert

data RTLiteralAtomConvert :: Symbol -> Symbol -> RTTermdata RTLiteralAtomConvert t0 t1

Instances

#RTTuple1

data RTTuple1 :: RTTerm -> RTTermdata RTTuple1 t0

Instances

#RTTuple2

data RTTuple2 :: RTTerm -> RTTerm -> RTTermdata RTTuple2 t0 t1

Instances

#RTTuple3

data RTTuple3 :: RTTerm -> RTTerm -> RTTerm -> RTTermdata RTTuple3 t0 t1 t2

Instances

#RTTuple4

data RTTuple4 :: RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTermdata RTTuple4 t0 t1 t2 t3

Instances

#RTTuple5

data RTTuple5 :: RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTermdata RTTuple5 t0 t1 t2 t3 t4

Instances

#RTTuple6

data RTTuple6 :: RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTermdata RTTuple6 t0 t1 t2 t3 t4 t5

Instances

#RTTuple7

data RTTuple7 :: RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTermdata RTTuple7 t0 t1 t2 t3 t4 t5 t6

Instances

#RTTuple8

data RTTuple8 :: RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTermdata RTTuple8 t0 t1 t2 t3 t4 t5 t6 t7

Instances

#RTTuple9

data RTTuple9 :: RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTermdata RTTuple9 t0 t1 t2 t3 t4 t5 t6 t7 t8

Instances

#RTTuple10

data RTTuple10 :: RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTermdata RTTuple10 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9

Instances

Modules