clash-lib-1.6.4: Clash: a functional hardware description language - As a library
Copyright(C) 2012-2016 University of Twente
2017 Google Inc.
2022 QBayLogic B.V.
LicenseBSD2 (see the file LICENSE)
MaintainerQBayLogic B.V. <devops@qbaylogic.com>
Safe HaskellNone
LanguageHaskell2010

Clash.Normalize.Types

Description

Types used in Normalize modules

Synopsis

Documentation

data NormalizeState Source #

State of the NormalizeMonad

Constructors

NormalizeState 

Fields

type NormalizeMonad = State NormalizeState Source #

State monad that stores specialisation and inlining information

type NormalizeSession = RewriteMonad NormalizeState Source #

RewriteSession with extra Normalisation information

type NormRewrite = Rewrite NormalizeState Source #

A Transform action in the context of the RewriteMonad and NormalizeMonad

data TermClassification Source #

Description of a Term in terms of the type "components" the Term has.

Is used as a performance/size metric.

Constructors

TermClassification 

Fields

Instances

Instances details
Show TermClassification Source # 
Instance details

Defined in Clash.Normalize.Types