Copyright | (C) 2021 QBayLogic B.V. |
---|---|
License | BSD2 (see the file LICENSE) |
Maintainer | QBayLogic B.V. <devops@qbaylogic.com> |
Safe Haskell | None |
Language | Haskell2010 |
Random generation of type constructors.
Synopsis
- genTyConMap :: forall m. (Alternative m, MonadGen m) => Range Int -> CoreGenT m TyConMap
Documentation
genTyConMap :: forall m. (Alternative m, MonadGen m) => Range Int -> CoreGenT m TyConMap Source #
A TyConMap contains all the algebraic data types and type families that
are used in a program. This is typically the first thing that should be
generated, as calls to other generators like genKind
or genTypeFrom
will
likely want to use the type constructors added to the TyConMap.
TODO It would be nice if this also included types from clash-prelude
like
Signal and the sized number types. Maybe we want to hook into clash-ghc
to load type constructors and primitives from Clash.Prelude
.