clash-lib-1.2.5: CAES Language for Synchronous Hardware - As a Library
Copyright(C) 2012-2016 University of Twente
2017 Google Inc.
LicenseBSD2 (see the file LICENSE)
MaintainerChristiaan Baaij <christiaan.baaij@gmail.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