clash-lib-1.8.4: Clash: a functional hardware description language - As a library

Copyright | (C) 2012-2016 University of Twente 2016-2017 Myrtle Software Ltd 2017-2018 Google Inc. 2021 QBayLogic B.V.
License | BSD2 (see the file LICENSE)
Maintainer | QBayLogic B.V. <devops@qbaylogic.com>
Safe Haskell | None
Language | Haskell2010

Clash.Normalize.Transformations.EtaExpand

Description

The eta-expansion transformation.

Synopsis

- etaExpandSyn :: HasCallStack => NormRewrite
- etaExpansionTL :: HasCallStack => NormRewrite

# Documentation

etaExpandSyn :: HasCallStack => NormRewrite Source #

Eta-expand functions with a Synthesize annotation, needed to allow such functions to appear as arguments to higher-order primitives.

etaExpansionTL :: HasCallStack => NormRewrite Source #

Eta-expand top-level lambda's (DON'T use in a traversal!)