purescript-0.2.11: PureScript Programming Language Compiler

Safe HaskellNone

Language.PureScript.TypeChecker.Monad

Description

 

Documentation

data AnyUnifiable whereSource

Constructors

AnyUnifiable :: forall t. Unifiable t => t -> AnyUnifiable 

guardWith :: MonadError e m => e -> Bool -> m ()Source

rethrow :: MonadError e m => (e -> e) -> m a -> m aSource

newtype Substitution Source

Constructors

Substitution 

Fields

runSubstitution :: forall t. Unifiable t => Unknown t -> t
 

Instances

replace :: Unifiable t => Unknown t -> t -> Subst ()Source

class (Typeable t, Data t, Show t) => Unifiable t whereSource

Methods

unknown :: Unknown t -> tSource

(~~) :: t -> t -> Subst ()Source

isUnknown :: t -> Maybe (Unknown t)Source

apply :: Substitution -> t -> tSource

unknowns :: t -> [Int]Source