Safe Haskell | None |
---|
- data Id
- type IdMap = IntjectionMap Id
- data IdNameT m a
- type IdSet = IntjectionSet Id
- anonymous :: Int -> Id
- va1 :: Id
- va2 :: Id
- va3 :: Id
- va4 :: Id
- va5 :: Id
- addBoundNamesIdMap :: Monad m => IntjectionMap Id a -> IdNameT m ()
- addBoundNamesIdSet :: Monad m => IdSet -> IdNameT m ()
- addNamesIdSet :: Monad m => IdSet -> IdNameT m ()
- idMapToIdSet :: IdMap a -> IdSet
- anonymousIds :: [Id]
- sillyId :: Id
- etherealIds :: [Id]
- isEtherealId :: Id -> Bool
- isInvalidId :: Id -> Bool
- isEmptyId :: Id -> Bool
- idSetToIdMap :: (Id -> a) -> IdSet -> IdMap a
- mapMaybeIdMap :: (a -> Maybe b) -> IdMap a -> IdMap b
- idSetFromList :: [Id] -> IdSet
- idToInt :: Id -> Int
- idSetFromDistinctAscList :: [Id] -> IdSet
- idMapFromList :: [(Id, a)] -> IdMap a
- idMapFromDistinctAscList :: [(Id, a)] -> IdMap a
- idSetToList :: IdSet -> [Id]
- idMapToList :: IdMap a -> [(Id, a)]
- emptyId :: Id
- newIds :: IdSet -> [Id]
- newId :: Int -> (Id -> Bool) -> Id
- mixInt :: Int -> Int -> Int
- mixInt3 :: Int -> Int -> Int -> Int
- toId :: Name -> Id
- fromId :: Monad m => Id -> m Name
- candidateIds :: Int -> [Id]
- runIdNameT :: Monad m => IdNameT m a -> m (a, IdSet)
Documentation
type IdMap = IntjectionMap IdSource
Name monad transformer.
type IdSet = IntjectionSet IdSource
addBoundNamesIdMap :: Monad m => IntjectionMap Id a -> IdNameT m ()Source
addBoundNamesIdSet :: Monad m => IdSet -> IdNameT m ()Source
addNamesIdSet :: Monad m => IdSet -> IdNameT m ()Source
idMapToIdSet :: IdMap a -> IdSetSource
anonymousIds :: [Id]Source
etherealIds :: [Id]Source
isEtherealId :: Id -> BoolSource
isInvalidId :: Id -> BoolSource
id isn't anonymous or atom-mapped
idSetToIdMap :: (Id -> a) -> IdSet -> IdMap aSource
mapMaybeIdMap :: (a -> Maybe b) -> IdMap a -> IdMap bSource
idSetFromList :: [Id] -> IdSetSource
idSetFromDistinctAscList :: [Id] -> IdSetSource
idMapFromList :: [(Id, a)] -> IdMap aSource
idMapFromDistinctAscList :: [(Id, a)] -> IdMap aSource
idSetToList :: IdSet -> [Id]Source
idMapToList :: IdMap a -> [(Id, a)]Source
find some temporary ids that are not members of the set, useful for generating a small number of local unique names.
candidateIds :: Int -> [Id]Source
runIdNameT :: Monad m => IdNameT m a -> m (a, IdSet)Source
Run the name monad transformer.