model-0.2.4: Derive a model of a data type using Generics

Safe HaskellSafe
LanguageHaskell2010

Type.ANat

Description

Nats with * kind

Synopsis

Documentation

data ANat n Source #

Envelope to get Nats with * kind

Instances

(KnownNat t, Typeable Nat t) => Model (ANat t) Source #

TypeLits are used to represent data type's parameters.

Methods

envType :: Proxy * (ANat t) -> State Env HType Source #

anatVal :: KnownNat n => ANat n -> Integer Source #

Convert a Nat to the corresponding Integer

>>> anatVal (undefined::A5)
5

type A0 = ANat 0 Source #

type A1 = ANat 1 Source #

type A2 = ANat 2 Source #

type A3 = ANat 3 Source #

type A4 = ANat 4 Source #

type A5 = ANat 5 Source #

type A6 = ANat 6 Source #

type A7 = ANat 7 Source #

type A8 = ANat 8 Source #

type A9 = ANat 9 Source #