zm-0.2.2: Language independent, reproducible, absolute types

Safe HaskellNone
LanguageHaskell2010

ZM.Abs

Description

Derive absolute/canonical data type models

Synopsis

Documentation

absType :: Model a => Proxy a -> AbsType Source #

Derive an absolute type for a type, or throw an error if derivation is impossible

absTypeModel :: Model a => Proxy a -> AbsTypeModel Source #

Derive an absolute type model for a type, or throw an error if derivation is impossible

absTypeModelMaybe :: Model a => Proxy a -> Either String AbsTypeModel Source #

Derive an absolute type model for a type, provided that:

  • is an instance of Model
  • no data type referred directly or indirectly by the type:

    • has higher kind variables
    • is mutually recursive with other data types