unison-runtime-0.0.0
Safe HaskellSafe-Inferred
LanguageHaskell2010

Unison.Runtime.ANF.Optimize

Documentation

optimize :: (Ord ref, Var v) => Map ref (SuperGroup ref v) -> OptInfos ref v -> (Map ref (SuperGroup ref v), OptInfos ref v) Source #

inline :: (Ord ref, Memo m, Var v) => Set v -> OptInfos ref v -> ANormal ref v -> m (ANormal ref v) Source #

type Arities ref = Map ref Int Source #

data InlineInfo ref v Source #

Constructors

InlInfo 

Fields

Instances

Instances details
(Show v, Show ref) => Show (InlineInfo ref v) Source # 
Instance details

Defined in Unison.Runtime.ANF.Optimize

Methods

showsPrec :: Int -> InlineInfo ref v -> ShowS #

show :: InlineInfo ref v -> String #

showList :: [InlineInfo ref v] -> ShowS #

(Var v, Eq ref) => Eq (InlineInfo ref v) Source # 
Instance details

Defined in Unison.Runtime.ANF.Optimize

Methods

(==) :: InlineInfo ref v -> InlineInfo ref v -> Bool #

(/=) :: InlineInfo ref v -> InlineInfo ref v -> Bool #

type InlineInfos ref v = Map ref (InlineInfo ref v) Source #

type OptInfos ref v = (Arities ref, InlineInfos ref v) Source #

optimizeHandler :: (Ord ref, Var v) => (Text -> ref) -> OptInfos ref v -> ref -> SuperGroup ref v -> SuperGroup ref v Source #

buildOptInfos :: Var v => Map ref (SuperGroup ref v) -> OptInfos ref v Source #