Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- tyVarMap :: IORef (Map Text TyVar)
- skeletonToType :: TypeSkeleton -> TcM (Maybe Type)
- typeToSkeleton :: Type -> Maybe (TypeSkeleton, [Type])
- typeToSkeletonText :: Outputable a => a -> Maybe Text
- tyVarToSkeletonText :: Outputable a => a -> Maybe Text
- constFunc :: Symbol -> Node -> Edge
- applyOperator :: Comps -> Node
- tk :: Comps -> Node -> Bool -> Int -> [Node]
- tkUpToK :: Comps -> Node -> Bool -> Int -> [Node]
- rtk :: [Argument] -> Comps -> Node -> Bool -> Int -> [Node]
- rtkOfSize :: [Argument] -> Comps -> Node -> Bool -> Int -> Node
- rtkUpToK :: [Argument] -> Comps -> Node -> Bool -> Int -> [Node]
- rtkAtLeast1 :: [Argument] -> Comps -> Node -> Bool -> Int -> [Node]
- rtkUpToKAtLeast1 :: [Argument] -> Comps -> Node -> Bool -> Int -> [Node]
- mapp :: Node -> Node -> Node
- chunks :: Int -> [a] -> [[a]]
- removeDicts :: Term -> Term
- parIfReq :: Text -> Text
- pp :: Term -> Text
- ppNoPar :: Term -> Text
- allConstructors :: Comps -> [(Text, Int)]
- type Comps = [(Text, TypeSkeleton)]
- mtau :: Comps -> Node
- globalTyVars :: [Node]
- generalize :: Comps -> Node -> Node
- invertMap :: Ord b => Map a b -> Map b [a]
- prettyMatch :: Map Text TypeSkeleton -> Map Text [Text] -> Term -> TcM [Text]
- isSafe :: TypeSkeleton -> Bool
Documentation
skeletonToType :: TypeSkeleton -> TcM (Maybe Type) Source #
typeToSkeleton :: Type -> Maybe (TypeSkeleton, [Type]) Source #
Extremely crude at the moment!! Returns the typeSkeleton and any constructors (for instance lookup)
typeToSkeletonText :: Outputable a => a -> Maybe Text Source #
tyVarToSkeletonText :: Outputable a => a -> Maybe Text Source #
applyOperator :: Comps -> Node Source #
removeDicts :: Term -> Term Source #
type Comps = [(Text, TypeSkeleton)] Source #
globalTyVars :: [Node] Source #
isSafe :: TypeSkeleton -> Bool Source #
isSafe checks if we can use the type. Sadly ecta doesn't support all types as of yet, so we fall back to the regulur valid hole-fits.