From e0718f203f2448ba2029e70d14aed075860b7fac Mon Sep 17 00:00:00 2001 From: nand Date: Tue, 4 Feb 2014 22:13:27 +0100 Subject: Add support for type/data families This adds support for type/data families with their respective instances, as well as closed type families and associated type/data families. Signed-off-by: Mateusz Kowalczyk --- html-test/ref/TypeFamilies.html | 674 +++++++++++++++++++++++++++++++++++----- 1 file changed, 595 insertions(+), 79 deletions(-) (limited to 'html-test/ref/TypeFamilies.html') diff --git a/html-test/ref/TypeFamilies.html b/html-test/ref/TypeFamilies.html index 27a4564c..bfafc3d0 100644 --- a/html-test/ref/TypeFamilies.html +++ b/html-test/ref/TypeFamilies.html @@ -17,11 +17,11 @@ window.onload = function () {pageLoad();setSynopsis("mini_TypeFamilies.html");}; >

TypeFamilies

Description

Doc for: module TypeFamilies

Synopsis

Documentation

data X

Doc for: data X

Constructors

X

Doc for: X

XX

Doc for: XX

XXX

Doc for: XXX

Instances

Assoc X

Doc for: instance Assoc X

Test X

Doc for: instance Test X

data AssocD X = AssocX 
type AssocT X = Foo X 
data Bat X

Doc for: data instance Bat X

type Foo X = Y

Doc for: type instance Foo X = Y

data Y

Doc for: data Y

Instances

Assoc Y

Doc for: instance Assoc Y

Test Y

Doc for: instance Test Y

data AssocD Y = AssocY 
type AssocT Y = Bat Y 
data Bat Y

Doc for: data instance Bat Y

type Foo Y = X

Doc for: type instance Foo Y = X

class Test a

Doc for: class Test a

Instances

Test Y

Doc for: instance Test Y

Test X

Doc for: instance Test X

type family G Foo a

Doc for: type family Foo a

Instances

type Foo Y = X

Doc for: type instance Foo Y = X

type Foo X = Y

Doc for: type instance Foo X = Y

data family Bat a :: *

Type family G

Doc for: data family Bat a

Instances

data Bat Y

Doc for: data instance Bat Y

data Bat X

Doc for: data instance Bat X

class A a where

Assoc a

A class with an associated type

Doc for: class Assoc a

data B a :: * -> *

AssocD a :: *

An associated type

Doc for: data AssocD a

Methods

f :: B a Int

type AssocT a :: *

A method

Doc for: type AssocT a

Instances

A IntAssoc Y

Doc for: instance Assoc Y

Assoc X

Doc for: instance Assoc X

 

type family F a

Bar b

Doc for family

Doc for: type family Bar b

Equations

Bar X = X 
Bar y = Y