type-combinators-0.2.4.3: A collection of data types for type-level programming

CopyrightCopyright (C) 2015 Kyle Carter
LicenseBSD3
MaintainerKyle Carter <kylcarte@indiana.edu>
Stabilityexperimental
PortabilityRankNTypes
Safe HaskellNone
LanguageHaskell2010

Type.Family.Constraint

Description

Reexports the kind Constraint, as well as some conveniences for working with Constraints.

Synopsis

Documentation

type ØC = (() :: Constraint) Source #

The empty Constraint.

class IffC b t f => Iff b t f Source #

Associated Types

type IffC b t f :: Constraint Source #

Instances

f => Iff False t f Source # 

Associated Types

type IffC (False :: Bool) (t :: Constraint) (f :: Constraint) :: Constraint Source #

t => Iff True t f Source # 

Associated Types

type IffC (True :: Bool) (t :: Constraint) (f :: Constraint) :: Constraint Source #

class d (c a) => Comp d c a Source #

Instances

d (c a) => Comp k l d c a Source # 

data Constraint :: * #

The kind of constraints, like Show a

Instances

Category Constraint (:-) # 

Methods

id :: cat a a #

(.) :: cat b c -> cat a b -> cat a c #

c => Known Constraint Wit c Source #

If the constraint c holds, there is a canonical construction for a term of type Wit c, viz. the constructor Wit.

Associated Types

type KnownC Wit (c :: Wit -> *) (a :: Wit) :: Constraint Source #

Methods

known :: c a Source #

type KnownC Constraint Wit c Source # 
type KnownC Constraint Wit c = c