Module

Data.Generic.Rep

Package
purescript-prelude
Repository
purescript/purescript-prelude

#Generic Source

class Generic a rep | a -> rep where

The Generic class asserts the existence of a type function from types to their representations using the type constructors defined in this module.

Members

  • to :: rep -> a
  • from :: a -> rep

#repOf Source

repOf :: forall a rep. Generic a rep => Proxy a -> Proxy rep

#NoConstructors Source

newtype NoConstructors

A representation for types with no constructors.

#NoArguments Source

data NoArguments

A representation for constructors with no arguments.

Constructors

Instances

#Sum Source

data Sum a b

A representation for types with multiple constructors.

Constructors

Instances

#Product Source

data Product a b

A representation for constructors with multiple fields.

Constructors

Instances

#Constructor Source

newtype Constructor :: Symbol -> Type -> Typenewtype Constructor (name :: Symbol) a

A representation for constructors which includes the data constructor name as a type-level string.

Constructors

Instances

#Argument Source

newtype Argument a

A representation for an argument in a data constructor.

Constructors

Instances