Agda-2.6.2.2.20221128: A dependently typed functional programming language and proof assistant
Safe HaskellSafe-Inferred
LanguageHaskell2010

Agda.Compiler.MAlonzo.Strict

Description

Strictification of Haskell code

Synopsis

Documentation

class MakeStrict a where Source #

The function makeStrict makes every function argument, case and generator pattern, and LocalBind binding strict (except for those patterns that are marked as irrefutable, and anything in a FakeDecl or FakeExp). Note that only the outermost patterns are made strict.

Methods

makeStrict :: a -> a Source #

Instances

Instances details
MakeStrict Alt Source # 
Instance details

Defined in Agda.Compiler.MAlonzo.Strict

Methods

makeStrict :: Alt -> Alt Source #

MakeStrict Binds Source # 
Instance details

Defined in Agda.Compiler.MAlonzo.Strict

MakeStrict Decl Source # 
Instance details

Defined in Agda.Compiler.MAlonzo.Strict

Methods

makeStrict :: Decl -> Decl Source #

MakeStrict Exp Source # 
Instance details

Defined in Agda.Compiler.MAlonzo.Strict

Methods

makeStrict :: Exp -> Exp Source #

MakeStrict GuardedRhs Source # 
Instance details

Defined in Agda.Compiler.MAlonzo.Strict

MakeStrict Match Source # 
Instance details

Defined in Agda.Compiler.MAlonzo.Strict

MakeStrict Module Source # 
Instance details

Defined in Agda.Compiler.MAlonzo.Strict

MakeStrict Pat Source # 
Instance details

Defined in Agda.Compiler.MAlonzo.Strict

Methods

makeStrict :: Pat -> Pat Source #

MakeStrict Rhs Source # 
Instance details

Defined in Agda.Compiler.MAlonzo.Strict

Methods

makeStrict :: Rhs -> Rhs Source #

MakeStrict Stmt Source # 
Instance details

Defined in Agda.Compiler.MAlonzo.Strict

Methods

makeStrict :: Stmt -> Stmt Source #

MakeStrict a => MakeStrict (Maybe a) Source # 
Instance details

Defined in Agda.Compiler.MAlonzo.Strict

Methods

makeStrict :: Maybe a -> Maybe a Source #

MakeStrict a => MakeStrict [a] Source # 
Instance details

Defined in Agda.Compiler.MAlonzo.Strict

Methods

makeStrict :: [a] -> [a] Source #