Module

Erl.Untagged.Union

Package
erl-untagged-union
Repository
id3as/purescript-erl-untagged-union

#Choices Source

data Choices

#Item Source

data Item :: Type -> Choices -> Choices

Instances

#Union Source

data Union :: Choices -> Typedata Union choices

Instances

#type (|+|) Source

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

#Apply Source

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

#type (|$|) Source

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

#inj Source

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

#prj Source

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

#on Source

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_ Source

case_ :: forall x. Union Nil -> x

#term_ Source

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

#ChoicesWithType Source

#ItemWithType Source

data ItemWithType :: Type -> RTTerm -> ChoicesWithType -> ChoicesWithType

Instances

#ValidChoices Source

class ValidChoices :: Choices -> Constraintclass ValidChoices choices 

Instances

#IsSupportedMessage Source

class IsSupportedMessage msg1 msg2 

Instances

#IsInChoices Source

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

Instances

#RuntimeType Source

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

Instances

#GatherTypes Source

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

Instances

#AddRuntimeType Source

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

Instances

#IsAmbiguous Source

class IsAmbiguous :: ChoicesWithType -> Constraintclass IsAmbiguous choicesWithType 

Instances

#IsAmbiguous' Source

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

Instances

#IsAmbiguousType Source

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

Instances

#RuntimeTypeMatch Source

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

Members

Instances

#HasNoConversions Source

#HasNoConversionsRT Source

class HasNoConversionsRT :: RTTerm -> Constraintclass HasNoConversionsRT term 

Instances

#WasMatch Source

#MaybeFail Source

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

Instances

#CanShow Source

class CanShow :: Choices -> Constraintclass CanShow choices  where

Members

Instances

#CanEq Source

class CanEq :: Choices -> Constraintclass CanEq choices  where

Members

Instances

#RTTerm Source

data RTTerm

#RTOption Source

data RTOption :: RTTerm -> RTTerm -> RTTerm

Instances

#RTLiteralAtomConvert Source

data RTLiteralAtomConvert :: Symbol -> Symbol -> RTTerm

Instances

#RTTuple1 Source

data RTTuple1 :: RTTerm -> RTTerm

Instances

#RTTuple2 Source

data RTTuple2 :: RTTerm -> RTTerm -> RTTerm

Instances

#RTTuple3 Source

data RTTuple3 :: RTTerm -> RTTerm -> RTTerm -> RTTerm

Instances

#RTTuple4 Source

data RTTuple4 :: RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm

Instances

#RTTuple5 Source

data RTTuple5 :: RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm

Instances

#RTTuple6 Source

data RTTuple6 :: RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm

Instances

#RTTuple7 Source

data RTTuple7 :: RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm

Instances

#RTTuple8 Source

data RTTuple8 :: RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm

Instances

#RTTuple9 Source

data RTTuple9 :: RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm

Instances

#RTTuple10 Source

data RTTuple10 :: RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm -> RTTerm

Instances