| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
UntypedPlutusCore.Transform.Optimizer
Documentation
newtype OptimizerT name uni fun ann m a Source #
Constructors
| OptimizerT | |
Fields
| |
Instances
| MonadTrans (OptimizerT name uni fun ann) Source # | |
Defined in UntypedPlutusCore.Transform.Optimizer Methods lift ∷ Monad m ⇒ m a → OptimizerT name uni fun ann m a Source # | |
| Monad m ⇒ Applicative (OptimizerT name uni fun ann m) Source # | |
Defined in UntypedPlutusCore.Transform.Optimizer Methods pure ∷ a → OptimizerT name uni fun ann m a Source # (<*>) ∷ OptimizerT name uni fun ann m (a → b) → OptimizerT name uni fun ann m a → OptimizerT name uni fun ann m b Source # liftA2 ∷ (a → b → c) → OptimizerT name uni fun ann m a → OptimizerT name uni fun ann m b → OptimizerT name uni fun ann m c Source # (*>) ∷ OptimizerT name uni fun ann m a → OptimizerT name uni fun ann m b → OptimizerT name uni fun ann m b Source # (<*) ∷ OptimizerT name uni fun ann m a → OptimizerT name uni fun ann m b → OptimizerT name uni fun ann m a Source # | |
| Functor m ⇒ Functor (OptimizerT name uni fun ann m) Source # | |
Defined in UntypedPlutusCore.Transform.Optimizer Methods fmap ∷ (a → b) → OptimizerT name uni fun ann m a → OptimizerT name uni fun ann m b Source # (<$) ∷ a → OptimizerT name uni fun ann m b → OptimizerT name uni fun ann m a Source # | |
| Monad m ⇒ Monad (OptimizerT name uni fun ann m) Source # | |
Defined in UntypedPlutusCore.Transform.Optimizer Methods (>>=) ∷ OptimizerT name uni fun ann m a → (a → OptimizerT name uni fun ann m b) → OptimizerT name uni fun ann m b Source # (>>) ∷ OptimizerT name uni fun ann m a → OptimizerT name uni fun ann m b → OptimizerT name uni fun ann m b Source # return ∷ a → OptimizerT name uni fun ann m a Source # | |
| MonadQuote m ⇒ MonadQuote (OptimizerT name uni fun ann m) Source # | |
Defined in UntypedPlutusCore.Transform.Optimizer Methods liftQuote ∷ Quote a → OptimizerT name uni fun ann m a Source # | |
pattern FloatDelayStage ∷ OptStage Source #
pattern ForceDelayStage ∷ OptStage Source #
pattern ForceCaseDelayStage ∷ OptStage Source #
pattern CaseReduceStage ∷ OptStage Source #
pattern InlineStage ∷ OptStage Source #
pattern ApplyToCaseStage ∷ OptStage Source #
pattern CaseOfCaseStage ∷ OptStage Source #
pattern LetFloatOutStage ∷ OptStage Source #
pattern ConstantFoldingStage ∷ OptStage Source #
pattern PolyBuiltinStage ∷ OptStage Source #
newtype OptimizerTrace name uni fun a Source #
Constructors
| OptimizerTrace | |
Fields
| |
data Optimization name uni fun a Source #
runOptimizerT ∷ OptimizerT name uni fun ann m a → m (a, OptimizerTrace name uni fun ann) Source #
evalOptimizerT ∷ Monad m ⇒ OptimizerT name uni fun ann m a → m a Source #
execOptimizerT ∷ Monad m ⇒ OptimizerT name uni fun ann m a → m (OptimizerTrace name uni fun ann) Source #
type Optimizer name uni fun ann = OptimizerT name uni fun ann Identity Source #
runOptimizer ∷ Optimizer name uni fun ann a → (a, OptimizerTrace name uni fun ann) Source #
evalOptimizer ∷ Optimizer name uni fun ann a → a Source #
execOptimizer ∷ Optimizer name uni fun ann a → OptimizerTrace name uni fun ann Source #
initOptimizerTrace ∷ OptimizerTrace name uni fun a Source #
recordOptimization ∷ Monad m ⇒ Term name uni fun a → OptStage → Term name uni fun a → OptimizerT name uni fun a m () Source #
recordOptimizationWithHints ∷ Monad m ⇒ Hints → Term name uni fun a → OptStage → Term name uni fun a → OptimizerT name uni fun a m () Source #