Safe Haskell | Safe-Inferred |
---|---|
Language | GHC2021 |
Type inference of loop
. This is complicated because of the
uniqueness and size inference, so the implementation is separate
from the main type checker.
Synopsis
- type UncheckedLoop = (PatBase NoInfo VName ParamType, ExpBase NoInfo VName, LoopFormBase NoInfo VName, ExpBase NoInfo VName)
- type CheckedLoop = ([VName], Pat ParamType, Exp, LoopFormBase Info VName, Exp)
- checkLoop :: (ExpBase NoInfo VName -> TermTypeM Exp) -> UncheckedLoop -> SrcLoc -> TermTypeM (CheckedLoop, AppRes)